[{"data":1,"prerenderedAt":2180},["ShallowReactive",2],{"navigation-docsDE":3,"navigation-blogDE":484,"docs-DE-\u002Fde\u002Fdocs\u002Fdependency-management":485,"docsNav-DE-\u002Fdocs":1349,"docsSecNav-DE-\u002Fde\u002Fdocs\u002Fdependency-management":1488},[4],{"title":5,"path":6,"stem":7,"children":8},"Docs","\u002Fdocs","docs",[9,22,40,52,73,87,113,127,154,165,180,204,392,468],{"title":10,"path":6,"stem":11,"description":12,"icon":13,"tags":14},"Documentation","docs\u002Findex","Introduction to documentation on EPCIS and OpenEPCIS tools","heroicons-outline:document-text",[15,16,17,18,19,20,21],"openepcis","epcis-2-0","epcis-documentation","epcis-standard","open-core","open-source","epcis-tools",{"title":23,"path":24,"stem":25,"children":26,"description":28,"icon":29,"tags":39},"Introduction","\u002Fdocs\u002Fintroduction","docs\u002F01.introduction\u002Findex",[27],{"title":23,"path":24,"stem":25,"description":28,"icon":29,"tags":30},"Why EPCIS is necessary and how it can help organizations of all sizes and types.","heroicons-outline:globe-alt",[16,31,32,33,34,35,36,37,38],"epcis","epcis-1-2","gs1-epcis-standard","supply-chain","traceability","data-sharing","tracking","tracing",[16,31,32,33,34,35,36,37,38],{"title":41,"path":42,"stem":43,"children":44,"description":46,"icon":47,"tags":51},"EPCIS","\u002Fdocs\u002Fepcis","docs\u002F02.epcis\u002Findex",[45],{"title":41,"path":42,"stem":43,"description":46,"icon":47,"tags":48},"Discover the specifics of EPCIS, how it works, and what OpenEPCIS is.","i-custom-open-epcis",[16,31,32,33,49,50],"iso-iec-19987","iso-iec-19988",[16,31,32,33,49,50],{"title":53,"path":54,"stem":55,"children":56,"description":58,"icon":59,"tags":72},"Format Converter","\u002Fdocs\u002Fformat-converter","docs\u002F03.format-converter\u002Findex",[57],{"title":53,"path":54,"stem":55,"description":58,"icon":59,"tags":60},"OpenEPCIS solution to convert EPCIS 2.0 and 1.2 document or single event from XML to JSON\u002FJSON-LD and vice versa.","heroicons-outline:arrows-right-left",[16,61,62,63,64,65,66,21,67,68,69,70,71],"json","json-ld","xml","events","format-converter","convert","convert-epcis-events","format","converter","epcis-tool","tools",[16,61,62,63,64,65,66,21,67,68,69,70,71],{"title":74,"path":75,"stem":76,"children":77,"description":79,"icon":80,"tags":86},"Version Converter","\u002Fdocs\u002Fversion-converter","docs\u002F04.version-converter\u002Findex",[78],{"title":74,"path":75,"stem":76,"description":79,"icon":80,"tags":81},"OpenEPCIS solution to convert EPCIS XML document from version 1.2 to 2.0 and vice versa.","heroicons:arrows-up-down",[16,32,61,62,63,64,82,66,21,83,84,85,69,70,71],"version-converter","convert-epcis-version","version","epcis-version",[16,32,61,62,63,64,82,66,21,83,84,85,69,70,71],{"title":88,"path":89,"stem":90,"children":91,"description":93,"icon":94,"tags":112},"Identifier Converter","\u002Fdocs\u002Fidentifier-converter","docs\u002F05.identifier-converter\u002Findex",[92],{"title":88,"path":89,"stem":90,"description":93,"icon":94,"tags":95},"OpenEPCIS solution to convert EPCIS instance or class identifier from URN to digital link WebURI and vice versa.","i-heroicons-link",[16,96,97,98,99,100,21,101,102,103,104,105,106,107,108,109,110,111],"gs1-digital-link","urn-format","epc-uri","epc","weburi","gs1-standard","gs1","sscc","gtin","giai","grai","gdti","lgtin","sgtin","gln","gcp",[16,96,97,98,99,100,21,101,102,103,104,105,106,107,108,109,110,111],{"title":114,"path":115,"stem":116,"children":117,"description":119,"icon":120,"tags":126},"Event Hash Generator","\u002Fdocs\u002Fevent-hash-generator","docs\u002F06.event-hash-generator\u002Findex",[118],{"title":114,"path":115,"stem":116,"description":119,"icon":120,"tags":121},"OpenEPCIS solution to generate unique event hash for EPCIS XML or JSON\u002FJSON-LD document or event list.","heroicons-outline:finger-print",[16,122,61,62,63,64,21,123,124,125,70,71],"event-hash","event","hash","generator",[16,122,61,62,63,64,21,123,124,125,70,71],{"title":128,"path":129,"stem":130,"children":131,"description":133,"icon":134,"tags":153},"Test Data Generator","\u002Fdocs\u002Ftest-data-generator","docs\u002F07.test-data-generator\u002Findex",[132,136],{"title":128,"path":129,"stem":130,"description":133,"icon":134,"tags":135},"OpenEPCIS solution to generate a large set of EPCIS test data events for all use cases\u002Fsupply chain requirements.","heroicons-outline:cog",[16,122,61,62,63,64,21,123,124,125,70,71],{"title":137,"path":138,"stem":139,"children":140,"description":133,"icon":142,"tags":152},"EPCIS Implementation Guidelines","\u002Fdocs\u002Ftest-data-generator\u002Fgs1-epcis-implementation-guidelines","docs\u002F07.test-data-generator\u002F01.gs1-epcis-implementation-guidelines\u002Findex",[141],{"title":137,"path":138,"stem":139,"description":133,"icon":142,"tags":143},"heroicons-outline:badge-check",[16,61,62,144,21,145,146,147,35,148,149,150,151],"testing","test-data-generator","design","design-template","process-automation","compliance","supply-chain-management","load-tests",[16,61,62,144,21,145,146,147,35,148,149,150,151],[16,122,61,62,63,64,21,123,124,125,70,71],{"title":155,"path":156,"stem":157,"children":158,"description":160,"icon":161,"tags":164},"Test Resource Management","\u002Fdocs\u002Ftest-resource-management","docs\u002F08.test-resource-management\u002Findex",[159],{"title":155,"path":156,"stem":157,"description":160,"icon":161,"tags":162},"Collection of EPCIS 1.2\u002F2.0 documents\u002Fevents in XML\u002FJSON\u002FJSON-LD formats, intended for various testing purposes","heroicons-outline:archive-box",[16,61,62,144,21,163,35,148,149,150,151],"performance-tests",[16,61,62,144,21,163,35,148,149,150,151],{"title":166,"path":167,"stem":168,"children":169,"description":171,"icon":172,"tags":179},"Vocabulary Management","\u002Fdocs\u002Fvocabulary-management","docs\u002F09.vocabulary-management\u002Findex",[170],{"title":166,"path":167,"stem":168,"description":171,"icon":172,"tags":173},"Collection of standardized constants and strings for EPCIS event data.","heroicons-outline:book-open",[16,174,15,175,21,176,35,177,149,150,178],"constants","centralization","standardization","vocabulary","data-dictionary",[16,174,15,175,21,176,35,177,149,150,178],{"title":181,"path":182,"stem":183,"children":184,"description":186,"icon":187,"tags":203},"Dependency Management","\u002Fdocs\u002Fdependency-management","docs\u002F10.dependency-management\u002Findex",[185],{"title":181,"path":182,"stem":183,"description":186,"icon":187,"tags":188},"Centralized Maven Bill of Materials (BOM) for all the OpenEPCIS modules.","heroicons-outline:folder",[189,15,190,191,192,193,194,31,195,196,197,198,199,200,201,202],"maven-bom","dependency-management","java-dependencies","pom","software-dependencies","version-control","open-source-java","build-management","modular-software","dependency-resolution","java-libraries","maven-project","centralized-dependencies","dependency-consistency",[189,15,190,191,192,193,194,31,195,196,197,198,199,200,201,202],{"title":205,"path":206,"stem":207,"children":208,"description":210,"icon":211,"tags":391},"Digital Product Passport","\u002Fdocs\u002Fdigital-product-passport","docs\u002F11.digital-product-passport\u002Findex",[209,218,230,262,296,323,337,346,354,364],{"title":205,"path":206,"stem":207,"description":210,"icon":211,"tags":212},"Introduction to Digital Product Passport and how EPCIS enables product traceability for DPP compliance.","heroicons-outline:identification",[213,214,215,31,216,35,217],"digital-product-passport","dpp","eu-regulation","sustainability","circular-economy",{"title":219,"path":220,"stem":221,"children":222,"description":224,"icon":225,"tags":229},"ESPR Framework","\u002Fdocs\u002Fdigital-product-passport\u002Fespr-framework","docs\u002F11.digital-product-passport\u002F00.espr-framework\u002Findex",[223],{"title":219,"path":220,"stem":221,"description":224,"icon":225,"tags":226},"Guide to the EU Ecodesign for Sustainable Products Regulation (ESPR) 2024\u002F1781 and how OpenEPCIS supports Digital Product Passport requirements.","heroicons-outline:shield-check",[227,228,216,214,215],"espr","ecodesign",[227,228,216,214,215],{"title":231,"path":232,"stem":233,"children":234,"description":236,"icon":237,"tags":261},"Battery DPP","\u002Fdocs\u002Fdigital-product-passport\u002Fbattery-dpp","docs\u002F11.digital-product-passport\u002F01.battery-dpp\u002Findex",[235,241,246,252],{"title":231,"path":232,"stem":233,"description":236,"icon":237,"tags":238},"GS1-native implementation of EU Battery Regulation 2023\u002F1542 Digital Product Passport using EPCIS 2.0","heroicons:battery-100",[239,240,214,31,102,35,216],"battery","eu-battery-regulation",{"title":242,"path":243,"stem":244,"description":245,"icon":172},"Implementation Guide","\u002Fdocs\u002Fdigital-product-passport\u002Fbattery-dpp\u002Fimplementation-guide","docs\u002F11.digital-product-passport\u002F01.battery-dpp\u002F01.implementation-guide","Step-by-step guide for implementing a GS1-native Battery Digital Product Passport with OpenEPCIS extensions",{"title":247,"path":248,"stem":249,"description":250,"icon":251},"Event Types","\u002Fdocs\u002Fdigital-product-passport\u002Fbattery-dpp\u002Fevent-types","docs\u002F11.digital-product-passport\u002F01.battery-dpp\u002F02.event-types","Complete reference for all EPCIS event types and sensor measurements in the Battery DPP","heroicons-outline:collection",{"title":253,"path":254,"stem":255,"description":256,"icon":13,"tags":257},"Complete Examples","\u002Fdocs\u002Fdigital-product-passport\u002Fbattery-dpp\u002Fcomplete-examples","docs\u002F11.digital-product-passport\u002F01.battery-dpp\u002F05.complete-examples","Reference Battery Digital Product Passport examples mapped to EU Battery Regulation 2023\u002F1542 Annex XIII",[239,258,259,62,260],"examples","annex-xiii","carbon-footprint",[239,240,214,31,102,35,216],{"title":263,"path":264,"stem":265,"children":266,"description":268,"icon":269,"tags":295},"EUDR","\u002Fdocs\u002Fdigital-product-passport\u002Feudr","docs\u002F11.digital-product-passport\u002F02.eudr\u002Findex",[267,274,279,283,288],{"title":263,"path":264,"stem":265,"description":268,"icon":269,"tags":270},"GS1-native implementation of EU Deforestation Regulation 2023\u002F1115 compliance using EPCIS 2.0","heroicons-outline:globe-europe-africa",[271,272,273,214,31,102,35,216],"eudr","deforestation","timber",{"title":242,"path":275,"stem":276,"description":277,"icon":278},"\u002Fdocs\u002Fdigital-product-passport\u002Feudr\u002Fimplementation-guide","docs\u002F11.digital-product-passport\u002F02.eudr\u002F01.implementation-guide","Step-by-step guide for implementing EU Deforestation Regulation compliance using GS1 standards",null,{"title":247,"path":280,"stem":281,"description":282,"icon":278},"\u002Fdocs\u002Fdigital-product-passport\u002Feudr\u002Fevent-types","docs\u002F11.digital-product-passport\u002F02.eudr\u002F02.event-types","EPCIS event types for EU Deforestation Regulation compliance",{"title":284,"path":285,"stem":286,"description":287,"icon":278},"URL Patterns","\u002Fdocs\u002Fdigital-product-passport\u002Feudr\u002Furl-patterns","docs\u002F11.digital-product-passport\u002F02.eudr\u002F03.url-patterns","GS1 Digital Link URL patterns for EUDR implementations",{"title":253,"path":289,"stem":290,"description":291,"icon":13,"tags":292},"\u002Fdocs\u002Fdigital-product-passport\u002Feudr\u002Fcomplete-examples","docs\u002F11.digital-product-passport\u002F02.eudr\u002F04.complete-examples","Reference EUDR examples — timber product passport, derived product, regulatory notification, harvesting \u002F origin-declaration \u002F processing \u002F supply-chain-transfer \u002F exemption events",[271,258,273,293,294],"due-diligence","geolocation",[271,272,273,214,31,102,35,216],{"title":297,"path":298,"stem":299,"children":300,"description":302,"icon":303,"tags":322},"Textile DPP","\u002Fdocs\u002Fdigital-product-passport\u002Ftextile","docs\u002F11.digital-product-passport\u002F03.textile\u002Findex",[301,309,316],{"title":297,"path":298,"stem":299,"description":302,"icon":303,"tags":304},"Digital Product Passport vocabulary for textiles and apparel under the EU Sustainable Textiles Strategy and ESPR 2024\u002F1781.","heroicons-outline:sparkles",[305,306,307,214,216,308],"textile","apparel","footwear","fibre-composition",{"title":242,"path":310,"stem":311,"description":312,"icon":313,"tags":314},"\u002Fdocs\u002Fdigital-product-passport\u002Ftextile\u002Fimplementation-guide","docs\u002F11.digital-product-passport\u002F03.textile\u002F01.implementation-guide","How to assemble a Textile Digital Product Passport against the published openepcis-dpp-ready textile vocabulary","heroicons-outline:scissors",[305,306,307,315],"implementation",{"title":253,"path":317,"stem":318,"description":319,"icon":13,"tags":320},"\u002Fdocs\u002Fdigital-product-passport\u002Ftextile\u002Fcomplete-examples","docs\u002F11.digital-product-passport\u002F03.textile\u002F02.complete-examples","Reference Textile Digital Product Passport documents covering apparel and footwear",[305,258,306,307,321,62],"fiber-composition",[305,306,307,214,216,308],{"title":324,"path":325,"stem":326,"children":327,"description":329,"icon":59,"tags":336},"Interoperability","\u002Fdocs\u002Fdigital-product-passport\u002Finteroperability","docs\u002F11.digital-product-passport\u002F04.interoperability\u002Findex",[328],{"title":324,"path":325,"stem":326,"description":329,"icon":59,"tags":330},"Guide to OpenEPCIS DPP interoperability with GS1, UNTP, CIRPASS2, and ESPR standards.",[331,332,102,333,227,334,335],"interoperability","untp","cirpass2","standards","alignment",[331,332,102,333,227,334,335],{"title":338,"path":339,"stem":340,"description":341,"icon":29,"tags":342},"DPP Resolution Flow","\u002Fdocs\u002Fdigital-product-passport\u002Fdpp-resolution-flow","docs\u002F11.digital-product-passport\u002F05.dpp-resolution-flow","How OpenEPCIS combined GS1 Digital Link, the IETF linkset format and content negotiation into one DPP resolution flow",[343,96,344,345],"walkthrough","linkset","content-negotiation",{"title":347,"path":348,"stem":349,"description":350,"icon":351,"tags":352},"Resolver Setup","\u002Fdocs\u002Fdigital-product-passport\u002Fresolver-setup","docs\u002F11.digital-product-passport\u002F06.resolver-setup","How to expose your DPP behind a GS1 Digital Link resolver","heroicons-outline:server",[353,96,344],"resolver",{"title":355,"path":356,"stem":357,"description":358,"icon":359,"tags":360},"Multi-Component Example","\u002Fdocs\u002Fdigital-product-passport\u002Fmulti-component-example","docs\u002F11.digital-product-passport\u002F07.multi-component-example","How a composite product references separately-passported components via standard GS1 Digital Link and EPCIS aggregation","heroicons-outline:puzzle-piece",[361,362,363,333],"example","components","aggregation",{"title":365,"path":366,"stem":367,"children":368,"description":370,"icon":371,"tags":390},"Electronics DPP","\u002Fdocs\u002Fdigital-product-passport\u002Felectronics","docs\u002F11.digital-product-passport\u002F08.electronics\u002Findex",[369,378,383],{"title":365,"path":366,"stem":367,"description":370,"icon":371,"tags":372},"Digital Product Passport vocabulary for electronic devices under ESPR, the French Repairability Index, EU Right to Repair and WEEE.","heroicons-outline:device-phone-mobile",[373,374,375,376,377],"electronics","repairability","weee","energy-label","right-to-repair",{"title":242,"path":379,"stem":380,"description":381,"icon":172,"tags":382},"\u002Fdocs\u002Fdigital-product-passport\u002Felectronics\u002Fimplementation-guide","docs\u002F11.digital-product-passport\u002F08.electronics\u002F01.implementation-guide","How to assemble an Electronics Digital Product Passport against the published openepcis-dpp-ready electronics vocabulary",[373,315,374,375,376],{"title":253,"path":384,"stem":385,"description":386,"icon":13,"tags":387},"\u002Fdocs\u002Fdigital-product-passport\u002Felectronics\u002Fcomplete-examples","docs\u002F11.digital-product-passport\u002F08.electronics\u002F02.complete-examples","Reference Electronics Digital Product Passport documents covering smartphone, laptop, display and server",[373,258,388,389,62],"smartphone","laptop",[373,374,375,376,377],[213,214,215,31,216,35,217],{"title":393,"path":394,"stem":395,"children":396,"description":398,"icon":399},"OpenEPCIS Overview","\u002Fdocs\u002Fplatform-overview","docs\u002F14.platform-overview\u002Findex",[397,400,406,412,418],{"title":393,"path":394,"stem":395,"description":398,"icon":399},"A GS1-conformant supply-chain data platform — Resolver, Masterdata, EPCIS Events — in open source and business editions.","lucide:layout-dashboard",{"title":401,"path":402,"stem":403,"description":404,"icon":405},"Architecture","\u002Fdocs\u002Fplatform-overview\u002Farchitecture","docs\u002F14.platform-overview\u002F01.architecture","How OpenEPCIS handles identity, isolation, events, and GS1 conformance — the four things that distinguish the platform.","lucide:cpu",{"title":407,"path":408,"stem":409,"description":410,"icon":411},"Feature Matrix","\u002Fdocs\u002Fplatform-overview\u002Ffeature-matrix","docs\u002F14.platform-overview\u002F02.feature-matrix","OpenEPCIS capabilities by edition, aligned to the relevant GS1 standards.","lucide:check-square",{"title":413,"path":414,"stem":415,"description":416,"icon":417},"Roadmap","\u002Fdocs\u002Fplatform-overview\u002Froadmap","docs\u002F14.platform-overview\u002F03.roadmap","Three horizons — Now, Next, Later. Skeleton awaiting user-confirmed dates.","lucide:map",{"title":419,"path":420,"stem":421,"children":422,"description":424,"icon":425},"Modules","\u002Fdocs\u002Fplatform-overview\u002Fmodules","docs\u002F14.platform-overview\u002Fmodules\u002Findex",[423,426,432,438,444,450,456,462],{"title":419,"path":420,"stem":421,"description":424,"icon":425},"Seven module families that organise the OpenEPCIS platform — Resolver, Masterdata, EPCIS Events, Formats & Validation, Integration, Testdata, Platform.","lucide:layers",{"title":427,"path":428,"stem":429,"description":430,"icon":431},"GS1 Conformant Resolver","\u002Fdocs\u002Fplatform-overview\u002Fmodules\u002Fresolver","docs\u002F14.platform-overview\u002Fmodules\u002F01.resolver","Resolves GS1 Digital Link URIs to product information, masterdata, EPCIS endpoints, and twelve more standard link types.","lucide:link-2",{"title":433,"path":434,"stem":435,"description":436,"icon":437},"GS1 Web Vocabulary & Masterdata","\u002Fdocs\u002Fplatform-overview\u002Fmodules\u002Fmasterdata","docs\u002F14.platform-overview\u002Fmodules\u002F02.masterdata","Web Vocabulary models, masterdata-to-resolver REST pattern, GS1 Germany Activate Plus \u002F GEPIR sync, and the event-driven masterdata bus.","lucide:database",{"title":439,"path":440,"stem":441,"description":442,"icon":443},"EPCIS Events — Capture, Query, Subscriptions","\u002Fdocs\u002Fplatform-overview\u002Fmodules\u002Fepcis-events","docs\u002F14.platform-overview\u002Fmodules\u002F03.epcis-events","EPCIS 2.0 REST and SOAP, live streaming subscriptions, resilient pagination, OpenSearch event store.","lucide:activity",{"title":445,"path":446,"stem":447,"description":448,"icon":449},"Formats, Validation & Identity","\u002Fdocs\u002Fplatform-overview\u002Fmodules\u002Fformats","docs\u002F14.platform-overview\u002Fmodules\u002F04.formats","XML ↔ JSON-LD conversion, multi-layer validation, identifier translation, idempotent event hashing.","lucide:file-check",{"title":451,"path":452,"stem":453,"description":454,"icon":455},"Integration & Gateways","\u002Fdocs\u002Fplatform-overview\u002Fmodules\u002Fintegration","docs\u002F14.platform-overview\u002Fmodules\u002F05.integration","Cloud storage, file service, natural-language AI assistant.","lucide:plug",{"title":457,"path":458,"stem":459,"description":460,"icon":461},"Testdata & Developer Tooling","\u002Fdocs\u002Fplatform-overview\u002Fmodules\u002Ftestdata","docs\u002F14.platform-overview\u002Fmodules\u002F06.testdata","Synthetic EPCIS test event generation, reference event collections, conformance test suite, SDKs.","lucide:wrench",{"title":463,"path":464,"stem":465,"description":466,"icon":467},"Platform, Build & Observability","\u002Fdocs\u002Fplatform-overview\u002Fmodules\u002Fplatform","docs\u002F14.platform-overview\u002Fmodules\u002F07.platform","How OpenEPCIS is built, deployed, and observed.","lucide:server",{"title":469,"path":470,"stem":471,"children":472,"description":474,"icon":29,"tags":483},"Vision","\u002Fdocs\u002Fvision","docs\u002F15.vision\u002Findex",[473],{"title":469,"path":470,"stem":471,"description":474,"icon":29,"tags":475},"How UNTP, DIDs, Verifiable Credentials, and EPCIS work together to create unified product identity infrastructure for the connected supply chain.",[476,477,478,479,332,480,481,482],"vision","digital-twin","did","verifiable-credentials","rfid","industry-4-0","web-3-0",[476,477,478,479,332,480,481,482],[],{"doc":486,"usedFallback":1348},{"id":487,"title":181,"body":488,"description":186,"extension":1328,"icon":187,"lastUpdated":278,"meta":1329,"navigation":1340,"path":182,"seo":1342,"sitemap":1343,"stem":183,"__hash__":1347},"docsEN\u002Fdocs\u002F10.dependency-management\u002Findex.md",{"type":489,"value":490,"toc":1321},"minimark",[491,496,500,509,512,515,519,522,528,556,561,581,585,588,593,607,611,614,619,644,743,762,914,919,1317],[492,493,495],"h2",{"id":494},"quick-links","Quick links",[497,498,499],"p",{},"Please find below the links to the codes referenced on this documentation page:",[497,501,502,503],{},"• EPCIS parent POM for dependency management application code : ",[504,505,506],"a",{"href":506,"rel":507},"https:\u002F\u002Fgithub.com\u002Fopenepcis\u002Fopenepcis-bom",[508],"nofollow",[492,510,23],{"id":511},"introduction",[497,513,514],{},"The OpenEPCIS-BOM project serves as a centralized Maven Bill of Materials (BOM) for all OpenEPCIS project. It simplifies dependency management across all OpenEPCIS modules by\nproviding a consistent and versioned set of dependencies. This documentation aims to explain the purpose, benefits, and usage of this BOM, offering a guide for developers and users\nworking with OpenEPCIS.",[492,516,518],{"id":517},"what-is-a-maven-bom","What is a Maven BOM?",[497,520,521],{},"A Maven Bill of Materials (BOM) is a special type of POM (Project Object Model) that is used to control the versions of dependencies used in a project and its sub-modules. It does\nnot contain any build logic or source code but instead defines a list of dependencies with their respective versions.",[497,523,524],{},[525,526,527],"strong",{},"Key characteristics of a Maven BOM:",[529,530,531,538,544,550],"ul",{},[532,533,534,537],"li",{},[525,535,536],{},"Dependency Management:"," It centralizes dependency version management, ensuring consistency across multiple modules.",[532,539,540,543],{},[525,541,542],{},"Version Control:"," It allows for easy updates and maintenance of dependency versions.",[532,545,546,549],{},[525,547,548],{},"Simplified Dependency Declarations:"," Child modules can declare dependencies without specifying versions, and simply inherit them from the BOM.",[532,551,552,555],{},[525,553,554],{},"Reduced Conflicts:"," It minimizes the risk of dependency conflicts by enforcing consistent versions.",[497,557,558],{},[525,559,560],{},"Benefits of using a BOM:",[529,562,563,569,575],{},[532,564,565,568],{},[525,566,567],{},"Maintainability:"," Easier to update dependency versions across multiple modules.",[532,570,571,574],{},[525,572,573],{},"Consistency:"," Ensures all modules use the same versions of dependencies.",[532,576,577,580],{},[525,578,579],{},"Improved Build Reliability:"," Reduces the risk of unexpected dependency conflicts.",[492,582,584],{"id":583},"openepcis-bom","OpenEPCIS-BOM",[497,586,587],{},"The OpenEPCIS project utilizes a modular architecture, where individual modules rely on various dependencies. To ensure uniform dependency versions and\nmanagement across the project, the OpenEPCIS-BOM project was created.",[497,589,590],{},[525,591,592],{},"Functionality:",[529,594,595,598,601,604],{},[532,596,597],{},"The project defines a POM file that lists all dependencies required by various OpenEPCIS modules.",[532,599,600],{},"It specifies the versions of these dependencies, ensuring consistency across the project.",[532,602,603],{},"OpenEPCIS modules can import this BOM to inherit the dependency versions.",[532,605,606],{},"If new dependencies are introduced to OpenEPCIS modules, they are added to the OpenEPCIS-BOM with specified versions.",[492,608,610],{"id":609},"using-the-openepcis-bom","Using the OpenEPCIS-BOM",[497,612,613],{},"To use the OpenEPCIS-BOM in OpenEPCIS module, we need to import it into your module's POM file.",[497,615,616],{},[525,617,618],{},"Steps:",[620,621,622],"ol",{},[532,623,624,627],{},[525,625,626],{},"Import the BOM:",[529,628,629,637],{},[532,630,631,632,636],{},"Add the following ",[633,634,635],"code",{},"\u003Cparent>"," section to module's POM file.",[532,638,639,640,643],{},"Replace ",[633,641,642],{},"${openepcis.version}"," with the desired version of the OpenEPCIS-BOM. This variable is typically defined in the parent pom.",[645,646,650],"pre",{"className":647,"code":648,"language":63,"meta":649,"style":649},"language-xml shiki shiki-themes material-theme-lighter github-light github-dark monokai","\n\u003Cparent>\n    \u003CgroupId>io.openepcis\u003C\u002FgroupId>\n    \u003CartifactId>openepcis-bom\u003C\u002FartifactId>\n    \u003Cversion>`${openepcis.version}`\u003C\u002Fversion>\n\u003C\u002Fparent>\n","",[633,651,652,661,675,698,716,734],{"__ignoreMap":649},[653,654,657],"span",{"class":655,"line":656},"line",1,[653,658,660],{"emptyLinePlaceholder":659},true,"\n",[653,662,664,668,672],{"class":655,"line":663},2,[653,665,667],{"class":666},"swvn1","\u003C",[653,669,671],{"class":670},"sHsBP","parent",[653,673,674],{"class":666},">\n",[653,676,678,681,684,687,691,694,696],{"class":655,"line":677},3,[653,679,680],{"class":666},"    \u003C",[653,682,683],{"class":670},"groupId",[653,685,686],{"class":666},">",[653,688,690],{"class":689},"ss--_","io.openepcis",[653,692,693],{"class":666},"\u003C\u002F",[653,695,683],{"class":670},[653,697,674],{"class":666},[653,699,701,703,706,708,710,712,714],{"class":655,"line":700},4,[653,702,680],{"class":666},[653,704,705],{"class":670},"artifactId",[653,707,686],{"class":666},[653,709,583],{"class":689},[653,711,693],{"class":666},[653,713,705],{"class":670},[653,715,674],{"class":666},[653,717,719,721,723,725,728,730,732],{"class":655,"line":718},5,[653,720,680],{"class":666},[653,722,84],{"class":670},[653,724,686],{"class":666},[653,726,727],{"class":689},"`${openepcis.version}`",[653,729,693],{"class":666},[653,731,84],{"class":670},[653,733,674],{"class":666},[653,735,737,739,741],{"class":655,"line":736},6,[653,738,693],{"class":666},[653,740,671],{"class":670},[653,742,674],{"class":666},[620,744,745],{"start":663},[532,746,747,750],{},[525,748,749],{},"Declare Dependencies:",[529,751,752,759],{},[532,753,754,755,758],{},"In the ",[633,756,757],{},"\u003Cdependencies>"," section of your module's POM file, declare the dependencies you need without specifying versions.",[532,760,761],{},"The versions will be inherited from the OpenEPCIS-BOM.",[645,763,765],{"className":647,"code":764,"language":63,"meta":649,"style":649},"\n\u003Cdependencies>\n    \u003C!-- Simple Logging Facade for Java (SLF4J) API -->\n    \u003Cdependency>\n        \u003CgroupId>org.slf4j\u003C\u002FgroupId>\n        \u003CartifactId>slf4j-api\u003C\u002FartifactId>\n    \u003C\u002Fdependency>\n\n    \u003C!-- Java library for processing JSON data -->\n    \u003Cdependency>\n        \u003CgroupId>com.fasterxml.jackson.core\u003C\u002FgroupId>\n        \u003CartifactId>jackson-databind\u003C\u002FartifactId>\n    \u003C\u002Fdependency>\n\u003C\u002Fdependencies>\n",[633,766,767,771,780,786,795,813,830,840,845,851,860,878,896,905],{"__ignoreMap":649},[653,768,769],{"class":655,"line":656},[653,770,660],{"emptyLinePlaceholder":659},[653,772,773,775,778],{"class":655,"line":663},[653,774,667],{"class":666},[653,776,777],{"class":670},"dependencies",[653,779,674],{"class":666},[653,781,782],{"class":655,"line":677},[653,783,785],{"class":784},"ss7Ak","    \u003C!-- Simple Logging Facade for Java (SLF4J) API -->\n",[653,787,788,790,793],{"class":655,"line":700},[653,789,680],{"class":666},[653,791,792],{"class":670},"dependency",[653,794,674],{"class":666},[653,796,797,800,802,804,807,809,811],{"class":655,"line":718},[653,798,799],{"class":666},"        \u003C",[653,801,683],{"class":670},[653,803,686],{"class":666},[653,805,806],{"class":689},"org.slf4j",[653,808,693],{"class":666},[653,810,683],{"class":670},[653,812,674],{"class":666},[653,814,815,817,819,821,824,826,828],{"class":655,"line":736},[653,816,799],{"class":666},[653,818,705],{"class":670},[653,820,686],{"class":666},[653,822,823],{"class":689},"slf4j-api",[653,825,693],{"class":666},[653,827,705],{"class":670},[653,829,674],{"class":666},[653,831,833,836,838],{"class":655,"line":832},7,[653,834,835],{"class":666},"    \u003C\u002F",[653,837,792],{"class":670},[653,839,674],{"class":666},[653,841,843],{"class":655,"line":842},8,[653,844,660],{"emptyLinePlaceholder":659},[653,846,848],{"class":655,"line":847},9,[653,849,850],{"class":784},"    \u003C!-- Java library for processing JSON data -->\n",[653,852,854,856,858],{"class":655,"line":853},10,[653,855,680],{"class":666},[653,857,792],{"class":670},[653,859,674],{"class":666},[653,861,863,865,867,869,872,874,876],{"class":655,"line":862},11,[653,864,799],{"class":666},[653,866,683],{"class":670},[653,868,686],{"class":666},[653,870,871],{"class":689},"com.fasterxml.jackson.core",[653,873,693],{"class":666},[653,875,683],{"class":670},[653,877,674],{"class":666},[653,879,881,883,885,887,890,892,894],{"class":655,"line":880},12,[653,882,799],{"class":666},[653,884,705],{"class":670},[653,886,686],{"class":666},[653,888,889],{"class":689},"jackson-databind",[653,891,693],{"class":666},[653,893,705],{"class":670},[653,895,674],{"class":666},[653,897,899,901,903],{"class":655,"line":898},13,[653,900,835],{"class":666},[653,902,792],{"class":670},[653,904,674],{"class":666},[653,906,908,910,912],{"class":655,"line":907},14,[653,909,693],{"class":666},[653,911,777],{"class":670},[653,913,674],{"class":666},[497,915,916],{},[525,917,918],{},"Example POM Snippet:",[645,920,922],{"className":647,"code":921,"language":63,"meta":649,"style":649},"\n\u003Cproject xsi:schemaLocation=\"http:\u002F\u002Fmaven.apache.org\u002FPOM\u002F4.0.0 https:\u002F\u002Fmaven.apache.org\u002Fxsd\u002Fmaven-4.0.0.xsd\"\n         xmlns=\"http:\u002F\u002Fmaven.apache.org\u002FPOM\u002F4.0.0\"\n         xmlns:xsi=\"http:\u002F\u002Fwww.w3.org\u002F2001\u002FXMLSchema-instance\">\n\n    \u003CmodelVersion>4.0.0\u003C\u002FmodelVersion>\n\n    \u003Cparent>\n        \u003CgroupId>io.openepcis\u003C\u002FgroupId>\n        \u003CartifactId>openepcis-bom\u003C\u002FartifactId>\n        \u003Cversion>`${openepcis.version}`\u003C\u002Fversion>\n    \u003C\u002Fparent>\n\n    \u003CartifactId>openepcis-module-name\u003C\u002FartifactId>\n    \u003Cname>openepcis-module-name\u003C\u002Fname>\n    \u003Cpackaging>pom\u003C\u002Fpackaging>\n\n    \u003CdependencyManagement>\n        \u003Cdependencies>\n            \u003C!-- Simple Logging Facade for Java (SLF4J) API -->\n            \u003Cdependency>\n                \u003CgroupId>org.slf4j\u003C\u002FgroupId>\n                \u003CartifactId>slf4j-api\u003C\u002FartifactId>\n            \u003C\u002Fdependency>\n\n            \u003C!-- Java library for processing JSON data -->\n            \u003Cdependency>\n                \u003CgroupId>com.fasterxml.jackson.core\u003C\u002FgroupId>\n                \u003CartifactId>jackson-databind\u003C\u002FartifactId>\n            \u003C\u002Fdependency>\n        \u003C\u002Fdependencies>\n    \u003C\u002FdependencyManagement>\n\u003C\u002Fproject>\n",[633,923,924,928,960,974,994,998,1016,1020,1028,1044,1060,1076,1084,1088,1105,1123,1141,1146,1156,1165,1171,1181,1199,1216,1226,1231,1237,1246,1263,1280,1289,1299,1308],{"__ignoreMap":649},[653,925,926],{"class":655,"line":656},[653,927,660],{"emptyLinePlaceholder":659},[653,929,930,932,935,939,943,946,949,953,957],{"class":655,"line":663},[653,931,667],{"class":666},[653,933,934],{"class":670},"project",[653,936,938],{"class":937},"s_lYk"," xsi",[653,940,942],{"class":941},"sRsjY",":",[653,944,945],{"class":937},"schemaLocation",[653,947,948],{"class":666},"=",[653,950,952],{"class":951},"siCPE","\"",[653,954,956],{"class":955},"sLACW","http:\u002F\u002Fmaven.apache.org\u002FPOM\u002F4.0.0 https:\u002F\u002Fmaven.apache.org\u002Fxsd\u002Fmaven-4.0.0.xsd",[653,958,959],{"class":951},"\"\n",[653,961,962,965,967,969,972],{"class":655,"line":677},[653,963,964],{"class":937},"         xmlns",[653,966,948],{"class":666},[653,968,952],{"class":951},[653,970,971],{"class":955},"http:\u002F\u002Fmaven.apache.org\u002FPOM\u002F4.0.0",[653,973,959],{"class":951},[653,975,976,978,980,983,985,987,990,992],{"class":655,"line":700},[653,977,964],{"class":937},[653,979,942],{"class":941},[653,981,982],{"class":937},"xsi",[653,984,948],{"class":666},[653,986,952],{"class":951},[653,988,989],{"class":955},"http:\u002F\u002Fwww.w3.org\u002F2001\u002FXMLSchema-instance",[653,991,952],{"class":951},[653,993,674],{"class":666},[653,995,996],{"class":655,"line":718},[653,997,660],{"emptyLinePlaceholder":659},[653,999,1000,1002,1005,1007,1010,1012,1014],{"class":655,"line":736},[653,1001,680],{"class":666},[653,1003,1004],{"class":670},"modelVersion",[653,1006,686],{"class":666},[653,1008,1009],{"class":689},"4.0.0",[653,1011,693],{"class":666},[653,1013,1004],{"class":670},[653,1015,674],{"class":666},[653,1017,1018],{"class":655,"line":832},[653,1019,660],{"emptyLinePlaceholder":659},[653,1021,1022,1024,1026],{"class":655,"line":842},[653,1023,680],{"class":666},[653,1025,671],{"class":670},[653,1027,674],{"class":666},[653,1029,1030,1032,1034,1036,1038,1040,1042],{"class":655,"line":847},[653,1031,799],{"class":666},[653,1033,683],{"class":670},[653,1035,686],{"class":666},[653,1037,690],{"class":689},[653,1039,693],{"class":666},[653,1041,683],{"class":670},[653,1043,674],{"class":666},[653,1045,1046,1048,1050,1052,1054,1056,1058],{"class":655,"line":853},[653,1047,799],{"class":666},[653,1049,705],{"class":670},[653,1051,686],{"class":666},[653,1053,583],{"class":689},[653,1055,693],{"class":666},[653,1057,705],{"class":670},[653,1059,674],{"class":666},[653,1061,1062,1064,1066,1068,1070,1072,1074],{"class":655,"line":862},[653,1063,799],{"class":666},[653,1065,84],{"class":670},[653,1067,686],{"class":666},[653,1069,727],{"class":689},[653,1071,693],{"class":666},[653,1073,84],{"class":670},[653,1075,674],{"class":666},[653,1077,1078,1080,1082],{"class":655,"line":880},[653,1079,835],{"class":666},[653,1081,671],{"class":670},[653,1083,674],{"class":666},[653,1085,1086],{"class":655,"line":898},[653,1087,660],{"emptyLinePlaceholder":659},[653,1089,1090,1092,1094,1096,1099,1101,1103],{"class":655,"line":907},[653,1091,680],{"class":666},[653,1093,705],{"class":670},[653,1095,686],{"class":666},[653,1097,1098],{"class":689},"openepcis-module-name",[653,1100,693],{"class":666},[653,1102,705],{"class":670},[653,1104,674],{"class":666},[653,1106,1108,1110,1113,1115,1117,1119,1121],{"class":655,"line":1107},15,[653,1109,680],{"class":666},[653,1111,1112],{"class":670},"name",[653,1114,686],{"class":666},[653,1116,1098],{"class":689},[653,1118,693],{"class":666},[653,1120,1112],{"class":670},[653,1122,674],{"class":666},[653,1124,1126,1128,1131,1133,1135,1137,1139],{"class":655,"line":1125},16,[653,1127,680],{"class":666},[653,1129,1130],{"class":670},"packaging",[653,1132,686],{"class":666},[653,1134,192],{"class":689},[653,1136,693],{"class":666},[653,1138,1130],{"class":670},[653,1140,674],{"class":666},[653,1142,1144],{"class":655,"line":1143},17,[653,1145,660],{"emptyLinePlaceholder":659},[653,1147,1149,1151,1154],{"class":655,"line":1148},18,[653,1150,680],{"class":666},[653,1152,1153],{"class":670},"dependencyManagement",[653,1155,674],{"class":666},[653,1157,1159,1161,1163],{"class":655,"line":1158},19,[653,1160,799],{"class":666},[653,1162,777],{"class":670},[653,1164,674],{"class":666},[653,1166,1168],{"class":655,"line":1167},20,[653,1169,1170],{"class":784},"            \u003C!-- Simple Logging Facade for Java (SLF4J) API -->\n",[653,1172,1174,1177,1179],{"class":655,"line":1173},21,[653,1175,1176],{"class":666},"            \u003C",[653,1178,792],{"class":670},[653,1180,674],{"class":666},[653,1182,1184,1187,1189,1191,1193,1195,1197],{"class":655,"line":1183},22,[653,1185,1186],{"class":666},"                \u003C",[653,1188,683],{"class":670},[653,1190,686],{"class":666},[653,1192,806],{"class":689},[653,1194,693],{"class":666},[653,1196,683],{"class":670},[653,1198,674],{"class":666},[653,1200,1202,1204,1206,1208,1210,1212,1214],{"class":655,"line":1201},23,[653,1203,1186],{"class":666},[653,1205,705],{"class":670},[653,1207,686],{"class":666},[653,1209,823],{"class":689},[653,1211,693],{"class":666},[653,1213,705],{"class":670},[653,1215,674],{"class":666},[653,1217,1219,1222,1224],{"class":655,"line":1218},24,[653,1220,1221],{"class":666},"            \u003C\u002F",[653,1223,792],{"class":670},[653,1225,674],{"class":666},[653,1227,1229],{"class":655,"line":1228},25,[653,1230,660],{"emptyLinePlaceholder":659},[653,1232,1234],{"class":655,"line":1233},26,[653,1235,1236],{"class":784},"            \u003C!-- Java library for processing JSON data -->\n",[653,1238,1240,1242,1244],{"class":655,"line":1239},27,[653,1241,1176],{"class":666},[653,1243,792],{"class":670},[653,1245,674],{"class":666},[653,1247,1249,1251,1253,1255,1257,1259,1261],{"class":655,"line":1248},28,[653,1250,1186],{"class":666},[653,1252,683],{"class":670},[653,1254,686],{"class":666},[653,1256,871],{"class":689},[653,1258,693],{"class":666},[653,1260,683],{"class":670},[653,1262,674],{"class":666},[653,1264,1266,1268,1270,1272,1274,1276,1278],{"class":655,"line":1265},29,[653,1267,1186],{"class":666},[653,1269,705],{"class":670},[653,1271,686],{"class":666},[653,1273,889],{"class":689},[653,1275,693],{"class":666},[653,1277,705],{"class":670},[653,1279,674],{"class":666},[653,1281,1283,1285,1287],{"class":655,"line":1282},30,[653,1284,1221],{"class":666},[653,1286,792],{"class":670},[653,1288,674],{"class":666},[653,1290,1292,1295,1297],{"class":655,"line":1291},31,[653,1293,1294],{"class":666},"        \u003C\u002F",[653,1296,777],{"class":670},[653,1298,674],{"class":666},[653,1300,1302,1304,1306],{"class":655,"line":1301},32,[653,1303,835],{"class":666},[653,1305,1153],{"class":670},[653,1307,674],{"class":666},[653,1309,1311,1313,1315],{"class":655,"line":1310},33,[653,1312,693],{"class":666},[653,1314,934],{"class":670},[653,1316,674],{"class":666},[1318,1319,1320],"style",{},"html pre.shiki code .swvn1, html code.shiki .swvn1{--shiki-light:#39ADB5;--shiki-default:#24292E;--shiki-dark:#E1E4E8;--shiki-sepia:#F8F8F2}html pre.shiki code .sHsBP, html code.shiki .sHsBP{--shiki-light:#E53935;--shiki-default:#22863A;--shiki-dark:#85E89D;--shiki-sepia:#F92672}html pre.shiki code .ss--_, html code.shiki .ss--_{--shiki-light:#90A4AE;--shiki-default:#24292E;--shiki-dark:#E1E4E8;--shiki-sepia:#F8F8F2}html .light .shiki span {color: var(--shiki-light);background: var(--shiki-light-bg);font-style: var(--shiki-light-font-style);font-weight: var(--shiki-light-font-weight);text-decoration: var(--shiki-light-text-decoration);}html.light .shiki span {color: var(--shiki-light);background: var(--shiki-light-bg);font-style: var(--shiki-light-font-style);font-weight: var(--shiki-light-font-weight);text-decoration: var(--shiki-light-text-decoration);}html .default .shiki span {color: var(--shiki-default);background: var(--shiki-default-bg);font-style: var(--shiki-default-font-style);font-weight: var(--shiki-default-font-weight);text-decoration: var(--shiki-default-text-decoration);}html .shiki span {color: var(--shiki-default);background: var(--shiki-default-bg);font-style: var(--shiki-default-font-style);font-weight: var(--shiki-default-font-weight);text-decoration: var(--shiki-default-text-decoration);}html .dark .shiki span {color: var(--shiki-dark);background: var(--shiki-dark-bg);font-style: var(--shiki-dark-font-style);font-weight: var(--shiki-dark-font-weight);text-decoration: var(--shiki-dark-text-decoration);}html.dark .shiki span {color: var(--shiki-dark);background: var(--shiki-dark-bg);font-style: var(--shiki-dark-font-style);font-weight: var(--shiki-dark-font-weight);text-decoration: var(--shiki-dark-text-decoration);}html .sepia .shiki span {color: var(--shiki-sepia);background: var(--shiki-sepia-bg);font-style: var(--shiki-sepia-font-style);font-weight: var(--shiki-sepia-font-weight);text-decoration: var(--shiki-sepia-text-decoration);}html.sepia .shiki span {color: var(--shiki-sepia);background: var(--shiki-sepia-bg);font-style: var(--shiki-sepia-font-style);font-weight: var(--shiki-sepia-font-weight);text-decoration: var(--shiki-sepia-text-decoration);}html pre.shiki code .ss7Ak, html code.shiki .ss7Ak{--shiki-light:#90A4AE;--shiki-light-font-style:italic;--shiki-default:#6A737D;--shiki-default-font-style:inherit;--shiki-dark:#6A737D;--shiki-dark-font-style:inherit;--shiki-sepia:#88846F;--shiki-sepia-font-style:inherit}html pre.shiki code .s_lYk, html code.shiki .s_lYk{--shiki-light:#9C3EDA;--shiki-default:#6F42C1;--shiki-dark:#B392F0;--shiki-sepia:#A6E22E}html pre.shiki code .sRsjY, html code.shiki .sRsjY{--shiki-light:#39ADB5;--shiki-default:#6F42C1;--shiki-dark:#B392F0;--shiki-sepia:#A6E22E}html pre.shiki code .siCPE, html code.shiki .siCPE{--shiki-light:#39ADB5;--shiki-default:#032F62;--shiki-dark:#9ECBFF;--shiki-sepia:#E6DB74}html pre.shiki code .sLACW, html code.shiki .sLACW{--shiki-light:#91B859;--shiki-default:#032F62;--shiki-dark:#9ECBFF;--shiki-sepia:#E6DB74}",{"title":649,"searchDepth":663,"depth":663,"links":1322},[1323,1324,1325,1326,1327],{"id":494,"depth":663,"text":495},{"id":511,"depth":663,"text":23},{"id":517,"depth":663,"text":518},{"id":583,"depth":663,"text":584},{"id":609,"depth":663,"text":610},"md",{"head":1330,"readingTime":1335},{"meta":1331},[1332],{"name":1333,"content":1334},"keywords","Maven BOM, OpenEPCIS, Dependency Management, Java Dependencies, POM, Software Dependencies, Version Control, EPCIS, Open Source Java, Build Management, Modular Software, Dependency Resolution, Java Libraries, Maven Project, Centralized Dependencies, Dependency Consistency",{"text":1336,"minutes":1337,"time":1338,"words":1339},"3 min read",2.215,132900,443,{"title":181,"tags":1341},[189,15,190,191,192,193,194,31,195,196,197,198,199,200,201,202],{"title":181,"description":186},{"loc":182,"lastmod":1344,"changefreq":1345,"priority":1346},"2025-03-31","monthly",0.9,"qNQECIQRmFoWXpGKIyk4BS9djwe22K12GlNwEBQnyig",false,[1350],{"title":5,"path":6,"stem":7,"children":1351},[1352,1354,1359,1364,1369,1374,1379,1384,1394,1399,1404,1409,1467,1483],{"title":10,"path":6,"stem":11,"description":12,"icon":13,"tags":1353},[15,16,17,18,19,20,21],{"title":23,"path":24,"stem":25,"children":1355,"description":28,"icon":29,"tags":1358},[1356],{"title":23,"path":24,"stem":25,"description":28,"icon":29,"tags":1357},[16,31,32,33,34,35,36,37,38],[16,31,32,33,34,35,36,37,38],{"title":41,"path":42,"stem":43,"children":1360,"description":46,"icon":47,"tags":1363},[1361],{"title":41,"path":42,"stem":43,"description":46,"icon":47,"tags":1362},[16,31,32,33,49,50],[16,31,32,33,49,50],{"title":53,"path":54,"stem":55,"children":1365,"description":58,"icon":59,"tags":1368},[1366],{"title":53,"path":54,"stem":55,"description":58,"icon":59,"tags":1367},[16,61,62,63,64,65,66,21,67,68,69,70,71],[16,61,62,63,64,65,66,21,67,68,69,70,71],{"title":74,"path":75,"stem":76,"children":1370,"description":79,"icon":80,"tags":1373},[1371],{"title":74,"path":75,"stem":76,"description":79,"icon":80,"tags":1372},[16,32,61,62,63,64,82,66,21,83,84,85,69,70,71],[16,32,61,62,63,64,82,66,21,83,84,85,69,70,71],{"title":88,"path":89,"stem":90,"children":1375,"description":93,"icon":94,"tags":1378},[1376],{"title":88,"path":89,"stem":90,"description":93,"icon":94,"tags":1377},[16,96,97,98,99,100,21,101,102,103,104,105,106,107,108,109,110,111],[16,96,97,98,99,100,21,101,102,103,104,105,106,107,108,109,110,111],{"title":114,"path":115,"stem":116,"children":1380,"description":119,"icon":120,"tags":1383},[1381],{"title":114,"path":115,"stem":116,"description":119,"icon":120,"tags":1382},[16,122,61,62,63,64,21,123,124,125,70,71],[16,122,61,62,63,64,21,123,124,125,70,71],{"title":128,"path":129,"stem":130,"children":1385,"description":133,"icon":134,"tags":1393},[1386,1388],{"title":128,"path":129,"stem":130,"description":133,"icon":134,"tags":1387},[16,122,61,62,63,64,21,123,124,125,70,71],{"title":137,"path":138,"stem":139,"children":1389,"description":133,"icon":142,"tags":1392},[1390],{"title":137,"path":138,"stem":139,"description":133,"icon":142,"tags":1391},[16,61,62,144,21,145,146,147,35,148,149,150,151],[16,61,62,144,21,145,146,147,35,148,149,150,151],[16,122,61,62,63,64,21,123,124,125,70,71],{"title":155,"path":156,"stem":157,"children":1395,"description":160,"icon":161,"tags":1398},[1396],{"title":155,"path":156,"stem":157,"description":160,"icon":161,"tags":1397},[16,61,62,144,21,163,35,148,149,150,151],[16,61,62,144,21,163,35,148,149,150,151],{"title":166,"path":167,"stem":168,"children":1400,"description":171,"icon":172,"tags":1403},[1401],{"title":166,"path":167,"stem":168,"description":171,"icon":172,"tags":1402},[16,174,15,175,21,176,35,177,149,150,178],[16,174,15,175,21,176,35,177,149,150,178],{"title":181,"path":182,"stem":183,"children":1405,"description":186,"icon":187,"tags":1408},[1406],{"title":181,"path":182,"stem":183,"description":186,"icon":187,"tags":1407},[189,15,190,191,192,193,194,31,195,196,197,198,199,200,201,202],[189,15,190,191,192,193,194,31,195,196,197,198,199,200,201,202],{"title":205,"path":206,"stem":207,"children":1410,"description":210,"icon":211,"tags":1466},[1411,1413,1418,1427,1437,1446,1451,1453,1455,1457],{"title":205,"path":206,"stem":207,"description":210,"icon":211,"tags":1412},[213,214,215,31,216,35,217],{"title":219,"path":220,"stem":221,"children":1414,"description":224,"icon":225,"tags":1417},[1415],{"title":219,"path":220,"stem":221,"description":224,"icon":225,"tags":1416},[227,228,216,214,215],[227,228,216,214,215],{"title":231,"path":232,"stem":233,"children":1419,"description":236,"icon":237,"tags":1426},[1420,1422,1423,1424],{"title":231,"path":232,"stem":233,"description":236,"icon":237,"tags":1421},[239,240,214,31,102,35,216],{"title":242,"path":243,"stem":244,"description":245,"icon":172},{"title":247,"path":248,"stem":249,"description":250,"icon":251},{"title":253,"path":254,"stem":255,"description":256,"icon":13,"tags":1425},[239,258,259,62,260],[239,240,214,31,102,35,216],{"title":263,"path":264,"stem":265,"children":1428,"description":268,"icon":269,"tags":1436},[1429,1431,1432,1433,1434],{"title":263,"path":264,"stem":265,"description":268,"icon":269,"tags":1430},[271,272,273,214,31,102,35,216],{"title":242,"path":275,"stem":276,"description":277,"icon":278},{"title":247,"path":280,"stem":281,"description":282,"icon":278},{"title":284,"path":285,"stem":286,"description":287,"icon":278},{"title":253,"path":289,"stem":290,"description":291,"icon":13,"tags":1435},[271,258,273,293,294],[271,272,273,214,31,102,35,216],{"title":297,"path":298,"stem":299,"children":1438,"description":302,"icon":303,"tags":1445},[1439,1441,1443],{"title":297,"path":298,"stem":299,"description":302,"icon":303,"tags":1440},[305,306,307,214,216,308],{"title":242,"path":310,"stem":311,"description":312,"icon":313,"tags":1442},[305,306,307,315],{"title":253,"path":317,"stem":318,"description":319,"icon":13,"tags":1444},[305,258,306,307,321,62],[305,306,307,214,216,308],{"title":324,"path":325,"stem":326,"children":1447,"description":329,"icon":59,"tags":1450},[1448],{"title":324,"path":325,"stem":326,"description":329,"icon":59,"tags":1449},[331,332,102,333,227,334,335],[331,332,102,333,227,334,335],{"title":338,"path":339,"stem":340,"description":341,"icon":29,"tags":1452},[343,96,344,345],{"title":347,"path":348,"stem":349,"description":350,"icon":351,"tags":1454},[353,96,344],{"title":355,"path":356,"stem":357,"description":358,"icon":359,"tags":1456},[361,362,363,333],{"title":365,"path":366,"stem":367,"children":1458,"description":370,"icon":371,"tags":1465},[1459,1461,1463],{"title":365,"path":366,"stem":367,"description":370,"icon":371,"tags":1460},[373,374,375,376,377],{"title":242,"path":379,"stem":380,"description":381,"icon":172,"tags":1462},[373,315,374,375,376],{"title":253,"path":384,"stem":385,"description":386,"icon":13,"tags":1464},[373,258,388,389,62],[373,374,375,376,377],[213,214,215,31,216,35,217],{"title":393,"path":394,"stem":395,"children":1468,"description":398,"icon":399},[1469,1470,1471,1472,1473],{"title":393,"path":394,"stem":395,"description":398,"icon":399},{"title":401,"path":402,"stem":403,"description":404,"icon":405},{"title":407,"path":408,"stem":409,"description":410,"icon":411},{"title":413,"path":414,"stem":415,"description":416,"icon":417},{"title":419,"path":420,"stem":421,"children":1474,"description":424,"icon":425},[1475,1476,1477,1478,1479,1480,1481,1482],{"title":419,"path":420,"stem":421,"description":424,"icon":425},{"title":427,"path":428,"stem":429,"description":430,"icon":431},{"title":433,"path":434,"stem":435,"description":436,"icon":437},{"title":439,"path":440,"stem":441,"description":442,"icon":443},{"title":445,"path":446,"stem":447,"description":448,"icon":449},{"title":451,"path":452,"stem":453,"description":454,"icon":455},{"title":457,"path":458,"stem":459,"description":460,"icon":461},{"title":463,"path":464,"stem":465,"description":466,"icon":467},{"title":469,"path":470,"stem":471,"children":1484,"description":474,"icon":29,"tags":1487},[1485],{"title":469,"path":470,"stem":471,"description":474,"icon":29,"tags":1486},[476,477,478,479,332,480,481,482],[476,477,478,479,332,480,481,482],{"id":487,"title":181,"body":1489,"description":186,"extension":1328,"icon":187,"lastUpdated":278,"meta":2171,"navigation":2176,"path":182,"seo":2178,"sitemap":2179,"stem":183,"__hash__":1347},{"type":489,"value":1490,"toc":2164},[1491,1493,1495,1500,1502,1504,1506,1508,1512,1530,1534,1548,1550,1552,1556,1566,1568,1570,1574,1590,1662,1676,1808,1812,2162],[492,1492,495],{"id":494},[497,1494,499],{},[497,1496,502,1497],{},[504,1498,506],{"href":506,"rel":1499},[508],[492,1501,23],{"id":511},[497,1503,514],{},[492,1505,518],{"id":517},[497,1507,521],{},[497,1509,1510],{},[525,1511,527],{},[529,1513,1514,1518,1522,1526],{},[532,1515,1516,537],{},[525,1517,536],{},[532,1519,1520,543],{},[525,1521,542],{},[532,1523,1524,549],{},[525,1525,548],{},[532,1527,1528,555],{},[525,1529,554],{},[497,1531,1532],{},[525,1533,560],{},[529,1535,1536,1540,1544],{},[532,1537,1538,568],{},[525,1539,567],{},[532,1541,1542,574],{},[525,1543,573],{},[532,1545,1546,580],{},[525,1547,579],{},[492,1549,584],{"id":583},[497,1551,587],{},[497,1553,1554],{},[525,1555,592],{},[529,1557,1558,1560,1562,1564],{},[532,1559,597],{},[532,1561,600],{},[532,1563,603],{},[532,1565,606],{},[492,1567,610],{"id":609},[497,1569,613],{},[497,1571,1572],{},[525,1573,618],{},[620,1575,1576],{},[532,1577,1578,1580],{},[525,1579,626],{},[529,1581,1582,1586],{},[532,1583,631,1584,636],{},[633,1585,635],{},[532,1587,639,1588,643],{},[633,1589,642],{},[645,1591,1592],{"className":647,"code":648,"language":63,"meta":649,"style":649},[633,1593,1594,1598,1606,1622,1638,1654],{"__ignoreMap":649},[653,1595,1596],{"class":655,"line":656},[653,1597,660],{"emptyLinePlaceholder":659},[653,1599,1600,1602,1604],{"class":655,"line":663},[653,1601,667],{"class":666},[653,1603,671],{"class":670},[653,1605,674],{"class":666},[653,1607,1608,1610,1612,1614,1616,1618,1620],{"class":655,"line":677},[653,1609,680],{"class":666},[653,1611,683],{"class":670},[653,1613,686],{"class":666},[653,1615,690],{"class":689},[653,1617,693],{"class":666},[653,1619,683],{"class":670},[653,1621,674],{"class":666},[653,1623,1624,1626,1628,1630,1632,1634,1636],{"class":655,"line":700},[653,1625,680],{"class":666},[653,1627,705],{"class":670},[653,1629,686],{"class":666},[653,1631,583],{"class":689},[653,1633,693],{"class":666},[653,1635,705],{"class":670},[653,1637,674],{"class":666},[653,1639,1640,1642,1644,1646,1648,1650,1652],{"class":655,"line":718},[653,1641,680],{"class":666},[653,1643,84],{"class":670},[653,1645,686],{"class":666},[653,1647,727],{"class":689},[653,1649,693],{"class":666},[653,1651,84],{"class":670},[653,1653,674],{"class":666},[653,1655,1656,1658,1660],{"class":655,"line":736},[653,1657,693],{"class":666},[653,1659,671],{"class":670},[653,1661,674],{"class":666},[620,1663,1664],{"start":663},[532,1665,1666,1668],{},[525,1667,749],{},[529,1669,1670,1674],{},[532,1671,754,1672,758],{},[633,1673,757],{},[532,1675,761],{},[645,1677,1678],{"className":647,"code":764,"language":63,"meta":649,"style":649},[633,1679,1680,1684,1692,1696,1704,1720,1736,1744,1748,1752,1760,1776,1792,1800],{"__ignoreMap":649},[653,1681,1682],{"class":655,"line":656},[653,1683,660],{"emptyLinePlaceholder":659},[653,1685,1686,1688,1690],{"class":655,"line":663},[653,1687,667],{"class":666},[653,1689,777],{"class":670},[653,1691,674],{"class":666},[653,1693,1694],{"class":655,"line":677},[653,1695,785],{"class":784},[653,1697,1698,1700,1702],{"class":655,"line":700},[653,1699,680],{"class":666},[653,1701,792],{"class":670},[653,1703,674],{"class":666},[653,1705,1706,1708,1710,1712,1714,1716,1718],{"class":655,"line":718},[653,1707,799],{"class":666},[653,1709,683],{"class":670},[653,1711,686],{"class":666},[653,1713,806],{"class":689},[653,1715,693],{"class":666},[653,1717,683],{"class":670},[653,1719,674],{"class":666},[653,1721,1722,1724,1726,1728,1730,1732,1734],{"class":655,"line":736},[653,1723,799],{"class":666},[653,1725,705],{"class":670},[653,1727,686],{"class":666},[653,1729,823],{"class":689},[653,1731,693],{"class":666},[653,1733,705],{"class":670},[653,1735,674],{"class":666},[653,1737,1738,1740,1742],{"class":655,"line":832},[653,1739,835],{"class":666},[653,1741,792],{"class":670},[653,1743,674],{"class":666},[653,1745,1746],{"class":655,"line":842},[653,1747,660],{"emptyLinePlaceholder":659},[653,1749,1750],{"class":655,"line":847},[653,1751,850],{"class":784},[653,1753,1754,1756,1758],{"class":655,"line":853},[653,1755,680],{"class":666},[653,1757,792],{"class":670},[653,1759,674],{"class":666},[653,1761,1762,1764,1766,1768,1770,1772,1774],{"class":655,"line":862},[653,1763,799],{"class":666},[653,1765,683],{"class":670},[653,1767,686],{"class":666},[653,1769,871],{"class":689},[653,1771,693],{"class":666},[653,1773,683],{"class":670},[653,1775,674],{"class":666},[653,1777,1778,1780,1782,1784,1786,1788,1790],{"class":655,"line":880},[653,1779,799],{"class":666},[653,1781,705],{"class":670},[653,1783,686],{"class":666},[653,1785,889],{"class":689},[653,1787,693],{"class":666},[653,1789,705],{"class":670},[653,1791,674],{"class":666},[653,1793,1794,1796,1798],{"class":655,"line":898},[653,1795,835],{"class":666},[653,1797,792],{"class":670},[653,1799,674],{"class":666},[653,1801,1802,1804,1806],{"class":655,"line":907},[653,1803,693],{"class":666},[653,1805,777],{"class":670},[653,1807,674],{"class":666},[497,1809,1810],{},[525,1811,918],{},[645,1813,1814],{"className":647,"code":921,"language":63,"meta":649,"style":649},[633,1815,1816,1820,1840,1852,1870,1874,1890,1894,1902,1918,1934,1950,1958,1962,1978,1994,2010,2014,2022,2030,2034,2042,2058,2074,2082,2086,2090,2098,2114,2130,2138,2146,2154],{"__ignoreMap":649},[653,1817,1818],{"class":655,"line":656},[653,1819,660],{"emptyLinePlaceholder":659},[653,1821,1822,1824,1826,1828,1830,1832,1834,1836,1838],{"class":655,"line":663},[653,1823,667],{"class":666},[653,1825,934],{"class":670},[653,1827,938],{"class":937},[653,1829,942],{"class":941},[653,1831,945],{"class":937},[653,1833,948],{"class":666},[653,1835,952],{"class":951},[653,1837,956],{"class":955},[653,1839,959],{"class":951},[653,1841,1842,1844,1846,1848,1850],{"class":655,"line":677},[653,1843,964],{"class":937},[653,1845,948],{"class":666},[653,1847,952],{"class":951},[653,1849,971],{"class":955},[653,1851,959],{"class":951},[653,1853,1854,1856,1858,1860,1862,1864,1866,1868],{"class":655,"line":700},[653,1855,964],{"class":937},[653,1857,942],{"class":941},[653,1859,982],{"class":937},[653,1861,948],{"class":666},[653,1863,952],{"class":951},[653,1865,989],{"class":955},[653,1867,952],{"class":951},[653,1869,674],{"class":666},[653,1871,1872],{"class":655,"line":718},[653,1873,660],{"emptyLinePlaceholder":659},[653,1875,1876,1878,1880,1882,1884,1886,1888],{"class":655,"line":736},[653,1877,680],{"class":666},[653,1879,1004],{"class":670},[653,1881,686],{"class":666},[653,1883,1009],{"class":689},[653,1885,693],{"class":666},[653,1887,1004],{"class":670},[653,1889,674],{"class":666},[653,1891,1892],{"class":655,"line":832},[653,1893,660],{"emptyLinePlaceholder":659},[653,1895,1896,1898,1900],{"class":655,"line":842},[653,1897,680],{"class":666},[653,1899,671],{"class":670},[653,1901,674],{"class":666},[653,1903,1904,1906,1908,1910,1912,1914,1916],{"class":655,"line":847},[653,1905,799],{"class":666},[653,1907,683],{"class":670},[653,1909,686],{"class":666},[653,1911,690],{"class":689},[653,1913,693],{"class":666},[653,1915,683],{"class":670},[653,1917,674],{"class":666},[653,1919,1920,1922,1924,1926,1928,1930,1932],{"class":655,"line":853},[653,1921,799],{"class":666},[653,1923,705],{"class":670},[653,1925,686],{"class":666},[653,1927,583],{"class":689},[653,1929,693],{"class":666},[653,1931,705],{"class":670},[653,1933,674],{"class":666},[653,1935,1936,1938,1940,1942,1944,1946,1948],{"class":655,"line":862},[653,1937,799],{"class":666},[653,1939,84],{"class":670},[653,1941,686],{"class":666},[653,1943,727],{"class":689},[653,1945,693],{"class":666},[653,1947,84],{"class":670},[653,1949,674],{"class":666},[653,1951,1952,1954,1956],{"class":655,"line":880},[653,1953,835],{"class":666},[653,1955,671],{"class":670},[653,1957,674],{"class":666},[653,1959,1960],{"class":655,"line":898},[653,1961,660],{"emptyLinePlaceholder":659},[653,1963,1964,1966,1968,1970,1972,1974,1976],{"class":655,"line":907},[653,1965,680],{"class":666},[653,1967,705],{"class":670},[653,1969,686],{"class":666},[653,1971,1098],{"class":689},[653,1973,693],{"class":666},[653,1975,705],{"class":670},[653,1977,674],{"class":666},[653,1979,1980,1982,1984,1986,1988,1990,1992],{"class":655,"line":1107},[653,1981,680],{"class":666},[653,1983,1112],{"class":670},[653,1985,686],{"class":666},[653,1987,1098],{"class":689},[653,1989,693],{"class":666},[653,1991,1112],{"class":670},[653,1993,674],{"class":666},[653,1995,1996,1998,2000,2002,2004,2006,2008],{"class":655,"line":1125},[653,1997,680],{"class":666},[653,1999,1130],{"class":670},[653,2001,686],{"class":666},[653,2003,192],{"class":689},[653,2005,693],{"class":666},[653,2007,1130],{"class":670},[653,2009,674],{"class":666},[653,2011,2012],{"class":655,"line":1143},[653,2013,660],{"emptyLinePlaceholder":659},[653,2015,2016,2018,2020],{"class":655,"line":1148},[653,2017,680],{"class":666},[653,2019,1153],{"class":670},[653,2021,674],{"class":666},[653,2023,2024,2026,2028],{"class":655,"line":1158},[653,2025,799],{"class":666},[653,2027,777],{"class":670},[653,2029,674],{"class":666},[653,2031,2032],{"class":655,"line":1167},[653,2033,1170],{"class":784},[653,2035,2036,2038,2040],{"class":655,"line":1173},[653,2037,1176],{"class":666},[653,2039,792],{"class":670},[653,2041,674],{"class":666},[653,2043,2044,2046,2048,2050,2052,2054,2056],{"class":655,"line":1183},[653,2045,1186],{"class":666},[653,2047,683],{"class":670},[653,2049,686],{"class":666},[653,2051,806],{"class":689},[653,2053,693],{"class":666},[653,2055,683],{"class":670},[653,2057,674],{"class":666},[653,2059,2060,2062,2064,2066,2068,2070,2072],{"class":655,"line":1201},[653,2061,1186],{"class":666},[653,2063,705],{"class":670},[653,2065,686],{"class":666},[653,2067,823],{"class":689},[653,2069,693],{"class":666},[653,2071,705],{"class":670},[653,2073,674],{"class":666},[653,2075,2076,2078,2080],{"class":655,"line":1218},[653,2077,1221],{"class":666},[653,2079,792],{"class":670},[653,2081,674],{"class":666},[653,2083,2084],{"class":655,"line":1228},[653,2085,660],{"emptyLinePlaceholder":659},[653,2087,2088],{"class":655,"line":1233},[653,2089,1236],{"class":784},[653,2091,2092,2094,2096],{"class":655,"line":1239},[653,2093,1176],{"class":666},[653,2095,792],{"class":670},[653,2097,674],{"class":666},[653,2099,2100,2102,2104,2106,2108,2110,2112],{"class":655,"line":1248},[653,2101,1186],{"class":666},[653,2103,683],{"class":670},[653,2105,686],{"class":666},[653,2107,871],{"class":689},[653,2109,693],{"class":666},[653,2111,683],{"class":670},[653,2113,674],{"class":666},[653,2115,2116,2118,2120,2122,2124,2126,2128],{"class":655,"line":1265},[653,2117,1186],{"class":666},[653,2119,705],{"class":670},[653,2121,686],{"class":666},[653,2123,889],{"class":689},[653,2125,693],{"class":666},[653,2127,705],{"class":670},[653,2129,674],{"class":666},[653,2131,2132,2134,2136],{"class":655,"line":1282},[653,2133,1221],{"class":666},[653,2135,792],{"class":670},[653,2137,674],{"class":666},[653,2139,2140,2142,2144],{"class":655,"line":1291},[653,2141,1294],{"class":666},[653,2143,777],{"class":670},[653,2145,674],{"class":666},[653,2147,2148,2150,2152],{"class":655,"line":1301},[653,2149,835],{"class":666},[653,2151,1153],{"class":670},[653,2153,674],{"class":666},[653,2155,2156,2158,2160],{"class":655,"line":1310},[653,2157,693],{"class":666},[653,2159,934],{"class":670},[653,2161,674],{"class":666},[1318,2163,1320],{},{"title":649,"searchDepth":663,"depth":663,"links":2165},[2166,2167,2168,2169,2170],{"id":494,"depth":663,"text":495},{"id":511,"depth":663,"text":23},{"id":517,"depth":663,"text":518},{"id":583,"depth":663,"text":584},{"id":609,"depth":663,"text":610},{"head":2172,"readingTime":2175},{"meta":2173},[2174],{"name":1333,"content":1334},{"text":1336,"minutes":1337,"time":1338,"words":1339},{"title":181,"tags":2177},[189,15,190,191,192,193,194,31,195,196,197,198,199,200,201,202],{"title":181,"description":186},{"loc":182,"lastmod":1344,"changefreq":1345,"priority":1346},1782689022852]