[{"data":1,"prerenderedAt":1332},["ShallowReactive",2],{"navigation-docsEN":3,"navigation-blogEN":725,"docs-EN-\u002Fdocs\u002Fdigital-data-management\u002Fproduct-catalog":743,"docsNav-EN-\u002Fdocs":994,"docsSecNav-EN-\u002Fdocs\u002Fdigital-data-management\u002Fproduct-catalog":1194},[4],{"title":5,"path":6,"stem":7,"children":8},"Docs","\u002Fdocs","docs",[9,22,41,53,74,88,114,128,156,167,182,206,412,428,572,647,662,669],{"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":40},"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,39],"epcis","epcis-1-2","gs1-epcis-standard","supply-chain","traceability","data-sharing","tracking","tracing","visibility-events",[16,31,32,33,34,35,36,37,38,39],{"title":42,"path":43,"stem":44,"children":45,"description":47,"icon":48,"tags":52},"EPCIS","\u002Fdocs\u002Fepcis","docs\u002F02.epcis\u002Findex",[46],{"title":42,"path":43,"stem":44,"description":47,"icon":48,"tags":49},"Discover the specifics of EPCIS, how it works, and what OpenEPCIS is.","i-custom-open-epcis",[16,31,32,33,50,51,39],"iso-iec-19987","iso-iec-19988",[16,31,32,33,50,51,39],{"title":54,"path":55,"stem":56,"children":57,"description":59,"icon":60,"tags":73},"Format Converter","\u002Fdocs\u002Fformat-converter","docs\u002F03.format-converter\u002Findex",[58],{"title":54,"path":55,"stem":56,"description":59,"icon":60,"tags":61},"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,62,63,64,65,66,67,21,68,69,70,71,72],"json","json-ld","xml","events","format-converter","convert","convert-epcis-events","format","converter","epcis-tool","tools",[16,62,63,64,65,66,67,21,68,69,70,71,72],{"title":75,"path":76,"stem":77,"children":78,"description":80,"icon":81,"tags":87},"Version Converter","\u002Fdocs\u002Fversion-converter","docs\u002F04.version-converter\u002Findex",[79],{"title":75,"path":76,"stem":77,"description":80,"icon":81,"tags":82},"OpenEPCIS solution to convert EPCIS XML document from version 1.2 to 2.0 and vice versa.","heroicons:arrows-up-down",[16,32,62,63,64,65,83,67,21,84,85,86,70,71,72],"version-converter","convert-epcis-version","version","epcis-version",[16,32,62,63,64,65,83,67,21,84,85,86,70,71,72],{"title":89,"path":90,"stem":91,"children":92,"description":94,"icon":95,"tags":113},"Identifier Converter","\u002Fdocs\u002Fidentifier-converter","docs\u002F05.identifier-converter\u002Findex",[93],{"title":89,"path":90,"stem":91,"description":94,"icon":95,"tags":96},"OpenEPCIS solution to convert EPCIS instance or class identifier from URN to digital link WebURI and vice versa.","i-heroicons-link",[16,97,98,99,100,101,21,102,103,104,105,106,107,108,109,110,111,112],"gs1-digital-link","urn-format","epc-uri","epc","weburi","gs1-standard","gs1","sscc","gtin","giai","grai","gdti","lgtin","sgtin","gln","gcp",[16,97,98,99,100,101,21,102,103,104,105,106,107,108,109,110,111,112],{"title":115,"path":116,"stem":117,"children":118,"description":120,"icon":121,"tags":127},"Event Hash Generator","\u002Fdocs\u002Fevent-hash-generator","docs\u002F06.event-hash-generator\u002Findex",[119],{"title":115,"path":116,"stem":117,"description":120,"icon":121,"tags":122},"OpenEPCIS solution to generate unique event hash for EPCIS XML or JSON\u002FJSON-LD document or event list.","heroicons-outline:finger-print",[16,123,62,63,64,65,21,124,125,126,71,72],"event-hash","event","hash","generator",[16,123,62,63,64,65,21,124,125,126,71,72],{"title":129,"path":130,"stem":131,"children":132,"description":134,"icon":135,"tags":155},"Test Data Generator","\u002Fdocs\u002Ftest-data-generator","docs\u002F07.test-data-generator\u002Findex",[133,137],{"title":129,"path":130,"stem":131,"description":134,"icon":135,"tags":136},"OpenEPCIS solution to generate a large set of EPCIS test data events for all use cases\u002Fsupply chain requirements.","heroicons-outline:cog",[16,123,62,63,64,65,21,124,125,126,71,72],{"title":138,"path":139,"stem":140,"children":141,"description":143,"icon":144,"tags":154},"EPCIS Implementation Guidelines","\u002Fdocs\u002Ftest-data-generator\u002Fgs1-epcis-implementation-guidelines","docs\u002F07.test-data-generator\u002F01.gs1-epcis-implementation-guidelines\u002Findex",[142],{"title":138,"path":139,"stem":140,"description":143,"icon":144,"tags":145},"EPCIS event examples from the GS1 EPCIS and CBV implementation guidelines, modeled with the OpenEPCIS Test Data Generator.","heroicons-outline:badge-check",[16,62,63,146,21,147,148,149,35,150,151,152,153],"testing","test-data-generator","design","design-template","process-automation","compliance","supply-chain-management","load-tests",[16,62,63,146,21,147,148,149,35,150,151,152,153],[16,123,62,63,64,65,21,124,125,126,71,72],{"title":157,"path":158,"stem":159,"children":160,"description":162,"icon":163,"tags":166},"Test Resource Management","\u002Fdocs\u002Ftest-resource-management","docs\u002F08.test-resource-management\u002Findex",[161],{"title":157,"path":158,"stem":159,"description":162,"icon":163,"tags":164},"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,62,63,146,21,165,35,150,151,152,153],"performance-tests",[16,62,63,146,21,165,35,150,151,152,153],{"title":168,"path":169,"stem":170,"children":171,"description":173,"icon":174,"tags":181},"Vocabulary Management","\u002Fdocs\u002Fvocabulary-management","docs\u002F09.vocabulary-management\u002Findex",[172],{"title":168,"path":169,"stem":170,"description":173,"icon":174,"tags":175},"Collection of standardized constants and strings for EPCIS event data.","heroicons-outline:book-open",[16,176,15,177,21,178,35,179,151,152,180],"constants","centralization","standardization","vocabulary","data-dictionary",[16,176,15,177,21,178,35,179,151,152,180],{"title":183,"path":184,"stem":185,"children":186,"description":188,"icon":189,"tags":205},"Dependency Management","\u002Fdocs\u002Fdependency-management","docs\u002F10.dependency-management\u002Findex",[187],{"title":183,"path":184,"stem":185,"description":188,"icon":189,"tags":190},"Centralized Maven Bill of Materials (BOM) for all the OpenEPCIS modules.","heroicons-outline:folder",[191,15,192,193,194,195,196,31,197,198,199,200,201,202,203,204],"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",[191,15,192,193,194,195,196,31,197,198,199,200,201,202,203,204],{"title":207,"path":208,"stem":209,"children":210,"description":212,"icon":213,"tags":411},"Digital Product Passport","\u002Fdocs\u002Fdigital-product-passport","docs\u002F11.digital-product-passport\u002Findex",[211,221,234,269,307,334,348,356,363,373,400],{"title":207,"path":208,"stem":209,"description":212,"icon":213,"tags":214},"Introduction to Digital Product Passport and how EPCIS enables product traceability for DPP compliance.","heroicons-outline:identification",[215,216,217,31,218,35,219,220],"digital-product-passport","dpp","eu-regulation","sustainability","circular-economy","gs1-web-vocabulary",{"title":222,"path":223,"stem":224,"children":225,"description":227,"icon":228,"tags":233},"ESPR Framework","\u002Fdocs\u002Fdigital-product-passport\u002Fespr-framework","docs\u002F11.digital-product-passport\u002F00.espr-framework\u002Findex",[226],{"title":222,"path":223,"stem":224,"description":227,"icon":228,"tags":229},"Guide to the EU Ecodesign for Sustainable Products Regulation (ESPR) 2024\u002F1781 and how OpenEPCIS supports Digital Product Passport requirements.","heroicons-outline:shield-check",[230,231,218,216,217,232],"espr","ecodesign","en-standards",[230,231,218,216,217,232],{"title":235,"path":236,"stem":237,"children":238,"description":240,"icon":241,"tags":268},"Battery DPP","\u002Fdocs\u002Fdigital-product-passport\u002Fbattery-dpp","docs\u002F11.digital-product-passport\u002F01.battery-dpp\u002Findex",[239,246,252,259],{"title":235,"path":236,"stem":237,"description":240,"icon":241,"tags":242},"GS1-native implementation of EU Battery Regulation 2023\u002F1542 Digital Product Passport using EPCIS 2.0","heroicons:battery-100",[243,244,216,31,103,35,218,245],"battery","eu-battery-regulation","due-diligence",{"title":247,"path":248,"stem":249,"description":250,"icon":174,"tags":251},"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",[243,244,216,31,220],{"title":253,"path":254,"stem":255,"description":256,"icon":257,"tags":258},"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",[243,31,65,39,216],{"title":260,"path":261,"stem":262,"description":263,"icon":13,"tags":264},"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",[243,265,266,63,267,245],"examples","annex-xiii","carbon-footprint",[243,244,216,31,103,35,218,245],{"title":270,"path":271,"stem":272,"children":273,"description":275,"icon":276,"tags":306},"EUDR","\u002Fdocs\u002Fdigital-product-passport\u002Feudr","docs\u002F11.digital-product-passport\u002F02.eudr\u002Findex",[274,281,287,292,300],{"title":270,"path":271,"stem":272,"description":275,"icon":276,"tags":277},"GS1-native implementation of EU Deforestation Regulation 2023\u002F1115 compliance using EPCIS 2.0","heroicons-outline:globe-europe-africa",[278,279,280,216,31,103,35,218,245],"eudr","deforestation","timber",{"title":247,"path":282,"stem":283,"description":284,"icon":285,"tags":286},"\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,[278,279,280,216,31,245],{"title":253,"path":288,"stem":289,"description":290,"icon":285,"tags":291},"\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",[278,31,65,39,216],{"title":293,"path":294,"stem":295,"description":296,"icon":285,"tags":297},"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",[278,97,298,299,216,245],"resolver","linkset",{"title":260,"path":301,"stem":302,"description":303,"icon":13,"tags":304},"\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",[278,265,280,245,305],"geolocation",[278,279,280,216,31,103,35,218,245],{"title":308,"path":309,"stem":310,"children":311,"description":313,"icon":314,"tags":333},"Textile DPP","\u002Fdocs\u002Fdigital-product-passport\u002Ftextile","docs\u002F11.digital-product-passport\u002F03.textile\u002Findex",[312,320,327],{"title":308,"path":309,"stem":310,"description":313,"icon":314,"tags":315},"Digital Product Passport vocabulary for textiles and apparel under the EU Sustainable Textiles Strategy and ESPR 2024\u002F1781.","heroicons-outline:sparkles",[316,317,318,216,218,319],"textile","apparel","footwear","fibre-composition",{"title":247,"path":321,"stem":322,"description":323,"icon":324,"tags":325},"\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",[316,317,318,326],"implementation",{"title":260,"path":328,"stem":329,"description":330,"icon":13,"tags":331},"\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",[316,265,317,318,332,63],"fiber-composition",[316,317,318,216,218,319],{"title":335,"path":336,"stem":337,"children":338,"description":340,"icon":60,"tags":347},"Interoperability","\u002Fdocs\u002Fdigital-product-passport\u002Finteroperability","docs\u002F11.digital-product-passport\u002F04.interoperability\u002Findex",[339],{"title":335,"path":336,"stem":337,"description":340,"icon":60,"tags":341},"Guide to OpenEPCIS DPP interoperability with GS1, UNTP, CIRPASS2, and ESPR standards.",[342,343,103,344,230,345,346,220],"interoperability","untp","cirpass2","standards","alignment",[342,343,103,344,230,345,346,220],{"title":349,"path":350,"stem":351,"description":352,"icon":29,"tags":353},"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",[354,97,299,355,298],"walkthrough","content-negotiation",{"title":357,"path":358,"stem":359,"description":360,"icon":361,"tags":362},"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",[298,97,299],{"title":364,"path":365,"stem":366,"description":367,"icon":368,"tags":369},"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",[370,371,372,344],"example","components","aggregation",{"title":374,"path":375,"stem":376,"children":377,"description":379,"icon":380,"tags":399},"Electronics DPP","\u002Fdocs\u002Fdigital-product-passport\u002Felectronics","docs\u002F11.digital-product-passport\u002F08.electronics\u002Findex",[378,387,392],{"title":374,"path":375,"stem":376,"description":379,"icon":380,"tags":381},"Digital Product Passport vocabulary for electronic devices under ESPR, the French Repairability Index, EU Right to Repair and WEEE.","heroicons-outline:device-phone-mobile",[382,383,384,385,386],"electronics","repairability","weee","energy-label","right-to-repair",{"title":247,"path":388,"stem":389,"description":390,"icon":174,"tags":391},"\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",[382,326,383,384,385],{"title":260,"path":393,"stem":394,"description":395,"icon":13,"tags":396},"\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",[382,265,397,398,63],"smartphone","laptop",[382,383,384,385,386],{"title":401,"path":402,"stem":403,"description":404,"icon":228,"tags":405},"Signed Passports","\u002Fdocs\u002Fdigital-product-passport\u002Fsigned-passports","docs\u002F11.digital-product-passport\u002F09.signed-passports","How OpenEPCIS signs product passports so that software nobody here wrote can verify them — W3C Data Integrity, did:web, and the canonicalization layer that decides whether a signature travels.",[406,407,408,409,342,410],"verifiable-credentials","data-integrity","did-web","canonicalization","trust",[215,216,217,31,218,35,219,220],{"title":413,"path":414,"stem":415,"children":416,"description":418,"icon":419,"tags":427},"Profile Checker","\u002Fdocs\u002Fprofile-checker","docs\u002F12.profile-checker\u002Findex",[417],{"title":413,"path":414,"stem":415,"description":418,"icon":419,"tags":420},"OpenEPCIS tool to define EPCIS event profiles as JSON Schema and validate EPCIS documents or events against them.","heroicons-outline:clipboard-document-check",[16,421,422,423,424,425,426,21,72],"event-profile","profile-checker","json-schema","validation","data-quality","conformance",[16,421,422,423,424,425,426,21,72],{"title":429,"path":430,"stem":431,"children":432,"description":434,"icon":435,"tags":571},"Digital Data Management","\u002Fdocs\u002Fdigital-data-management","docs\u002F13.digital-data-management\u002Findex",[433,440,452,462,473,484,493,505,515,526,535,547,559],{"title":429,"path":430,"stem":431,"description":434,"icon":435,"tags":436},"End-user guide to OpenEPCIS Digital Data Management — curate GS1 master data, publish digital product passports, manage resolver links and analyze scans.","heroicons-outline:circle-stack",[437,438,215,97,439,298],"ddm","master-data","catalog",{"title":441,"path":442,"stem":443,"description":444,"icon":445,"tags":446},"Getting Started","\u002Fdocs\u002Fdigital-data-management\u002Fgetting-started","docs\u002F13.digital-data-management\u002F01.getting-started","Signing in to Digital Data Management, finding your way around the catalog workspace, and setting up your profile and integration tokens.","heroicons-outline:rocket-launch",[437,447,448,449,450,451],"login","keycloak","workspace","roles","profile",{"title":453,"path":454,"stem":455,"description":456,"icon":457,"tags":458},"Products","\u002Fdocs\u002Fdigital-data-management\u002Fproduct-catalog","docs\u002F13.digital-data-management\u002F02.product-catalog","The DDM product catalog — creating products from a passport type, importing in bulk, and keeping the catalog tidy.","heroicons-outline:cube",[437,459,105,460,461,439],"products","passport-type","bulk-import",{"title":463,"path":464,"stem":465,"description":466,"icon":467,"tags":468},"Passport Editor","\u002Fdocs\u002Fdigital-data-management\u002Fpassport-editor","docs\u002F13.digital-data-management\u002F03.passport-editor","One editor for products, organizations and places — ontology-generated forms, rich field widgets, GS1 validation, access levels and full version history.","heroicons-outline:pencil-square",[437,469,63,424,470,471,472],"editor","gpc","access-level","versions",{"title":474,"path":475,"stem":476,"description":477,"icon":478,"tags":479},"Organizations & Places","\u002Fdocs\u002Fdigital-data-management\u002Forganizations-and-places","docs\u002F13.digital-data-management\u002F04.organizations-and-places","GLN-keyed party and location records in DDM — organization roles, primary locations, and the public GLN information pages.","heroicons-outline:building-office-2",[437,480,481,111,482,483],"organizations","places","party","location",{"title":485,"path":486,"stem":487,"description":488,"icon":489,"tags":490},"Linksets","\u002Fdocs\u002Fdigital-data-management\u002Flinksets","docs\u002F13.digital-data-management\u002F05.linksets","Managing the resolver links behind every scan — the linkset explorer, the ownership model, and templated links that adapt to the scanned code.","heroicons-outline:link",[437,299,97,298,491,492],"linktype","templated-links",{"title":494,"path":495,"stem":496,"description":497,"icon":498,"tags":499},"Public Passports","\u002Fdocs\u002Fdigital-data-management\u002Fpublic-passports","docs\u002F13.digital-data-management\u002F06.public-passports","What consumers see — the demo gallery, the passport viewer at model, lot and item level, and template-driven rendering.","heroicons-outline:qr-code",[437,500,501,502,503,504],"passport","qr-code","consumer","templates","digital-link",{"title":506,"path":507,"stem":508,"description":509,"icon":419,"tags":510},"Passport Templates","\u002Fdocs\u002Fdigital-data-management\u002Fpassport-templates","docs\u002F13.digital-data-management\u002F07.passport-templates","What each passport type asks for — field obligations, hidden fields and creation defaults, layered from shipped defaults to deployment and tenant overrides.",[437,503,511,512,513,514],"requirements","obligations","creation-defaults","dpp-ready",{"title":516,"path":517,"stem":518,"description":519,"icon":520,"tags":521},"Field Access","\u002Fdocs\u002Fdigital-data-management\u002Ffield-access","docs\u002F13.digital-data-management\u002F08.field-access","Deciding which data fields consumers, operators and authorities can see — tier by tier, with persona preview and a reviewer workflow.","heroicons-outline:lock-closed",[437,522,523,230,524,525],"field-access","access-tiers","governance","skos",{"title":527,"path":528,"stem":529,"description":530,"icon":29,"tags":531},"Resolver Domains","\u002Fdocs\u002Fdigital-data-management\u002Fresolver-domains","docs\u002F13.digital-data-management\u002F09.resolver-domains","Serving GS1 Digital Links from your own hostname — CNAME setup, verification, and test prefixes to try it without a GS1 license.",[437,298,532,533,534,112],"custom-domain","cname","dns",{"title":536,"path":537,"stem":538,"description":539,"icon":540,"tags":541},"GS1 Sync","\u002Fdocs\u002Fdigital-data-management\u002Fgs1-sync","docs\u002F13.digital-data-management\u002F10.gs1-sync","Publishing your catalog to GS1 Germany — service tokens, licensed prefixes, the key pool, Verified by GS1, and the per-record Sync tab.","heroicons-outline:arrow-path",[437,542,543,544,545,546],"gs1-germany","sync","service-token","key-pool","verified-by-gs1",{"title":548,"path":549,"stem":550,"description":551,"icon":552,"tags":553},"Scan Analytics","\u002Fdocs\u002Fdigital-data-management\u002Fscan-analytics","docs\u002F13.digital-data-management\u002F11.scan-analytics","What only a resolver can know — anonymous scan statistics, demand insights, and a live privacy report that shows exactly what is and is not collected.","heroicons-outline:chart-bar",[437,554,555,556,557,558],"scans","analytics","privacy","k-anonymity","insights",{"title":560,"path":561,"stem":562,"description":563,"icon":564,"tags":565},"Integration Tokens","\u002Fdocs\u002Fdigital-data-management\u002Fconnector-tokens","docs\u002F13.digital-data-management\u002F12.connector-tokens","How a machine gets its own long-lived credential for your catalog — issuing an offline token, naming it, seeing what it did, and revoking it when the system it belonged to is retired.","heroicons-outline:key",[437,566,567,568,569,570,448],"integration","offline-token","connector","erp","pim",[437,438,215,97,439,298],{"title":573,"path":574,"stem":575,"children":576,"description":578,"icon":579},"OpenEPCIS Overview","\u002Fdocs\u002Fplatform-overview","docs\u002F14.platform-overview\u002Findex",[577,580,586,592],{"title":573,"path":574,"stem":575,"description":578,"icon":579},"A GS1-conformant supply-chain data platform — Resolver, Masterdata, EPCIS Events — in open source and business editions.","lucide:layout-dashboard",{"title":581,"path":582,"stem":583,"description":584,"icon":585},"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":587,"path":588,"stem":589,"description":590,"icon":591},"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":593,"path":594,"stem":595,"children":596,"description":598,"icon":599},"Modules","\u002Fdocs\u002Fplatform-overview\u002Fmodules","docs\u002F14.platform-overview\u002Fmodules\u002Findex",[597,600,607,615,623,629,635,641],{"title":593,"path":594,"stem":595,"description":598,"icon":599},"Seven module families that organise the OpenEPCIS platform — Resolver, Masterdata, EPCIS Events, Formats & Validation, Integration, Testdata, Platform.","lucide:layers",{"title":601,"path":602,"stem":603,"description":604,"icon":605,"tags":606},"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",[298,97,103,299,220],{"title":608,"path":609,"stem":610,"description":611,"icon":612,"tags":613},"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",[220,614,103,298,63],"masterdata",{"title":616,"path":617,"stem":618,"description":619,"icon":620,"tags":621},"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",[39,16,31,65,622,35],"subscriptions",{"title":624,"path":625,"stem":626,"description":627,"icon":628},"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":630,"path":631,"stem":632,"description":633,"icon":634},"Integration & Gateways","\u002Fdocs\u002Fplatform-overview\u002Fmodules\u002Fintegration","docs\u002F14.platform-overview\u002Fmodules\u002F05.integration","AS2 gateway for EDI partners, cloud storage, file service, natural-language AI assistant.","lucide:plug",{"title":636,"path":637,"stem":638,"description":639,"icon":640},"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":642,"path":643,"stem":644,"description":645,"icon":646},"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":648,"path":649,"stem":650,"children":651,"description":653,"icon":29,"tags":661},"Vision","\u002Fdocs\u002Fvision","docs\u002F15.vision\u002Findex",[652],{"title":648,"path":649,"stem":650,"description":653,"icon":29,"tags":654},"How UNTP, DIDs, Verifiable Credentials, and EPCIS work together to create unified product identity infrastructure for the connected supply chain.",[655,656,657,406,343,658,659,660],"vision","digital-twin","did","rfid","industry-4-0","web-3-0",[655,656,657,406,343,658,659,660],{"title":663,"path":664,"stem":665,"children":666,"description":668,"icon":634},"API Reference","\u002Fdocs\u002Fapi-reference","docs\u002F16.api-reference\u002Findex",[667],{"title":663,"path":664,"stem":665,"description":668,"icon":634},"Interactive OpenAPI references for the GS1 Digital Link Resolver and the EPCIS 2.0 REST bindings.",{"title":670,"path":671,"stem":672,"children":673,"description":675,"icon":540,"tags":724},"Connectors","\u002Fdocs\u002Fconnectors","docs\u002F16.connectors\u002Findex",[674,682,692,701,707,717],{"title":670,"path":671,"stem":672,"description":675,"icon":540,"tags":676},"How the master data you already keep in a PIM or an ERP becomes two passport forms, a stream of EPCIS events and a resolvable GS1 Digital Link — and how far each connector has come.",[677,678,679,680,681,215,31,298],"connectors","unopim","odoo","erpnext","metasfresh",{"title":683,"path":684,"stem":685,"description":686,"icon":60,"tags":687},"How It Works","\u002Fdocs\u002Fconnectors\u002Fhow-a-connector-works","docs\u002F16.connectors\u002F01.how-a-connector-works","The mechanics of a connector — the outbound half that polls, maps and publishes, the inbound bridge that answers identity questions, and the design rules the code holds you to.",[677,543,688,689,690,691],"mapping","bridge","webhook","idempotency",{"title":693,"path":694,"stem":695,"description":696,"icon":697,"tags":698},"Identifiers","\u002Fdocs\u002Fconnectors\u002Fidentifiers-gtin-and-sku","docs\u002F16.connectors\u002F02.identifiers-gtin-and-sku","One product needs exactly one GS1 identifier — the GTIN. Where the connector finds it, why your SKU is a different thing, and how batch, serial and logistics-unit levels build on top.","heroicons-outline:hashtag",[677,105,699,109,110,104,700],"sku","check-digit",{"title":702,"path":703,"stem":704,"description":705,"icon":540,"tags":706},"UnoPim","\u002Fdocs\u002Fconnectors\u002Funopim","docs\u002F16.connectors\u002F03.unopim","The whole UnoPim route — what has to exist in the PIM, how the connection is configured, what the first sync publishes, and where the data surfaces in DDM and on the published passport page.",[677,678,570,105,688,690,500],{"title":708,"path":709,"stem":710,"description":711,"icon":228,"tags":712},"Events & Credentials","\u002Fdocs\u002Fconnectors\u002Fevents-credentials-and-representations","docs\u002F16.connectors\u002F04.events-credentials-and-representations","What happens after a record is published — how a movement in your source system becomes an EPCIS event, where UNTP answers the same question differently, and how a passport gains a signed, selectively disclosed representation.",[677,31,65,713,714,715,406,343,523,716],"event-types","transformation","error-declaration","representations",{"title":718,"path":719,"stem":720,"description":721,"icon":457,"tags":722},"Odoo walkthrough","\u002Fdocs\u002Fconnectors\u002Fodoo","docs\u002F16.connectors\u002F05.odoo","One warehouse day walked through end to end — goods in, packed onto a pallet, shipped, part of it back, the rest ground into another article, and one report taken back — with the screen and the EPCIS event it produces side by side.",[677,679,31,65,104,372,714,723],"tutorial",[677,678,679,680,681,215,31,298],[726],{"title":727,"path":728,"stem":729,"children":730,"page":742},"Blog","\u002Fblog","blog",[731,737],{"title":732,"path":733,"stem":734,"description":735,"icon":736},"The Web-based DPP doesn't need new infrastructure","\u002Fblog\u002Fdpp-stack-for-agents","blog\u002F01.dpp-stack-for-agents","Three GS1 standards — Digital Link, Web Vocabulary, Conformant Resolver — plus EPCIS 2.0 already cover the agent-facing layer of the Digital Product Passport.","heroicons-outline:newspaper",{"title":738,"path":739,"stem":740,"description":741,"icon":736},"Fascinating in Theory. It Just Doesn't Work in Practice.","\u002Fblog\u002Fblockchain-traceability","blog\u002F02.blockchain-traceability","Why blockchain is the wrong answer to traceability, and why it refuses to die anyway.",false,{"doc":744,"usedFallback":742},{"id":745,"title":746,"body":747,"description":456,"extension":973,"icon":457,"lastUpdated":974,"meta":975,"navigation":986,"path":454,"seo":988,"sitemap":989,"stem":455,"__hash__":993},"docsEN\u002Fdocs\u002F13.digital-data-management\u002F02.product-catalog.md","Managing Products",{"type":748,"value":749,"toc":962},"minimark",[750,755,772,775,779,789,796,828,836,843,849,854,859,862,865,881,887,898,901,907,913,924,935,938,942,954],[751,752,754],"h2",{"id":753},"the-product-list","The product list",[756,757,758,761,762,767,768,771],"p",{},[759,760,453],"strong",{}," lists every GTIN-keyed record in your tenant. Each row shows the product's thumbnail, name and GTIN, plus whichever columns you have ",[763,764,766],"a",{"href":765},"\u002Fdocs\u002Fdigital-data-management\u002Fgetting-started#finding-things","picked"," — brand, GPC code, access tier, or any other vocabulary term your records carry. Clicking a row opens the record in the ",[763,769,770],{"href":464},"passport editor","; the trash icon deletes it, after a confirmation that names exactly what will be removed.",[756,773,774],{},"So far, so much like any catalog application. What is different about DDM's catalog begins the moment you create a record.",[751,776,778],{"id":777},"creating-a-product","Creating a product",[756,780,781,784,785,788],{},[759,782,783],{},"Add Product"," opens a fresh passport, and the first thing DDM asks is not the product's name — it is the ",[759,786,787],{},"passport type",".",[756,790,791],{},[792,793],"img",{"alt":794,"src":795},"The passport type picker | Figure 1: Creating a product starts with choosing a passport type","\u002Fimg\u002F13.Digital-Data-Management\u002Fproduct-type-picker.png",[756,797,798,799,802,803,806,807,810,811,810,814,810,817,810,820,823,824,827],{},"Why does the type come first? Because in DDM, the form you fill in is not a fixed screen someone designed once. It is ",[759,800,801],{},"generated from a vocabulary"," — a formal, machine-readable description of which fields a product of this kind has, what each field means, and what values it may hold. The passport type selects that vocabulary. Choose ",[759,804,805],{},"Product"," and you get the generic GS1 Web Vocabulary profile, the right choice when no product-group regulation applies. Choose ",[759,808,809],{},"Battery",", ",[759,812,813],{},"Detergent Product",[759,815,816],{},"Electronic Device",[759,818,819],{},"Iron & Steel Product",[759,821,822],{},"Packaging (PPWR)"," or one of the three ",[759,825,826],{},"Textile"," types, and you get a form that already knows its regulation: the EU Battery Regulation's mandatory fields are marked mandatory, the recommended ones recommended, each traceable to the clause that demands it.",[756,829,830,831,835],{},"This is worth pausing on, because it explains a lot of what follows in this guide. Since the form is generated, it is always in step with the vocabulary — when the regulation profile gains a field, every deployment gains that field without anyone redesigning a screen. And since every field ",[832,833,834],"em",{},"is"," a vocabulary term, the data you enter is born interoperable: what you store is standard GS1 Web Vocabulary JSON-LD that any other compliant system can read.",[756,837,838,839,842],{},"Choose a type, press ",[759,840,841],{},"Generate form",", and the sections of the chosen vocabulary appear — for a battery, straight from the EU Battery Regulation profile:",[756,844,845],{},[792,846],{"alt":847,"src":848},"A new battery passport, freshly generated | Figure 2: The generated form for a new battery product — every field a vocabulary term","\u002Fimg\u002F13.Digital-Data-Management\u002Fproduct-new-battery.png",[756,850,851,852,788],{},"From here you continue in the ",[763,853,469],{"href":464},[855,856,858],"h3",{"id":857},"the-gtin-and-why-ddm-is-strict-about-it","The GTIN, and why DDM is strict about it",[756,860,861],{},"The GTIN you enter becomes the product's identity — it appears in the QR code, in every link, in the GS1 network. A mistake here is expensive, so DDM checks twice.",[756,863,864],{},"The first check is arithmetic: a GTIN's last digit is a check digit computed from the others, which is how a typo announces itself. DDM validates length and check digit as you type and, on a mismatch, tells you which digit it expected.",[756,866,867,868,871,872,875,876,880],{},"The second check is against reality: DDM asks ",[759,869,870],{},"Verified by GS1",", the global GS1 registry, whether this GTIN is actually registered and to whom. A verified GTIN shows its licensee right in the form — and if that licensee is the brand owner, one click adopts it into the record. An ",[832,873,874],{},"unverified"," GTIN blocks creation, and the reason is practical, not bureaucratic: a passport published under a GTIN that GS1 does not know is a passport the world cannot reliably find. The one exception is the GS1 test range — keys beginning with 952 are demo keys by definition, get a friendly note instead of a verification, and are how you experiment freely (see ",[763,877,879],{"href":878},"\u002Fdocs\u002Fdigital-data-management\u002Fresolver-domains#test-prefixes-952-range","test prefixes",").",[756,882,883],{},[792,884],{"alt":885,"src":886},"Verified by GS1 during creation | Figure 3: The GTIN checks out — the licensee appears inline and can be adopted as brand owner","\u002Fimg\u002F13.Digital-Data-Management\u002Fverify-gs1.png",[756,888,889,890,893,894,788],{},"If you do not have a GTIN at hand at all, the ",[759,891,892],{},"Draw"," button next to the field takes the next free number from your licensed GS1 company prefix — the mechanics of that pool are explained in ",[763,895,897],{"href":896},"\u002Fdocs\u002Fdigital-data-management\u002Fgs1-sync#the-gs1-company-prefix-pool","GS1 Germany Sync",[751,899,900],{"id":461},"Bulk import",[756,902,903,904,906],{},"Nobody types a catalog of five thousand products into a form. The upload icon next to ",[759,905,783],{}," imports records in bulk — for products, organizations and places alike.",[756,908,909],{},[792,910],{"alt":911,"src":912},"The bulk import dialog | Figure 4: Bulk import — CSV or JSON-LD, with a preview of the first rows before anything is written","\u002Fimg\u002F13.Digital-Data-Management\u002Fbulk-import.png",[756,914,915,916,919,920,923],{},"Two formats are accepted, and they serve different situations. ",[759,917,918],{},"CSV"," is for data coming out of spreadsheets and legacy systems — download the template for your record kind to see the expected columns. ",[759,921,922],{},"JSON-LD"," is for data that already speaks GS1 Web Vocabulary, for example an export from another passport system; it arrives with its full structure intact, nothing flattened into columns.",[756,925,926,927,930,931,934],{},"Before anything is written, the dialog shows a ",[759,928,929],{},"preview of the first five rows exactly as DDM parsed them",". This is the moment to catch a mis-mapped column — much cheaper here than after five thousand records. ",[759,932,933],{},"Confirm & Start Import"," then hands the file to a background job; you can keep working, and imported records appear in the list as they are written.",[756,936,937],{},"Imported rows pass the same validation as records saved by hand. A row with a broken check digit or a malformed field is rejected individually — it does not take the rest of the file down with it.",[751,939,941],{"id":940},"deleting-and-what-deletion-touches","Deleting, and what deletion touches",[756,943,944,945,948,949,953],{},"Deleting a product removes the catalog record, and with it everything the system derived from that record — most notably the resolver links that were generated from its data. Links you registered ",[832,946,947],{},"by hand"," on the same anchor survive, because they were never derived from the record in the first place; the ",[763,950,952],{"href":951},"\u002Fdocs\u002Fdigital-data-management\u002Flinksets#who-owns-a-link","linkset ownership model"," explains this boundary.",[756,955,956,957,961],{},"What deletion never touches is history: every save in a record's life created a version, and the ",[763,958,960],{"href":959},"\u002Fdocs\u002Fdigital-data-management\u002Fpassport-editor#versions--change-history","Versions tab"," keeps the record of what was published, by whom, and when.",{"title":963,"searchDepth":964,"depth":964,"links":965},"",2,[966,967,971,972],{"id":753,"depth":964,"text":754},{"id":777,"depth":964,"text":778,"children":968},[969],{"id":857,"depth":970,"text":858},3,{"id":461,"depth":964,"text":900},{"id":940,"depth":964,"text":941},"md","2026-08-21T00:00:00.000Z",{"head":976,"readingTime":981},{"meta":977},[978],{"name":979,"content":980},"keywords","product catalog, GTIN, create product, passport type, bulk import, CSV, JSON-LD, GS1 master data",{"text":982,"minutes":983,"time":984,"words":985},"5 min read",4.28,256800,856,{"title":453,"tags":987},[437,459,105,460,461,439],{"title":746,"description":456},{"loc":454,"lastmod":990,"changefreq":991,"priority":992},"2026-08-21","monthly",0.8,"RJ_Ih84ROWOQPjLQUKC4x2VY-BDUIxpyr6Bc0NSUHxY",[995],{"title":5,"path":6,"stem":7,"children":996},[997,999,1004,1009,1014,1019,1024,1029,1039,1044,1049,1054,1119,1124,1153,1171,1176,1179],{"title":10,"path":6,"stem":11,"description":12,"icon":13,"tags":998},[15,16,17,18,19,20,21],{"title":23,"path":24,"stem":25,"children":1000,"description":28,"icon":29,"tags":1003},[1001],{"title":23,"path":24,"stem":25,"description":28,"icon":29,"tags":1002},[16,31,32,33,34,35,36,37,38,39],[16,31,32,33,34,35,36,37,38,39],{"title":42,"path":43,"stem":44,"children":1005,"description":47,"icon":48,"tags":1008},[1006],{"title":42,"path":43,"stem":44,"description":47,"icon":48,"tags":1007},[16,31,32,33,50,51,39],[16,31,32,33,50,51,39],{"title":54,"path":55,"stem":56,"children":1010,"description":59,"icon":60,"tags":1013},[1011],{"title":54,"path":55,"stem":56,"description":59,"icon":60,"tags":1012},[16,62,63,64,65,66,67,21,68,69,70,71,72],[16,62,63,64,65,66,67,21,68,69,70,71,72],{"title":75,"path":76,"stem":77,"children":1015,"description":80,"icon":81,"tags":1018},[1016],{"title":75,"path":76,"stem":77,"description":80,"icon":81,"tags":1017},[16,32,62,63,64,65,83,67,21,84,85,86,70,71,72],[16,32,62,63,64,65,83,67,21,84,85,86,70,71,72],{"title":89,"path":90,"stem":91,"children":1020,"description":94,"icon":95,"tags":1023},[1021],{"title":89,"path":90,"stem":91,"description":94,"icon":95,"tags":1022},[16,97,98,99,100,101,21,102,103,104,105,106,107,108,109,110,111,112],[16,97,98,99,100,101,21,102,103,104,105,106,107,108,109,110,111,112],{"title":115,"path":116,"stem":117,"children":1025,"description":120,"icon":121,"tags":1028},[1026],{"title":115,"path":116,"stem":117,"description":120,"icon":121,"tags":1027},[16,123,62,63,64,65,21,124,125,126,71,72],[16,123,62,63,64,65,21,124,125,126,71,72],{"title":129,"path":130,"stem":131,"children":1030,"description":134,"icon":135,"tags":1038},[1031,1033],{"title":129,"path":130,"stem":131,"description":134,"icon":135,"tags":1032},[16,123,62,63,64,65,21,124,125,126,71,72],{"title":138,"path":139,"stem":140,"children":1034,"description":143,"icon":144,"tags":1037},[1035],{"title":138,"path":139,"stem":140,"description":143,"icon":144,"tags":1036},[16,62,63,146,21,147,148,149,35,150,151,152,153],[16,62,63,146,21,147,148,149,35,150,151,152,153],[16,123,62,63,64,65,21,124,125,126,71,72],{"title":157,"path":158,"stem":159,"children":1040,"description":162,"icon":163,"tags":1043},[1041],{"title":157,"path":158,"stem":159,"description":162,"icon":163,"tags":1042},[16,62,63,146,21,165,35,150,151,152,153],[16,62,63,146,21,165,35,150,151,152,153],{"title":168,"path":169,"stem":170,"children":1045,"description":173,"icon":174,"tags":1048},[1046],{"title":168,"path":169,"stem":170,"description":173,"icon":174,"tags":1047},[16,176,15,177,21,178,35,179,151,152,180],[16,176,15,177,21,178,35,179,151,152,180],{"title":183,"path":184,"stem":185,"children":1050,"description":188,"icon":189,"tags":1053},[1051],{"title":183,"path":184,"stem":185,"description":188,"icon":189,"tags":1052},[191,15,192,193,194,195,196,31,197,198,199,200,201,202,203,204],[191,15,192,193,194,195,196,31,197,198,199,200,201,202,203,204],{"title":207,"path":208,"stem":209,"children":1055,"description":212,"icon":213,"tags":1118},[1056,1058,1063,1074,1087,1096,1101,1103,1105,1107,1116],{"title":207,"path":208,"stem":209,"description":212,"icon":213,"tags":1057},[215,216,217,31,218,35,219,220],{"title":222,"path":223,"stem":224,"children":1059,"description":227,"icon":228,"tags":1062},[1060],{"title":222,"path":223,"stem":224,"description":227,"icon":228,"tags":1061},[230,231,218,216,217,232],[230,231,218,216,217,232],{"title":235,"path":236,"stem":237,"children":1064,"description":240,"icon":241,"tags":1073},[1065,1067,1069,1071],{"title":235,"path":236,"stem":237,"description":240,"icon":241,"tags":1066},[243,244,216,31,103,35,218,245],{"title":247,"path":248,"stem":249,"description":250,"icon":174,"tags":1068},[243,244,216,31,220],{"title":253,"path":254,"stem":255,"description":256,"icon":257,"tags":1070},[243,31,65,39,216],{"title":260,"path":261,"stem":262,"description":263,"icon":13,"tags":1072},[243,265,266,63,267,245],[243,244,216,31,103,35,218,245],{"title":270,"path":271,"stem":272,"children":1075,"description":275,"icon":276,"tags":1086},[1076,1078,1080,1082,1084],{"title":270,"path":271,"stem":272,"description":275,"icon":276,"tags":1077},[278,279,280,216,31,103,35,218,245],{"title":247,"path":282,"stem":283,"description":284,"icon":285,"tags":1079},[278,279,280,216,31,245],{"title":253,"path":288,"stem":289,"description":290,"icon":285,"tags":1081},[278,31,65,39,216],{"title":293,"path":294,"stem":295,"description":296,"icon":285,"tags":1083},[278,97,298,299,216,245],{"title":260,"path":301,"stem":302,"description":303,"icon":13,"tags":1085},[278,265,280,245,305],[278,279,280,216,31,103,35,218,245],{"title":308,"path":309,"stem":310,"children":1088,"description":313,"icon":314,"tags":1095},[1089,1091,1093],{"title":308,"path":309,"stem":310,"description":313,"icon":314,"tags":1090},[316,317,318,216,218,319],{"title":247,"path":321,"stem":322,"description":323,"icon":324,"tags":1092},[316,317,318,326],{"title":260,"path":328,"stem":329,"description":330,"icon":13,"tags":1094},[316,265,317,318,332,63],[316,317,318,216,218,319],{"title":335,"path":336,"stem":337,"children":1097,"description":340,"icon":60,"tags":1100},[1098],{"title":335,"path":336,"stem":337,"description":340,"icon":60,"tags":1099},[342,343,103,344,230,345,346,220],[342,343,103,344,230,345,346,220],{"title":349,"path":350,"stem":351,"description":352,"icon":29,"tags":1102},[354,97,299,355,298],{"title":357,"path":358,"stem":359,"description":360,"icon":361,"tags":1104},[298,97,299],{"title":364,"path":365,"stem":366,"description":367,"icon":368,"tags":1106},[370,371,372,344],{"title":374,"path":375,"stem":376,"children":1108,"description":379,"icon":380,"tags":1115},[1109,1111,1113],{"title":374,"path":375,"stem":376,"description":379,"icon":380,"tags":1110},[382,383,384,385,386],{"title":247,"path":388,"stem":389,"description":390,"icon":174,"tags":1112},[382,326,383,384,385],{"title":260,"path":393,"stem":394,"description":395,"icon":13,"tags":1114},[382,265,397,398,63],[382,383,384,385,386],{"title":401,"path":402,"stem":403,"description":404,"icon":228,"tags":1117},[406,407,408,409,342,410],[215,216,217,31,218,35,219,220],{"title":413,"path":414,"stem":415,"children":1120,"description":418,"icon":419,"tags":1123},[1121],{"title":413,"path":414,"stem":415,"description":418,"icon":419,"tags":1122},[16,421,422,423,424,425,426,21,72],[16,421,422,423,424,425,426,21,72],{"title":429,"path":430,"stem":431,"children":1125,"description":434,"icon":435,"tags":1152},[1126,1128,1130,1132,1134,1136,1138,1140,1142,1144,1146,1148,1150],{"title":429,"path":430,"stem":431,"description":434,"icon":435,"tags":1127},[437,438,215,97,439,298],{"title":441,"path":442,"stem":443,"description":444,"icon":445,"tags":1129},[437,447,448,449,450,451],{"title":453,"path":454,"stem":455,"description":456,"icon":457,"tags":1131},[437,459,105,460,461,439],{"title":463,"path":464,"stem":465,"description":466,"icon":467,"tags":1133},[437,469,63,424,470,471,472],{"title":474,"path":475,"stem":476,"description":477,"icon":478,"tags":1135},[437,480,481,111,482,483],{"title":485,"path":486,"stem":487,"description":488,"icon":489,"tags":1137},[437,299,97,298,491,492],{"title":494,"path":495,"stem":496,"description":497,"icon":498,"tags":1139},[437,500,501,502,503,504],{"title":506,"path":507,"stem":508,"description":509,"icon":419,"tags":1141},[437,503,511,512,513,514],{"title":516,"path":517,"stem":518,"description":519,"icon":520,"tags":1143},[437,522,523,230,524,525],{"title":527,"path":528,"stem":529,"description":530,"icon":29,"tags":1145},[437,298,532,533,534,112],{"title":536,"path":537,"stem":538,"description":539,"icon":540,"tags":1147},[437,542,543,544,545,546],{"title":548,"path":549,"stem":550,"description":551,"icon":552,"tags":1149},[437,554,555,556,557,558],{"title":560,"path":561,"stem":562,"description":563,"icon":564,"tags":1151},[437,566,567,568,569,570,448],[437,438,215,97,439,298],{"title":573,"path":574,"stem":575,"children":1154,"description":578,"icon":579},[1155,1156,1157,1158],{"title":573,"path":574,"stem":575,"description":578,"icon":579},{"title":581,"path":582,"stem":583,"description":584,"icon":585},{"title":587,"path":588,"stem":589,"description":590,"icon":591},{"title":593,"path":594,"stem":595,"children":1159,"description":598,"icon":599},[1160,1161,1163,1165,1167,1168,1169,1170],{"title":593,"path":594,"stem":595,"description":598,"icon":599},{"title":601,"path":602,"stem":603,"description":604,"icon":605,"tags":1162},[298,97,103,299,220],{"title":608,"path":609,"stem":610,"description":611,"icon":612,"tags":1164},[220,614,103,298,63],{"title":616,"path":617,"stem":618,"description":619,"icon":620,"tags":1166},[39,16,31,65,622,35],{"title":624,"path":625,"stem":626,"description":627,"icon":628},{"title":630,"path":631,"stem":632,"description":633,"icon":634},{"title":636,"path":637,"stem":638,"description":639,"icon":640},{"title":642,"path":643,"stem":644,"description":645,"icon":646},{"title":648,"path":649,"stem":650,"children":1172,"description":653,"icon":29,"tags":1175},[1173],{"title":648,"path":649,"stem":650,"description":653,"icon":29,"tags":1174},[655,656,657,406,343,658,659,660],[655,656,657,406,343,658,659,660],{"title":663,"path":664,"stem":665,"children":1177,"description":668,"icon":634},[1178],{"title":663,"path":664,"stem":665,"description":668,"icon":634},{"title":670,"path":671,"stem":672,"children":1180,"description":675,"icon":540,"tags":1193},[1181,1183,1185,1187,1189,1191],{"title":670,"path":671,"stem":672,"description":675,"icon":540,"tags":1182},[677,678,679,680,681,215,31,298],{"title":683,"path":684,"stem":685,"description":686,"icon":60,"tags":1184},[677,543,688,689,690,691],{"title":693,"path":694,"stem":695,"description":696,"icon":697,"tags":1186},[677,105,699,109,110,104,700],{"title":702,"path":703,"stem":704,"description":705,"icon":540,"tags":1188},[677,678,570,105,688,690,500],{"title":708,"path":709,"stem":710,"description":711,"icon":228,"tags":1190},[677,31,65,713,714,715,406,343,523,716],{"title":718,"path":719,"stem":720,"description":721,"icon":457,"tags":1192},[677,679,31,65,104,372,714,723],[677,678,679,680,681,215,31,298],{"id":745,"title":746,"body":1195,"description":456,"extension":973,"icon":457,"lastUpdated":974,"meta":1323,"navigation":1328,"path":454,"seo":1330,"sitemap":1331,"stem":455,"__hash__":993},{"type":748,"value":1196,"toc":1315},[1197,1199,1207,1209,1211,1217,1221,1239,1243,1247,1251,1255,1257,1259,1261,1269,1273,1279,1281,1285,1289,1295,1301,1303,1305,1311],[751,1198,754],{"id":753},[756,1200,1201,761,1203,767,1205,771],{},[759,1202,453],{},[763,1204,766],{"href":765},[763,1206,770],{"href":464},[756,1208,774],{},[751,1210,778],{"id":777},[756,1212,1213,784,1215,788],{},[759,1214,783],{},[759,1216,787],{},[756,1218,1219],{},[792,1220],{"alt":794,"src":795},[756,1222,798,1223,802,1225,806,1227,810,1229,810,1231,810,1233,810,1235,823,1237,827],{},[759,1224,801],{},[759,1226,805],{},[759,1228,809],{},[759,1230,813],{},[759,1232,816],{},[759,1234,819],{},[759,1236,822],{},[759,1238,826],{},[756,1240,830,1241,835],{},[832,1242,834],{},[756,1244,838,1245,842],{},[759,1246,841],{},[756,1248,1249],{},[792,1250],{"alt":847,"src":848},[756,1252,851,1253,788],{},[763,1254,469],{"href":464},[855,1256,858],{"id":857},[756,1258,861],{},[756,1260,864],{},[756,1262,867,1263,871,1265,875,1267,880],{},[759,1264,870],{},[832,1266,874],{},[763,1268,879],{"href":878},[756,1270,1271],{},[792,1272],{"alt":885,"src":886},[756,1274,889,1275,893,1277,788],{},[759,1276,892],{},[763,1278,897],{"href":896},[751,1280,900],{"id":461},[756,1282,903,1283,906],{},[759,1284,783],{},[756,1286,1287],{},[792,1288],{"alt":911,"src":912},[756,1290,915,1291,919,1293,923],{},[759,1292,918],{},[759,1294,922],{},[756,1296,926,1297,930,1299,934],{},[759,1298,929],{},[759,1300,933],{},[756,1302,937],{},[751,1304,941],{"id":940},[756,1306,944,1307,948,1309,953],{},[832,1308,947],{},[763,1310,952],{"href":951},[756,1312,956,1313,961],{},[763,1314,960],{"href":959},{"title":963,"searchDepth":964,"depth":964,"links":1316},[1317,1318,1321,1322],{"id":753,"depth":964,"text":754},{"id":777,"depth":964,"text":778,"children":1319},[1320],{"id":857,"depth":970,"text":858},{"id":461,"depth":964,"text":900},{"id":940,"depth":964,"text":941},{"head":1324,"readingTime":1327},{"meta":1325},[1326],{"name":979,"content":980},{"text":982,"minutes":983,"time":984,"words":985},{"title":453,"tags":1329},[437,459,105,460,461,439],{"title":746,"description":456},{"loc":454,"lastmod":990,"changefreq":991,"priority":992},1788342995312]