{"id":1256,"date":"2024-05-31T09:28:48","date_gmt":"2024-05-31T03:58:48","guid":{"rendered":"https:\/\/www.techandtrain.com\/blog\/?p=1256"},"modified":"2025-10-22T14:51:32","modified_gmt":"2025-10-22T09:21:32","slug":"what-is-osgi-as-per-gemini-chatgpt","status":"publish","type":"post","link":"https:\/\/www.techandtrain.com\/blog\/2024\/05\/what-is-osgi-as-per-gemini-chatgpt\/","title":{"rendered":"What is OSGI? &#8211; As per Gemini &#038; ChatGPT."},"content":{"rendered":"\n<p id=\"ember296\">OSGi (Open Service Gateway Initiative) is a fundamental technology used in Liferay DXP (Digital Experience Platform). It provides a modular framework that allows Liferay to be built from reusable components called bundles. These bundles can be dynamically installed, started, stopped, updated, and uninstalled without restarting the entire platform.<\/p>\n\n\n\n<p id=\"ember297\"><strong>Here&#8217;s how OSGi is used in Liferay:<\/strong><\/p>\n\n\n\n<ol class=\"wp-block-list\">\n<li><strong>Modularity:<\/strong> OSGi enables Liferay&#8217;s modular architecture, where each functionality is encapsulated within a bundle. This modularity makes Liferay more flexible, scalable, and easier to maintain.<\/li>\n\n\n\n<li><strong>Service Registry:<\/strong> Bundles can provide and consume services through OSGi&#8217;s service registry. This allows for loose coupling between bundles, making it easier to add, remove, or update components without affecting the entire system.<\/li>\n\n\n\n<li><strong>Dynamic Management:<\/strong> OSGi allows for dynamic management of bundles. This means that bundles can be installed, started, stopped, updated, or uninstalled while Liferay is running, minimizing downtime and enabling hot deployment of new features or bug fixes.<\/li>\n\n\n\n<li><strong>Versioning:<\/strong> OSGi supports versioning of bundles and packages, ensuring compatibility between different components and allowing for seamless updates without breaking existing functionality.<\/li>\n\n\n\n<li><strong>Dependency Management:<\/strong> OSGi automatically manages dependencies between bundles, making it easier to resolve conflicts and ensuring that all required components are available.<\/li>\n<\/ol>\n\n\n\n<p id=\"ember299\"><strong>Benefits of using OSGi in Liferay:<\/strong><\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li><strong>Improved Flexibility:<\/strong> The modular structure allows for easy customization and extension of Liferay&#8217;s functionality.<\/li>\n\n\n\n<li><strong>Increased Scalability:<\/strong> Bundles can be added or removed as needed, making it easier to scale the platform to meet changing requirements.<\/li>\n\n\n\n<li><strong>Simplified Maintenance:<\/strong> Modularization makes it easier to identify and fix bugs or issues, as well as to update specific components without affecting the entire system.<\/li>\n\n\n\n<li><strong>Enhanced Stability:<\/strong> The loose coupling between bundles makes Liferay more resilient to failures, as a single bundle&#8217;s failure is less likely to bring down the entire system.<\/li>\n\n\n\n<li><strong>Faster Development:<\/strong> The modular architecture enables parallel development of different components, speeding up the overall development process.<\/li>\n<\/ul>\n\n\n\n<p id=\"ember301\">Liferay leverages OSGi to its fullest potential, providing a robust and flexible platform for building digital experiences. Whether you&#8217;re developing custom modules or extending existing functionality, OSGi makes it easier to manage and maintain your Liferay implementation.<\/p>\n\n\n\n<p id=\"ember302\">Let me know if you have any other questions.<\/p>\n\n\n\n<p id=\"ember304\">OSGi (Open Services Gateway initiative) is a Java framework for developing and deploying modular software programs and libraries. Liferay, a popular enterprise portal platform, leverages OSGi to provide a highly modular, flexible, and dynamic development environment. Here&#8217;s a breakdown of how OSGi is used in Liferay:<\/p>\n\n\n\n<p id=\"ember305\">### 1. <strong>Modularity<\/strong><\/p>\n\n\n\n<p id=\"ember306\">OSGi allows Liferay to break down its large codebase into smaller, reusable modules. Each module (or bundle) can be independently developed, tested, and deployed. This modularity helps in managing the complexity of large applications and promotes code reuse.<\/p>\n\n\n\n<p id=\"ember307\">### 2. <strong>Dynamic Updates<\/strong><\/p>\n\n\n\n<p id=\"ember308\">With OSGi, Liferay can update, add, or remove modules without requiring a full restart of the application server. This dynamic behavior minimizes downtime and enhances the agility of the development and deployment processes.<\/p>\n\n\n\n<p id=\"ember309\">### 3. <strong>Service Layer<\/strong><\/p>\n\n\n\n<p id=\"ember310\">OSGi defines a service registry where modules can publish and consume services. In Liferay, this enables a decoupled architecture where different modules can interact through well-defined service contracts, improving maintainability and scalability.<\/p>\n\n\n\n<p id=\"ember311\">### 4. <strong>Versioning<\/strong><\/p>\n\n\n\n<p id=\"ember312\">OSGi provides a robust versioning system that allows multiple versions of the same module to coexist. This capability is particularly useful in Liferay for managing dependencies and ensuring backward compatibility.<\/p>\n\n\n\n<p id=\"ember313\">### 5. <strong>Dependency Management<\/strong><\/p>\n\n\n\n<p id=\"ember314\">OSGi handles dependencies between modules automatically. Liferay uses this feature to ensure that all required modules are available and correctly configured, reducing runtime errors and simplifying the deployment process.<\/p>\n\n\n\n<p id=\"ember315\">### 6. <strong>Isolation<\/strong><\/p>\n\n\n\n<p id=\"ember316\">OSGi offers a high degree of isolation between modules, which helps in avoiding classpath issues and conflicts. In Liferay, this isolation ensures that changes in one module do not inadvertently affect others, enhancing the stability of the system.<\/p>\n\n\n\n<p id=\"ember317\">### Implementation in Liferay<\/p>\n\n\n\n<p id=\"ember318\">In Liferay, the OSGi framework is integrated as the core runtime environment. Here\u2019s how Liferay implements OSGi:<\/p>\n\n\n\n<p id=\"ember319\">&#8211; <strong>Liferay Modules<\/strong>: Liferay plugins, such as portlets, hooks, and themes, are developed as OSGi modules. These modules follow the OSGi lifecycle and can be managed through the Liferay Control Panel.<\/p>\n\n\n\n<p id=\"ember320\">&#8211; <strong>Service Builder<\/strong>: Liferay\u2019s Service Builder tool generates OSGi-compliant services, making it easier to develop and deploy service-based applications.<\/p>\n\n\n\n<p id=\"ember321\">&#8211; <strong>Module Framework<\/strong>: Liferay provides a Module Framework that extends OSGi capabilities, offering additional features like module dependency management, lifecycle management, and configuration management.<\/p>\n\n\n\n<p id=\"ember322\">### Benefits of Using OSGi in Liferay<\/p>\n\n\n\n<p id=\"ember323\">&#8211; <strong>Improved Modularity<\/strong>: Simplifies development and maintenance by promoting a modular architecture.<\/p>\n\n\n\n<p id=\"ember324\">&#8211; <strong>Enhanced Flexibility<\/strong>: Allows dynamic updates and reconfigurations without downtime.<\/p>\n\n\n\n<p id=\"ember325\">&#8211; <strong>Better Resource Management<\/strong>: Efficiently handles dependencies and resource allocation.<\/p>\n\n\n\n<p id=\"ember326\">&#8211; <strong>Scalability<\/strong>: Facilitates scalable application design through decoupled modules.<\/p>\n\n\n\n<p id=\"ember327\">&#8211; <strong>Maintainability<\/strong>: Eases the process of updating and maintaining the application by isolating changes to specific modules.<\/p>\n\n\n\n<p id=\"ember328\">In summary, OSGi plays a crucial role in making Liferay a more modular, dynamic, and robust platform for developing enterprise-grade applications.<\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li>Email me: <a href=\"mailto:Neil@HarwaniSytems.in\">Neil@HarwaniSytems.in<\/a><\/li>\n\n\n\n<li>Website: <a href=\"http:\/\/www.harwanisystems.in\/\">www.HarwaniSystems.in<\/a><\/li>\n\n\n\n<li>Blog: <a href=\"http:\/\/www.techandtrain.com\/blog\">www.TechAndTrain.com\/blog<\/a><\/li>\n\n\n\n<li>LinkedIn: <a href=\"https:\/\/www.linkedin.com\/in\/neil27\/\">Neil Harwani | LinkedIn<\/a><\/li>\n<\/ul>\n\n\n\n<p><a href=\"https:\/\/www.linkedin.com\/in\/neil27\/\"><\/a><\/p>\n","protected":false},"excerpt":{"rendered":"<p>OSGi (Open Service Gateway Initiative) is a fundamental technology used in Liferay DXP (Digital Experience Platform). It provides a modular [&hellip;]<\/p>\n","protected":false},"author":2,"featured_media":1257,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"nf_dc_page":"","site-sidebar-layout":"default","site-content-layout":"","ast-site-content-layout":"default","site-content-style":"default","site-sidebar-style":"default","ast-global-header-display":"","ast-banner-title-visibility":"","ast-main-header-display":"","ast-hfb-above-header-display":"","ast-hfb-below-header-display":"","ast-hfb-mobile-header-display":"","site-post-title":"","ast-breadcrumbs-content":"","ast-featured-img":"","footer-sml-layout":"","ast-disable-related-posts":"","theme-transparent-header-meta":"","adv-header-id-meta":"","stick-header-meta":"","header-above-stick-meta":"","header-main-stick-meta":"","header-below-stick-meta":"","astra-migrate-meta-layouts":"default","ast-page-background-enabled":"default","ast-page-background-meta":{"desktop":{"background-color":"var(--ast-global-color-5)","background-image":"","background-repeat":"repeat","background-position":"center center","background-size":"auto","background-attachment":"scroll","background-type":"","background-media":"","overlay-type":"","overlay-color":"","overlay-opacity":"","overlay-gradient":""},"tablet":{"background-color":"","background-image":"","background-repeat":"repeat","background-position":"center center","background-size":"auto","background-attachment":"scroll","background-type":"","background-media":"","overlay-type":"","overlay-color":"","overlay-opacity":"","overlay-gradient":""},"mobile":{"background-color":"","background-image":"","background-repeat":"repeat","background-position":"center center","background-size":"auto","background-attachment":"scroll","background-type":"","background-media":"","overlay-type":"","overlay-color":"","overlay-opacity":"","overlay-gradient":""}},"ast-content-background-meta":{"desktop":{"background-color":"var(--ast-global-color-4)","background-image":"","background-repeat":"repeat","background-position":"center center","background-size":"auto","background-attachment":"scroll","background-type":"","background-media":"","overlay-type":"","overlay-color":"","overlay-opacity":"","overlay-gradient":""},"tablet":{"background-color":"var(--ast-global-color-4)","background-image":"","background-repeat":"repeat","background-position":"center center","background-size":"auto","background-attachment":"scroll","background-type":"","background-media":"","overlay-type":"","overlay-color":"","overlay-opacity":"","overlay-gradient":""},"mobile":{"background-color":"var(--ast-global-color-4)","background-image":"","background-repeat":"repeat","background-position":"center center","background-size":"auto","background-attachment":"scroll","background-type":"","background-media":"","overlay-type":"","overlay-color":"","overlay-opacity":"","overlay-gradient":""}},"jetpack_post_was_ever_published":false,"_jetpack_newsletter_access":"","_jetpack_dont_email_post_to_subs":false,"_jetpack_newsletter_tier_id":0,"_jetpack_memberships_contains_paywalled_content":false,"_jetpack_memberships_contains_paid_content":false,"footnotes":""},"categories":[192],"tags":[200,371],"class_list":["post-1256","post","type-post","status-publish","format-standard","has-post-thumbnail","hentry","category-liferay","tag-liferay","tag-osgi"],"jetpack_featured_media_url":"https:\/\/i0.wp.com\/www.techandtrain.com\/blog\/wp-content\/uploads\/2024\/05\/OSGI.png?fit=1280%2C720&ssl=1","jetpack_sharing_enabled":true,"jetpack_shortlink":"https:\/\/wp.me\/p7do02-kg","jetpack-related-posts":[{"id":1030,"url":"https:\/\/www.techandtrain.com\/blog\/2023\/02\/how-to-debug-liferay-some-pointers-part-1\/","url_meta":{"origin":1256,"position":0},"title":"How to debug Liferay? &#8211; Some pointers &#8211; Part 1","author":"Neil Harwani","date":"February 19, 2023","format":false,"excerpt":"How to debug Liferay? Some pointers. - Part 1. Many a times, we only check at specific places and forget other areas while debugging. This small blog acts as a checklist to check and debug Liferay. Look at installing and using GLOWROOT Check the slow traces \/ web transactions \/\u2026","rel":"","context":"In &quot;Liferay&quot;","block_context":{"text":"Liferay","link":"https:\/\/www.techandtrain.com\/blog\/category\/liferay\/"},"img":{"alt_text":"Credit: www.Pixabay.com","src":"https:\/\/i0.wp.com\/www.techandtrain.com\/blog\/wp-content\/uploads\/2023\/02\/tool-gf2582e850_1280.png?fit=1200%2C1200&ssl=1&resize=350%2C200","width":350,"height":200,"srcset":"https:\/\/i0.wp.com\/www.techandtrain.com\/blog\/wp-content\/uploads\/2023\/02\/tool-gf2582e850_1280.png?fit=1200%2C1200&ssl=1&resize=350%2C200 1x, https:\/\/i0.wp.com\/www.techandtrain.com\/blog\/wp-content\/uploads\/2023\/02\/tool-gf2582e850_1280.png?fit=1200%2C1200&ssl=1&resize=525%2C300 1.5x, https:\/\/i0.wp.com\/www.techandtrain.com\/blog\/wp-content\/uploads\/2023\/02\/tool-gf2582e850_1280.png?fit=1200%2C1200&ssl=1&resize=700%2C400 2x, https:\/\/i0.wp.com\/www.techandtrain.com\/blog\/wp-content\/uploads\/2023\/02\/tool-gf2582e850_1280.png?fit=1200%2C1200&ssl=1&resize=1050%2C600 3x"},"classes":[]},{"id":1070,"url":"https:\/\/www.techandtrain.com\/blog\/2023\/05\/how-to-take-knowledge-transfer-in-a-discussion-for-liferay-engagement-part-1\/","url_meta":{"origin":1256,"position":1},"title":"How to take knowledge transfer in a discussion for Liferay engagement &#8211; Part 1","author":"Neil Harwani","date":"May 17, 2023","format":false,"excerpt":"Here is a list of points which will help in taking a knowledge transfer for a Liferay engagement - Part 1: 1. Check which products of Liferay are in use: DXP, Commerce, Analytics and \/ or Cloud LXC 2. Take the list of osgi\/configs & osgi\/modules to get configurations of\u2026","rel":"","context":"In &quot;Liferay&quot;","block_context":{"text":"Liferay","link":"https:\/\/www.techandtrain.com\/blog\/category\/liferay\/"},"img":{"alt_text":"Credits: www.Pixabay.com","src":"https:\/\/i0.wp.com\/www.techandtrain.com\/blog\/wp-content\/uploads\/2023\/05\/fantasy-g5314dd315_1920.jpg?fit=1200%2C910&ssl=1&resize=350%2C200","width":350,"height":200,"srcset":"https:\/\/i0.wp.com\/www.techandtrain.com\/blog\/wp-content\/uploads\/2023\/05\/fantasy-g5314dd315_1920.jpg?fit=1200%2C910&ssl=1&resize=350%2C200 1x, https:\/\/i0.wp.com\/www.techandtrain.com\/blog\/wp-content\/uploads\/2023\/05\/fantasy-g5314dd315_1920.jpg?fit=1200%2C910&ssl=1&resize=525%2C300 1.5x, https:\/\/i0.wp.com\/www.techandtrain.com\/blog\/wp-content\/uploads\/2023\/05\/fantasy-g5314dd315_1920.jpg?fit=1200%2C910&ssl=1&resize=700%2C400 2x, https:\/\/i0.wp.com\/www.techandtrain.com\/blog\/wp-content\/uploads\/2023\/05\/fantasy-g5314dd315_1920.jpg?fit=1200%2C910&ssl=1&resize=1050%2C600 3x"},"classes":[]},{"id":1163,"url":"https:\/\/www.techandtrain.com\/blog\/2023\/11\/what-are-some-of-the-best-practices-for-liferay-using-three-separate-gpts\/","url_meta":{"origin":1256,"position":2},"title":"What are some of the best practices for Liferay? &#8211; Using three separate GPTs","author":"Neil Harwani","date":"November 20, 2023","format":false,"excerpt":"Generated using my GPT -\u00a0Liferay Guide - Via official sources of Liferay:\u00a0https:\/\/chat.openai.com\/g\/g-4G5XuBdpL-liferay-guide-via-official-sources-of-liferay Adhering to best practices in Liferay ensures that you leverage the platform effectively for enterprise solutions. Here are some key best practices to consider: 1.\u00a0Modular Development: Embrace Liferay\u2019s modular development approach using OSGi. Develop customizations in modules, rather\u2026","rel":"","context":"In &quot;Liferay&quot;","block_context":{"text":"Liferay","link":"https:\/\/www.techandtrain.com\/blog\/category\/liferay\/"},"img":{"alt_text":"Credits: www.Pixabay.com","src":"https:\/\/i0.wp.com\/www.techandtrain.com\/blog\/wp-content\/uploads\/2023\/11\/Fantasy-Portal.jpg?fit=1200%2C909&ssl=1&resize=350%2C200","width":350,"height":200,"srcset":"https:\/\/i0.wp.com\/www.techandtrain.com\/blog\/wp-content\/uploads\/2023\/11\/Fantasy-Portal.jpg?fit=1200%2C909&ssl=1&resize=350%2C200 1x, https:\/\/i0.wp.com\/www.techandtrain.com\/blog\/wp-content\/uploads\/2023\/11\/Fantasy-Portal.jpg?fit=1200%2C909&ssl=1&resize=525%2C300 1.5x, https:\/\/i0.wp.com\/www.techandtrain.com\/blog\/wp-content\/uploads\/2023\/11\/Fantasy-Portal.jpg?fit=1200%2C909&ssl=1&resize=700%2C400 2x, https:\/\/i0.wp.com\/www.techandtrain.com\/blog\/wp-content\/uploads\/2023\/11\/Fantasy-Portal.jpg?fit=1200%2C909&ssl=1&resize=1050%2C600 3x"},"classes":[]},{"id":1098,"url":"https:\/\/www.techandtrain.com\/blog\/2023\/07\/liferay-architecture-and-product-areas-beyond-cms-content-management-system-part-1\/","url_meta":{"origin":1256,"position":3},"title":"Liferay architecture and product areas beyond CMS (Content management system) &#8211; Part 1","author":"Neil Harwani","date":"July 15, 2023","format":false,"excerpt":"For anyone who is curious about what all are the areas for Liferay beyond CMS (Content Management System) features in terms of architecture and product, below is a glossary of major terms for the moving components & product areas - Part 1: Liferay DXP Liferay Commerce -\u00a0Commerce - Liferay Learn\u2026","rel":"","context":"In &quot;Liferay&quot;","block_context":{"text":"Liferay","link":"https:\/\/www.techandtrain.com\/blog\/category\/liferay\/"},"img":{"alt_text":"Credits: www.Pixabay.com","src":"https:\/\/i0.wp.com\/www.techandtrain.com\/blog\/wp-content\/uploads\/2023\/07\/texture-g8d12780e6_1280.jpg?fit=1200%2C800&ssl=1&resize=350%2C200","width":350,"height":200,"srcset":"https:\/\/i0.wp.com\/www.techandtrain.com\/blog\/wp-content\/uploads\/2023\/07\/texture-g8d12780e6_1280.jpg?fit=1200%2C800&ssl=1&resize=350%2C200 1x, https:\/\/i0.wp.com\/www.techandtrain.com\/blog\/wp-content\/uploads\/2023\/07\/texture-g8d12780e6_1280.jpg?fit=1200%2C800&ssl=1&resize=525%2C300 1.5x, https:\/\/i0.wp.com\/www.techandtrain.com\/blog\/wp-content\/uploads\/2023\/07\/texture-g8d12780e6_1280.jpg?fit=1200%2C800&ssl=1&resize=700%2C400 2x, https:\/\/i0.wp.com\/www.techandtrain.com\/blog\/wp-content\/uploads\/2023\/07\/texture-g8d12780e6_1280.jpg?fit=1200%2C800&ssl=1&resize=1050%2C600 3x"},"classes":[]},{"id":1053,"url":"https:\/\/www.techandtrain.com\/blog\/2023\/03\/elasticsearch-with-liferay-notes-links-part-1\/","url_meta":{"origin":1256,"position":4},"title":"Elasticsearch with Liferay &#8211; Notes &amp; Links &#8211; Part 1","author":"Neil Harwani","date":"March 26, 2023","format":false,"excerpt":"Below are the important notes & links for configuring Liferay DXP with Elasticsearch. Configuring Elasticsearch \u2013 Liferay Help Center\u00a0- DXP 7.0 Installing Elasticsearch - Liferay Learn\u00a0- DXP latest Securing Elasticsearch 6.5 with X-Pack \u2013 Liferay Help Center\u00a0- DXP 7.0 with ES 6.5 Securing Elasticsearch - Liferay Learn\u00a0- DXP 7.0\/7.1\/7.2\/7.3\/7.4 latest\u2026","rel":"","context":"In &quot;Liferay&quot;","block_context":{"text":"Liferay","link":"https:\/\/www.techandtrain.com\/blog\/category\/liferay\/"},"img":{"alt_text":"Credit: www.Pixabay.com","src":"https:\/\/i0.wp.com\/www.techandtrain.com\/blog\/wp-content\/uploads\/2023\/03\/freelancer-763730_1920.jpg?fit=1200%2C797&ssl=1&resize=350%2C200","width":350,"height":200,"srcset":"https:\/\/i0.wp.com\/www.techandtrain.com\/blog\/wp-content\/uploads\/2023\/03\/freelancer-763730_1920.jpg?fit=1200%2C797&ssl=1&resize=350%2C200 1x, https:\/\/i0.wp.com\/www.techandtrain.com\/blog\/wp-content\/uploads\/2023\/03\/freelancer-763730_1920.jpg?fit=1200%2C797&ssl=1&resize=525%2C300 1.5x, https:\/\/i0.wp.com\/www.techandtrain.com\/blog\/wp-content\/uploads\/2023\/03\/freelancer-763730_1920.jpg?fit=1200%2C797&ssl=1&resize=700%2C400 2x, https:\/\/i0.wp.com\/www.techandtrain.com\/blog\/wp-content\/uploads\/2023\/03\/freelancer-763730_1920.jpg?fit=1200%2C797&ssl=1&resize=1050%2C600 3x"},"classes":[]},{"id":838,"url":"https:\/\/www.techandtrain.com\/blog\/2022\/02\/why-liferay-what-about-my-performance-part-1\/","url_meta":{"origin":1256,"position":5},"title":"Why Liferay &#038; what about my performance? &#8211; Part 1","author":"Neil Harwani","date":"February 26, 2022","format":false,"excerpt":"An unbiased view on why you should adopt a platform like Liferay and what are the benefits in using Liferay: Having implementations in various domains like insurance, manufacturing, financial services, healthcare, education, government, intranets, commerce, energy, customer \/ partner portals and moreOpen standards based system built with and around Java\u2026","rel":"","context":"In &quot;Liferay&quot;","block_context":{"text":"Liferay","link":"https:\/\/www.techandtrain.com\/blog\/category\/liferay\/"},"img":{"alt_text":"","src":"https:\/\/i0.wp.com\/www.techandtrain.com\/blog\/wp-content\/uploads\/2022\/02\/Liferay.png?fit=594%2C209&ssl=1&resize=350%2C200","width":350,"height":200,"srcset":"https:\/\/i0.wp.com\/www.techandtrain.com\/blog\/wp-content\/uploads\/2022\/02\/Liferay.png?fit=594%2C209&ssl=1&resize=350%2C200 1x, https:\/\/i0.wp.com\/www.techandtrain.com\/blog\/wp-content\/uploads\/2022\/02\/Liferay.png?fit=594%2C209&ssl=1&resize=525%2C300 1.5x"},"classes":[]}],"jetpack_likes_enabled":true,"_links":{"self":[{"href":"https:\/\/www.techandtrain.com\/blog\/wp-json\/wp\/v2\/posts\/1256","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/www.techandtrain.com\/blog\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/www.techandtrain.com\/blog\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/www.techandtrain.com\/blog\/wp-json\/wp\/v2\/users\/2"}],"replies":[{"embeddable":true,"href":"https:\/\/www.techandtrain.com\/blog\/wp-json\/wp\/v2\/comments?post=1256"}],"version-history":[{"count":1,"href":"https:\/\/www.techandtrain.com\/blog\/wp-json\/wp\/v2\/posts\/1256\/revisions"}],"predecessor-version":[{"id":1258,"href":"https:\/\/www.techandtrain.com\/blog\/wp-json\/wp\/v2\/posts\/1256\/revisions\/1258"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/www.techandtrain.com\/blog\/wp-json\/wp\/v2\/media\/1257"}],"wp:attachment":[{"href":"https:\/\/www.techandtrain.com\/blog\/wp-json\/wp\/v2\/media?parent=1256"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/www.techandtrain.com\/blog\/wp-json\/wp\/v2\/categories?post=1256"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/www.techandtrain.com\/blog\/wp-json\/wp\/v2\/tags?post=1256"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}