[{"data":1,"prerenderedAt":4526},["ShallowReactive",2],{"navigation-docsEN":3,"docs-EN-/docs/digital-product-passport/interoperability":483,"docsNav-EN-/docs":2666,"docsSecNav-EN-/docs/digital-product-passport/interoperability":2805},[4],{"title":5,"path":6,"stem":7,"children":8},"Docs","/docs","docs",[9,21,39,51,72,86,112,126,153,164,179,203,391,467],{"title":10,"path":6,"stem":11,"description":12,"icon":13,"tags":14},"Documentation","docs/index","Introduction to documentation on EPCIS and OpenEPCIS tools","heroicons-outline:document-text",[15,16,17,18,19,20],"openepcis","epcis-2-0","epcis-documentation","epcis-standard","open-source","epcis-tools",{"title":22,"path":23,"stem":24,"children":25,"description":27,"icon":28,"tags":38},"Introduction","/docs/introduction","docs/01.introduction/index",[26],{"title":22,"path":23,"stem":24,"description":27,"icon":28,"tags":29},"Why EPCIS is necessary and how it can help organizations of all sizes and types.","heroicons-outline:globe-alt",[16,30,31,32,33,34,35,36,37],"epcis","epcis-1-2","gs1-epcis-standard","supply-chain","traceability","data-sharing","tracking","tracing",[16,30,31,32,33,34,35,36,37],{"title":40,"path":41,"stem":42,"children":43,"description":45,"icon":46,"tags":50},"EPCIS","/docs/epcis","docs/02.epcis/index",[44],{"title":40,"path":41,"stem":42,"description":45,"icon":46,"tags":47},"Discover the specifics of EPCIS, how it works, and what OpenEPCIS is.","i-custom-open-epcis",[16,30,31,32,48,49],"iso-iec-19987","iso-iec-19988",[16,30,31,32,48,49],{"title":52,"path":53,"stem":54,"children":55,"description":57,"icon":58,"tags":71},"Format Converter","/docs/format-converter","docs/03.format-converter/index",[56],{"title":52,"path":53,"stem":54,"description":57,"icon":58,"tags":59},"OpenEPCIS solution to convert EPCIS 2.0 and 1.2 document or single event from XML to JSON/JSON-LD and vice versa.","heroicons-outline:arrows-right-left",[16,60,61,62,63,64,65,20,66,67,68,69,70],"json","json-ld","xml","events","format-converter","convert","convert-epcis-events","format","converter","epcis-tool","tools",[16,60,61,62,63,64,65,20,66,67,68,69,70],{"title":73,"path":74,"stem":75,"children":76,"description":78,"icon":79,"tags":85},"Version Converter","/docs/version-converter","docs/04.version-converter/index",[77],{"title":73,"path":74,"stem":75,"description":78,"icon":79,"tags":80},"OpenEPCIS solution to convert EPCIS XML document from version 1.2 to 2.0 and vice versa.","heroicons:arrows-up-down",[16,31,60,61,62,63,81,65,20,82,83,84,68,69,70],"version-converter","convert-epcis-version","version","epcis-version",[16,31,60,61,62,63,81,65,20,82,83,84,68,69,70],{"title":87,"path":88,"stem":89,"children":90,"description":92,"icon":93,"tags":111},"Identifier Converter","/docs/identifier-converter","docs/05.identifier-converter/index",[91],{"title":87,"path":88,"stem":89,"description":92,"icon":93,"tags":94},"OpenEPCIS solution to convert EPCIS instance or class identifier from URN to digital link WebURI and vice versa.","i-heroicons-link",[16,95,96,97,98,99,20,100,101,102,103,104,105,106,107,108,109,110],"gs1-digital-link","urn-format","epc-uri","epc","weburi","gs1-standard","gs1","sscc","gtin","giai","grai","gdti","lgtin","sgtin","gln","gcp",[16,95,96,97,98,99,20,100,101,102,103,104,105,106,107,108,109,110],{"title":113,"path":114,"stem":115,"children":116,"description":118,"icon":119,"tags":125},"Event Hash Generator","/docs/event-hash-generator","docs/06.event-hash-generator/index",[117],{"title":113,"path":114,"stem":115,"description":118,"icon":119,"tags":120},"OpenEPCIS solution to generate unique event hash for EPCIS XML or JSON/JSON-LD document or event list.","heroicons-outline:finger-print",[16,121,60,61,62,63,20,122,123,124,69,70],"event-hash","event","hash","generator",[16,121,60,61,62,63,20,122,123,124,69,70],{"title":127,"path":128,"stem":129,"children":130,"description":132,"icon":133,"tags":152},"Test Data Generator","/docs/test-data-generator","docs/07.test-data-generator/index",[131,135],{"title":127,"path":128,"stem":129,"description":132,"icon":133,"tags":134},"OpenEPCIS solution to generate a large set of EPCIS test data events for all use cases/supply chain requirements.","heroicons-outline:cog",[16,121,60,61,62,63,20,122,123,124,69,70],{"title":136,"path":137,"stem":138,"children":139,"description":132,"icon":141,"tags":151},"EPCIS Implementation Guidelines","/docs/test-data-generator/gs1-epcis-implementation-guidelines","docs/07.test-data-generator/01.gs1-epcis-implementation-guidelines/index",[140],{"title":136,"path":137,"stem":138,"description":132,"icon":141,"tags":142},"heroicons-outline:badge-check",[16,60,61,143,20,144,145,146,34,147,148,149,150],"testing","test-data-generator","design","design-template","process-automation","compliance","supply-chain-management","load-tests",[16,60,61,143,20,144,145,146,34,147,148,149,150],[16,121,60,61,62,63,20,122,123,124,69,70],{"title":154,"path":155,"stem":156,"children":157,"description":159,"icon":160,"tags":163},"Test Resource Management","/docs/test-resource-management","docs/08.test-resource-management/index",[158],{"title":154,"path":155,"stem":156,"description":159,"icon":160,"tags":161},"Collection of EPCIS 1.2/2.0 documents/events in XML/JSON/JSON-LD formats, intended for various testing purposes","heroicons-outline:archive-box",[16,60,61,143,20,162,34,147,148,149,150],"performance-tests",[16,60,61,143,20,162,34,147,148,149,150],{"title":165,"path":166,"stem":167,"children":168,"description":170,"icon":171,"tags":178},"Vocabulary Management","/docs/vocabulary-management","docs/09.vocabulary-management/index",[169],{"title":165,"path":166,"stem":167,"description":170,"icon":171,"tags":172},"Collection of standardized constants and strings for EPCIS event data.","heroicons-outline:book-open",[16,173,15,174,20,175,34,176,148,149,177],"constants","centralization","standardization","vocabulary","data-dictionary",[16,173,15,174,20,175,34,176,148,149,177],{"title":180,"path":181,"stem":182,"children":183,"description":185,"icon":186,"tags":202},"Dependency Management","/docs/dependency-management","docs/10.dependency-management/index",[184],{"title":180,"path":181,"stem":182,"description":185,"icon":186,"tags":187},"Centralized Maven Bill of Materials (BOM) for all the OpenEPCIS modules.","heroicons-outline:folder",[188,15,189,190,191,192,193,30,194,195,196,197,198,199,200,201],"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",[188,15,189,190,191,192,193,30,194,195,196,197,198,199,200,201],{"title":204,"path":205,"stem":206,"children":207,"description":209,"icon":210,"tags":390},"Digital Product Passport","/docs/digital-product-passport","docs/11.digital-product-passport/index",[208,217,229,261,295,322,336,345,353,363],{"title":204,"path":205,"stem":206,"description":209,"icon":210,"tags":211},"Introduction to Digital Product Passport and how EPCIS enables product traceability for DPP compliance.","heroicons-outline:identification",[212,213,214,30,215,34,216],"digital-product-passport","dpp","eu-regulation","sustainability","circular-economy",{"title":218,"path":219,"stem":220,"children":221,"description":223,"icon":224,"tags":228},"ESPR Framework","/docs/digital-product-passport/espr-framework","docs/11.digital-product-passport/00.espr-framework/index",[222],{"title":218,"path":219,"stem":220,"description":223,"icon":224,"tags":225},"Guide to the EU Ecodesign for Sustainable Products Regulation (ESPR) 2024/1781 and how OpenEPCIS supports Digital Product Passport requirements.","heroicons-outline:shield-check",[226,227,215,213,214],"espr","ecodesign",[226,227,215,213,214],{"title":230,"path":231,"stem":232,"children":233,"description":235,"icon":236,"tags":260},"Battery DPP","/docs/digital-product-passport/battery-dpp","docs/11.digital-product-passport/01.battery-dpp/index",[234,240,245,251],{"title":230,"path":231,"stem":232,"description":235,"icon":236,"tags":237},"GS1-native implementation of EU Battery Regulation 2023/1542 Digital Product Passport using EPCIS 2.0","heroicons:battery-100",[238,239,213,30,101,34,215],"battery","eu-battery-regulation",{"title":241,"path":242,"stem":243,"description":244,"icon":171},"Implementation Guide","/docs/digital-product-passport/battery-dpp/implementation-guide","docs/11.digital-product-passport/01.battery-dpp/01.implementation-guide","Step-by-step guide for implementing a GS1-native Battery Digital Product Passport with OpenEPCIS extensions",{"title":246,"path":247,"stem":248,"description":249,"icon":250},"Event Types","/docs/digital-product-passport/battery-dpp/event-types","docs/11.digital-product-passport/01.battery-dpp/02.event-types","Complete reference for all EPCIS event types and sensor measurements in the Battery DPP","heroicons-outline:collection",{"title":252,"path":253,"stem":254,"description":255,"icon":13,"tags":256},"Complete Examples","/docs/digital-product-passport/battery-dpp/complete-examples","docs/11.digital-product-passport/01.battery-dpp/05.complete-examples","Reference Battery Digital Product Passport examples mapped to EU Battery Regulation 2023/1542 Annex XIII",[238,257,258,61,259],"examples","annex-xiii","carbon-footprint",[238,239,213,30,101,34,215],{"title":262,"path":263,"stem":264,"children":265,"description":267,"icon":268,"tags":294},"EUDR","/docs/digital-product-passport/eudr","docs/11.digital-product-passport/02.eudr/index",[266,273,278,282,287],{"title":262,"path":263,"stem":264,"description":267,"icon":268,"tags":269},"GS1-native implementation of EU Deforestation Regulation 2023/1115 compliance using EPCIS 2.0","heroicons-outline:globe-europe-africa",[270,271,272,213,30,101,34,215],"eudr","deforestation","timber",{"title":241,"path":274,"stem":275,"description":276,"icon":277},"/docs/digital-product-passport/eudr/implementation-guide","docs/11.digital-product-passport/02.eudr/01.implementation-guide","Step-by-step guide for implementing EU Deforestation Regulation compliance using GS1 standards",null,{"title":246,"path":279,"stem":280,"description":281,"icon":277},"/docs/digital-product-passport/eudr/event-types","docs/11.digital-product-passport/02.eudr/02.event-types","EPCIS event types for EU Deforestation Regulation compliance",{"title":283,"path":284,"stem":285,"description":286,"icon":277},"URL Patterns","/docs/digital-product-passport/eudr/url-patterns","docs/11.digital-product-passport/02.eudr/03.url-patterns","GS1 Digital Link URL patterns for EUDR implementations",{"title":252,"path":288,"stem":289,"description":290,"icon":13,"tags":291},"/docs/digital-product-passport/eudr/complete-examples","docs/11.digital-product-passport/02.eudr/04.complete-examples","Reference EUDR examples — timber product passport, derived product, regulatory notification, harvesting / origin-declaration / processing / supply-chain-transfer / exemption events",[270,257,272,292,293],"due-diligence","geolocation",[270,271,272,213,30,101,34,215],{"title":296,"path":297,"stem":298,"children":299,"description":301,"icon":302,"tags":321},"Textile DPP","/docs/digital-product-passport/textile","docs/11.digital-product-passport/03.textile/index",[300,308,315],{"title":296,"path":297,"stem":298,"description":301,"icon":302,"tags":303},"Digital Product Passport vocabulary for textiles and apparel under the EU Sustainable Textiles Strategy and ESPR 2024/1781.","heroicons-outline:sparkles",[304,305,306,213,215,307],"textile","apparel","footwear","fibre-composition",{"title":241,"path":309,"stem":310,"description":311,"icon":312,"tags":313},"/docs/digital-product-passport/textile/implementation-guide","docs/11.digital-product-passport/03.textile/01.implementation-guide","How to assemble a Textile Digital Product Passport against the published openepcis-dpp-ready textile vocabulary","heroicons-outline:scissors",[304,305,306,314],"implementation",{"title":252,"path":316,"stem":317,"description":318,"icon":13,"tags":319},"/docs/digital-product-passport/textile/complete-examples","docs/11.digital-product-passport/03.textile/02.complete-examples","Reference Textile Digital Product Passport documents covering apparel and footwear",[304,257,305,306,320,61],"fiber-composition",[304,305,306,213,215,307],{"title":323,"path":324,"stem":325,"children":326,"description":328,"icon":58,"tags":335},"Interoperability","/docs/digital-product-passport/interoperability","docs/11.digital-product-passport/04.interoperability/index",[327],{"title":323,"path":324,"stem":325,"description":328,"icon":58,"tags":329},"Guide to OpenEPCIS DPP interoperability with GS1, UNTP, CIRPASS2, and ESPR standards.",[330,331,101,332,226,333,334],"interoperability","untp","cirpass2","standards","alignment",[330,331,101,332,226,333,334],{"title":337,"path":338,"stem":339,"description":340,"icon":28,"tags":341},"DPP Resolution Flow","/docs/digital-product-passport/dpp-resolution-flow","docs/11.digital-product-passport/05.dpp-resolution-flow","How OpenEPCIS combined GS1 Digital Link, the IETF linkset format and content negotiation into one DPP resolution flow",[342,95,343,344],"walkthrough","linkset","content-negotiation",{"title":346,"path":347,"stem":348,"description":349,"icon":350,"tags":351},"Resolver Setup","/docs/digital-product-passport/resolver-setup","docs/11.digital-product-passport/06.resolver-setup","How to expose your DPP behind a GS1 Digital Link resolver","heroicons-outline:server",[352,95,343],"resolver",{"title":354,"path":355,"stem":356,"description":357,"icon":358,"tags":359},"Multi-Component Example","/docs/digital-product-passport/multi-component-example","docs/11.digital-product-passport/07.multi-component-example","How a composite product references separately-passported components via standard GS1 Digital Link and EPCIS aggregation","heroicons-outline:puzzle-piece",[360,361,362,332],"example","components","aggregation",{"title":364,"path":365,"stem":366,"children":367,"description":369,"icon":370,"tags":389},"Electronics DPP","/docs/digital-product-passport/electronics","docs/11.digital-product-passport/08.electronics/index",[368,377,382],{"title":364,"path":365,"stem":366,"description":369,"icon":370,"tags":371},"Digital Product Passport vocabulary for electronic devices under ESPR, the French Repairability Index, EU Right to Repair and WEEE.","heroicons-outline:device-phone-mobile",[372,373,374,375,376],"electronics","repairability","weee","energy-label","right-to-repair",{"title":241,"path":378,"stem":379,"description":380,"icon":171,"tags":381},"/docs/digital-product-passport/electronics/implementation-guide","docs/11.digital-product-passport/08.electronics/01.implementation-guide","How to assemble an Electronics Digital Product Passport against the published openepcis-dpp-ready electronics vocabulary",[372,314,373,374,375],{"title":252,"path":383,"stem":384,"description":385,"icon":13,"tags":386},"/docs/digital-product-passport/electronics/complete-examples","docs/11.digital-product-passport/08.electronics/02.complete-examples","Reference Electronics Digital Product Passport documents covering smartphone, laptop, display and server",[372,257,387,388,61],"smartphone","laptop",[372,373,374,375,376],[212,213,214,30,215,34,216],{"title":392,"path":393,"stem":394,"children":395,"description":397,"icon":398},"OpenEPCIS Overview","/docs/platform-overview","docs/14.platform-overview/index",[396,399,405,411,417],{"title":392,"path":393,"stem":394,"description":397,"icon":398},"A GS1-conformant supply-chain data platform — Resolver, Masterdata, EPCIS Events — in open source and business editions.","lucide:layout-dashboard",{"title":400,"path":401,"stem":402,"description":403,"icon":404},"Architecture","/docs/platform-overview/architecture","docs/14.platform-overview/01.architecture","How OpenEPCIS handles identity, isolation, events, and GS1 conformance — the four things that distinguish the platform.","lucide:cpu",{"title":406,"path":407,"stem":408,"description":409,"icon":410},"Feature Matrix","/docs/platform-overview/feature-matrix","docs/14.platform-overview/02.feature-matrix","OpenEPCIS capabilities by edition, aligned to the relevant GS1 standards.","lucide:check-square",{"title":412,"path":413,"stem":414,"description":415,"icon":416},"Roadmap","/docs/platform-overview/roadmap","docs/14.platform-overview/03.roadmap","Three horizons — Now, Next, Later. Skeleton awaiting user-confirmed dates.","lucide:map",{"title":418,"path":419,"stem":420,"children":421,"description":423,"icon":424},"Modules","/docs/platform-overview/modules","docs/14.platform-overview/modules/index",[422,425,431,437,443,449,455,461],{"title":418,"path":419,"stem":420,"description":423,"icon":424},"Seven module families that organise the OpenEPCIS platform — Resolver, Masterdata, EPCIS Events, Formats & Validation, Integration, Testdata, Platform.","lucide:layers",{"title":426,"path":427,"stem":428,"description":429,"icon":430},"GS1 Conformant Resolver","/docs/platform-overview/modules/resolver","docs/14.platform-overview/modules/01.resolver","Resolves GS1 Digital Link URIs to product information, masterdata, EPCIS endpoints, and twelve more standard link types.","lucide:link-2",{"title":432,"path":433,"stem":434,"description":435,"icon":436},"GS1 Web Vocabulary & Masterdata","/docs/platform-overview/modules/masterdata","docs/14.platform-overview/modules/02.masterdata","Web Vocabulary models, masterdata-to-resolver REST pattern, GS1 Germany Activate Plus / GEPIR sync, and the event-driven masterdata bus.","lucide:database",{"title":438,"path":439,"stem":440,"description":441,"icon":442},"EPCIS Events — Capture, Query, Subscriptions","/docs/platform-overview/modules/epcis-events","docs/14.platform-overview/modules/03.epcis-events","EPCIS 2.0 REST and SOAP, live streaming subscriptions, resilient pagination, OpenSearch event store.","lucide:activity",{"title":444,"path":445,"stem":446,"description":447,"icon":448},"Formats, Validation & Identity","/docs/platform-overview/modules/formats","docs/14.platform-overview/modules/04.formats","XML ↔ JSON-LD conversion, multi-layer validation, identifier translation, idempotent event hashing.","lucide:file-check",{"title":450,"path":451,"stem":452,"description":453,"icon":454},"Integration & Gateways","/docs/platform-overview/modules/integration","docs/14.platform-overview/modules/05.integration","Cloud storage, file service, natural-language AI assistant.","lucide:plug",{"title":456,"path":457,"stem":458,"description":459,"icon":460},"Testdata & Developer Tooling","/docs/platform-overview/modules/testdata","docs/14.platform-overview/modules/06.testdata","Synthetic EPCIS test event generation, reference event collections, conformance test suite, SDKs.","lucide:wrench",{"title":462,"path":463,"stem":464,"description":465,"icon":466},"Platform, Build & Observability","/docs/platform-overview/modules/platform","docs/14.platform-overview/modules/07.platform","How OpenEPCIS is built, deployed, and observed.","lucide:server",{"title":468,"path":469,"stem":470,"children":471,"description":473,"icon":28,"tags":482},"Vision","/docs/vision","docs/15.vision/index",[472],{"title":468,"path":469,"stem":470,"description":473,"icon":28,"tags":474},"How UNTP, DIDs, Verifiable Credentials, and EPCIS work together to create unified product identity infrastructure for the connected supply chain.",[475,476,477,478,331,479,480,481],"vision","digital-twin","did","verifiable-credentials","rfid","industry-4-0","web-3-0",[475,476,477,478,331,479,480,481],{"id":484,"title":485,"body":486,"description":328,"extension":2645,"icon":58,"lastUpdated":2646,"meta":2647,"navigation":2658,"path":324,"seo":2660,"sitemap":2661,"stem":325,"__hash__":2665},"docsEN/docs/11.digital-product-passport/04.interoperability/index.md","Standards Interoperability",{"type":487,"value":488,"toc":2605},"minimark",[489,494,498,509,513,516,639,644,661,831,834,844,864,878,882,885,907,915,919,924,948,953,963,967,970,1041,1045,1048,1075,1079,1085,1088,1270,1274,1282,1286,1289,1330,1334,1341,1400,1403,1423,1430,1434,1441,1532,1536,1539,1693,1697,1700,1703,1706,1795,1798,1801,1910,1913,1916,1959,1963,1967,1970,2002,2006,2009,2051,2055,2059,2068,2097,2100,2142,2146,2155,2179,2182,2282,2286,2289,2353,2357,2363,2367,2423,2432,2436,2539,2543,2546,2570,2574,2601],[490,491,493],"h2",{"id":492},"overview","Overview",[495,496,497],"p",{},"This page documents how OpenEPCIS DPP-Ready interoperates with the other Digital Product Passport initiatives in the EU ecosystem. The OpenEPCIS approach is to build natively on GS1 standards (Web Vocabulary, Digital Link, EPCIS 2.0) and bridge into adjacent vocabularies where helpful.",[499,500,502],"alert",{"type":501},"info",[495,503,504,508],{},[505,506,507],"strong",{},"Status",": v0.9.5 — pre-release (feature-complete). A dozen UNTP-aligned properties plus three class equivalences, bridge contexts for BatteryPass and UNTP, full ESPR 2024/1781 article coverage.",[490,510,512],{"id":511},"the-dpp-ecosystem","The DPP ecosystem",[495,514,515],{},"Several initiatives are defining Digital Product Passport specifications. They differ in scope, governance and identifier model.",[517,518,519,540],"table",{},[520,521,522],"thead",{},[523,524,525,529,532,535,537],"tr",{},[526,527,528],"th",{},"Initiative",[526,530,531],{},"Foundation",[526,533,534],{},"Scope",[526,536,507],{},[526,538,539],{},"GS1 link",[541,542,543,563,582,601,620],"tbody",{},[523,544,545,551,554,557,560],{},[546,547,548],"td",{},[505,549,550],{},"OpenEPCIS DPP-Ready",[546,552,553],{},"GS1 Web Vocabulary + EPCIS 2.0",[546,555,556],{},"Multi-sector (Battery, EUDR, Textile, Electronics)",[546,558,559],{},"v0.9.5 (pre-release)",[546,561,562],{},"Native",[523,564,565,570,573,576,579],{},[546,566,567],{},[505,568,569],{},"BatteryPass Data Model",[546,571,572],{},"Eclipse SAMM + custom URNs",[546,574,575],{},"Battery only",[546,577,578],{},"Spec v1.2.0",[546,580,581],{},"Via bridge context",[523,583,584,589,592,595,598],{},[546,585,586],{},[505,587,588],{},"DPP Keystone",[546,590,591],{},"Custom JSON-LD",[546,593,594],{},"Multi-sector vocabulary",[546,596,597],{},"Proof-of-concept",[546,599,600],{},"Partial",[523,602,603,608,611,614,617],{},[546,604,605],{},[505,606,607],{},"CIRPASS2",[546,609,610],{},"Requirements framework",[546,612,613],{},"Multi-sector requirements",[546,615,616],{},"Requirements only",[546,618,619],{},"Reference",[523,621,622,627,630,633,636],{},[546,623,624],{},[505,625,626],{},"UN Transparency Protocol (UNTP)",[546,628,629],{},"JSON-LD + JSON Schema",[546,631,632],{},"Multi-sector",[546,634,635],{},"Spec v0.6",[546,637,638],{},"Property-level alignment",[640,641,643],"h3",{"id":642},"how-openepcis-relates-to-each","How OpenEPCIS relates to each",[495,645,646,648,649,656,657,660],{},[505,647,569],{}," (",[650,651,655],"a",{"href":652,"rel":653},"https://github.com/battery-pass/BatteryPassDataModel",[654],"nofollow","repo",") is a battery-specific ontology developed by the Battery Pass Consortium using the Eclipse Semantic Modeling Framework (SAMM). It uses custom URN identifiers and emits multiple output formats (JSON-LD, JSON Schema, OpenAPI, AAS). OpenEPCIS provides a ",[505,658,659],{},"bridge context"," that ingests BatteryPass documents into the GS1-native vocabulary:",[662,663,667],"pre",{"className":664,"code":665,"language":60,"meta":666,"style":666},"language-json shiki shiki-themes material-theme-lighter github-light github-dark monokai","{\n  \"@context\": [\n    \"https://ref.gs1.org/standards/epcis/epcis-context.jsonld\",\n    \"https://ref.openepcis.io/extensions/eu/battery/context\",\n    \"https://ref.openepcis.io/extensions/eu/battery/battery-context-batterypass-bridge.jsonld\"\n  ],\n  \"batteryCategory\": \"ev\",\n  \"carbonFootprintPerLifecycleStage\": {\n    \"lifecycleStage\": \"RawMaterialExtraction\",\n    \"carbonFootprint\": 12.5\n  }\n}\n","",[668,669,670,679,699,715,727,738,744,766,781,803,819,825],"code",{"__ignoreMap":666},[671,672,675],"span",{"class":673,"line":674},"line",1,[671,676,678],{"class":677},"swvn1","{\n",[671,680,682,686,690,693,696],{"class":673,"line":681},2,[671,683,685],{"class":684},"saDeg","  \"",[671,687,689],{"class":688},"sEff5","@context",[671,691,692],{"class":684},"\"",[671,694,695],{"class":677},":",[671,697,698],{"class":677}," [\n",[671,700,702,706,710,712],{"class":673,"line":701},3,[671,703,705],{"class":704},"sh1VR","    \"",[671,707,709],{"class":708},"sINAO","https://ref.gs1.org/standards/epcis/epcis-context.jsonld",[671,711,692],{"class":704},[671,713,714],{"class":677},",\n",[671,716,718,720,723,725],{"class":673,"line":717},4,[671,719,705],{"class":704},[671,721,722],{"class":708},"https://ref.openepcis.io/extensions/eu/battery/context",[671,724,692],{"class":704},[671,726,714],{"class":677},[671,728,730,732,735],{"class":673,"line":729},5,[671,731,705],{"class":704},[671,733,734],{"class":708},"https://ref.openepcis.io/extensions/eu/battery/battery-context-batterypass-bridge.jsonld",[671,736,737],{"class":704},"\"\n",[671,739,741],{"class":673,"line":740},6,[671,742,743],{"class":677},"  ],\n",[671,745,747,749,752,754,756,759,762,764],{"class":673,"line":746},7,[671,748,685],{"class":684},[671,750,751],{"class":688},"batteryCategory",[671,753,692],{"class":684},[671,755,695],{"class":677},[671,757,758],{"class":704}," \"",[671,760,761],{"class":708},"ev",[671,763,692],{"class":704},[671,765,714],{"class":677},[671,767,769,771,774,776,778],{"class":673,"line":768},8,[671,770,685],{"class":684},[671,772,773],{"class":688},"carbonFootprintPerLifecycleStage",[671,775,692],{"class":684},[671,777,695],{"class":677},[671,779,780],{"class":677}," {\n",[671,782,784,786,790,792,794,796,799,801],{"class":673,"line":783},9,[671,785,705],{"class":684},[671,787,789],{"class":788},"s_MOj","lifecycleStage",[671,791,692],{"class":684},[671,793,695],{"class":677},[671,795,758],{"class":704},[671,797,798],{"class":708},"RawMaterialExtraction",[671,800,692],{"class":704},[671,802,714],{"class":677},[671,804,806,808,811,813,815],{"class":673,"line":805},10,[671,807,705],{"class":684},[671,809,810],{"class":788},"carbonFootprint",[671,812,692],{"class":684},[671,814,695],{"class":677},[671,816,818],{"class":817},"sYThS"," 12.5\n",[671,820,822],{"class":673,"line":821},11,[671,823,824],{"class":677},"  }\n",[671,826,828],{"class":673,"line":827},12,[671,829,830],{"class":677},"}\n",[495,832,833],{},"The bridge maps BatteryPass property names to OpenEPCIS / GS1 URIs and rewrites identifiers from custom URN form to GS1 Digital Link.",[495,835,836,648,838,843],{},[505,837,588],{},[650,839,842],{"href":840,"rel":841},"https://dpp-keystone.org/",[654],"dpp-keystone.org",") is a vocabulary-harmonisation initiative that maps semantic equivalencies between DPP standards. It currently positions itself as a proof-of-concept. Where Keystone's vocabulary overlaps with the GS1 Web Vocabulary, OpenEPCIS uses the GS1 term; where it adds new terms, those are candidates for the OpenEPCIS extension contexts.",[495,845,846,648,848,853,854,857,858,863],{},[505,847,607],{},[650,849,852],{"href":850,"rel":851},"https://cirpass2.eu/",[654],"cirpass2.eu",") is an EU-funded project that defines DPP ",[505,855,856],{},"requirements"," and pilots, not a technical specification. OpenEPCIS implements the CIRPASS-2 requirements set; a coverage matrix lives in ",[650,859,862],{"href":860,"rel":861},"https://github.com/openepcis/openepcis-dpp-ready/blob/main/extensions/common/interop/docs/CIRPASS2_COVERAGE.md",[654],"CIRPASS2_COVERAGE.md",".",[495,865,866,868,869,872,873,877],{},[505,867,626],{}," is the closest neighbour: a multi-sector JSON-LD vocabulary maintained by UN/CEFACT. OpenEPCIS aligns property names via ",[668,870,871],{},"owl:equivalentProperty"," and uses the same 0–1 decimal scale for ratios. See the ",[650,874,876],{"href":875},"#untp-compatible","property mapping table"," below.",[640,879,881],{"id":880},"why-openepcis-chose-gs1-native","Why OpenEPCIS chose GS1-native",[495,883,884],{},"The architectural decision shows up in three places:",[886,887,888,895,901],"ol",{},[889,890,891,894],"li",{},[505,892,893],{},"Identifiers"," — GTIN, GLN, SSCC are already issued by GS1 member organisations across supply chains. Reusing them avoids introducing a parallel identifier scheme.",[889,896,897,900],{},[505,898,899],{},"Resolvers"," — the GS1 Digital Link resolver ecosystem already exists; an OpenEPCIS deployment plugs in rather than building new resolver infrastructure.",[889,902,903,906],{},[505,904,905],{},"Events"," — EPCIS 2.0 is the established supply-chain event standard. DPP data riding inside EPCIS events means lifecycle traceability comes \"for free\" alongside product description.",[662,908,913],{"className":909,"code":911,"language":912},[910],"language-text","GS1-native (OpenEPCIS):\nProduct → GTIN → GS1 Digital Link → DPP data\n                 ↳ https://id.dev.epcis.cloud/01/09521141012345\n\nCustom-URN approach:\nProduct → Custom URN → Dedicated resolver → DPP data\n                       ↳ separate registration & resolver infrastructure\n","text",[668,914,911],{"__ignoreMap":666},[490,916,918],{"id":917},"quick-links","Quick Links",[495,920,921],{},[505,922,923],{},"Documentation:",[925,926,927,934,941],"ul",{},[889,928,929],{},[650,930,933],{"href":931,"rel":932},"https://github.com/openepcis/openepcis-dpp-ready/tree/main/interop",[654],"OpenEPCIS DPP-Ready Repository",[889,935,936],{},[650,937,940],{"href":938,"rel":939},"https://github.com/openepcis/openepcis-dpp-ready/blob/main/extensions/common/interop/docs/UNTP_MAPPING.md",[654],"UNTP Mapping Table",[889,942,943],{},[650,944,947],{"href":945,"rel":946},"https://github.com/openepcis/openepcis-dpp-ready/blob/main/extensions/common/interop/docs/STANDARDS_ALIGNMENT.md",[654],"Standards Alignment Overview",[495,949,950],{},[505,951,952],{},"Vocabulary Browsers:",[925,954,955],{},[889,956,957,962],{},[650,958,961],{"href":959,"rel":960},"https://ref.openepcis.io/extensions/common/core/",[654],"Core DPP Vocabulary"," - Includes UNTP-aligned properties",[490,964,966],{"id":965},"standards-alignment","Standards Alignment",[495,968,969],{},"OpenEPCIS aligns with and harmonizes multiple DPP standards:",[517,971,972,985],{},[520,973,974],{},[523,975,976,979,982],{},[526,977,978],{},"Standard",[526,980,981],{},"Alignment Level",[526,983,984],{},"Integration Method",[541,986,987,1003,1017,1028],{},[523,988,989,994,997],{},[546,990,991],{},[505,992,993],{},"GS1 Web Vocabulary",[546,995,996],{},"Native Foundation",[546,998,999,1000],{},"Built on GS1 patterns, ",[668,1001,1002],{},"owl:imports",[523,1004,1005,1009,1012],{},[546,1006,1007],{},[505,1008,626],{},[546,1010,1011],{},"Property-aligned",[546,1013,1014,1016],{},[668,1015,871],{},", bridge context",[523,1018,1019,1023,1026],{},[546,1020,1021],{},[505,1022,607],{},[546,1024,1025],{},"Requirements coverage",[546,1027,10],{},[523,1029,1030,1035,1038],{},[546,1031,1032],{},[505,1033,1034],{},"ESPR 2024/1781",[546,1036,1037],{},"Full compliance",[546,1039,1040],{},"Core module implementation",[640,1042,1044],{"id":1043},"gs1-native","GS1-Native",[495,1046,1047],{},"OpenEPCIS is built on GS1 standards:",[925,1049,1050,1056,1062],{},[889,1051,1052,1055],{},[505,1053,1054],{},"GS1 Digital Link"," - Resolvable product identifiers (GTIN, GLN)",[889,1057,1058,1061],{},[505,1059,1060],{},"EPCIS 2.0"," - Supply chain event traceability",[889,1063,1064,1066,1067,1070,1071,1074],{},[505,1065,993],{}," - Semantic foundation (",[668,1068,1069],{},"gs1:Product",", ",[668,1072,1073],{},"gs1:Organization",")",[640,1076,1078],{"id":1077},"untp-compatible","UNTP-Compatible",[495,1080,1081,1082,863],{},"Property names are aligned with UN Transparency Protocol patterns. For a deeper understanding of UNTP, DIDs, Verifiable Credentials, and how they fit into the broader digital twin ecosystem, see ",[650,1083,1084],{"href":469},"The Digital Twin Vision",[495,1086,1087],{},"OpenEPCIS v0.9.5 includes:",[517,1089,1090,1103],{},[520,1091,1092],{},[523,1093,1094,1097,1100],{},[526,1095,1096],{},"OpenEPCIS Property",[526,1098,1099],{},"UNTP Equivalent",[526,1101,1102],{},"Description",[541,1104,1105,1120,1135,1150,1165,1180,1195,1210,1225,1240,1255],{},[523,1106,1107,1112,1117],{},[546,1108,1109],{},[668,1110,1111],{},"dpp:carbonFootprintTotal",[546,1113,1114],{},[668,1115,1116],{},"untp:carbonFootprint",[546,1118,1119],{},"Total emissions (kg CO2e)",[523,1121,1122,1127,1132],{},[546,1123,1124],{},[668,1125,1126],{},"dpp:recycledContent",[546,1128,1129],{},[668,1130,1131],{},"untp:recycledContent",[546,1133,1134],{},"Recycled material fraction (0-1)",[523,1136,1137,1142,1147],{},[546,1138,1139],{},[668,1140,1141],{},"dpp:recyclableContent",[546,1143,1144],{},[668,1145,1146],{},"untp:recyclableContent",[546,1148,1149],{},"Recyclable fraction (0-1)",[523,1151,1152,1157,1162],{},[546,1153,1154],{},[668,1155,1156],{},"dpp:massFraction",[546,1158,1159],{},[668,1160,1161],{},"untp:massFraction",[546,1163,1164],{},"Material mass proportion (0-1)",[523,1166,1167,1172,1177],{},[546,1168,1169],{},[668,1170,1171],{},"dpp:declaredUnit",[546,1173,1174],{},[668,1175,1176],{},"untp:declaredUnit",[546,1178,1179],{},"Unit for carbon footprint",[523,1181,1182,1187,1192],{},[546,1183,1184],{},[668,1185,1186],{},"dpp:utilityFactor",[546,1188,1189],{},[668,1190,1191],{},"untp:utilityFactor",[546,1193,1194],{},"Durability multiplier",[523,1196,1197,1202,1207],{},[546,1198,1199],{},[668,1200,1201],{},"dpp:verifiedRatio",[546,1203,1204],{},[668,1205,1206],{},"untp:verifiedRatio",[546,1208,1209],{},"Supply chain verification (0-1)",[523,1211,1212,1217,1222],{},[546,1213,1214],{},[668,1215,1216],{},"dpp:primarySourcedRatio",[546,1218,1219],{},[668,1220,1221],{},"untp:primarySourcedRatio",[546,1223,1224],{},"Direct measurement ratio (0-1)",[523,1226,1227,1232,1237],{},[546,1228,1229],{},[668,1230,1231],{},"dpp:materialCircularityIndicator",[546,1233,1234],{},[668,1235,1236],{},"untp:materialCircularityIndicator",[546,1238,1239],{},"MCI score (0-1)",[523,1241,1242,1247,1252],{},[546,1243,1244],{},[668,1245,1246],{},"dpp:operationalScope",[546,1248,1249],{},[668,1250,1251],{},"untp:operationalScope",[546,1253,1254],{},"CradleToGate / CradleToGrave",[523,1256,1257,1262,1267],{},[546,1258,1259],{},[668,1260,1261],{},"dpp:granularityLevel",[546,1263,1264],{},[668,1265,1266],{},"untp:granularityLevel",[546,1268,1269],{},"ProductClass / Batch / Item",[640,1271,1273],{"id":1272},"cirpass2-ready","CIRPASS2-Ready",[495,1275,1276,1277,1281],{},"OpenEPCIS meets CIRPASS2 pilot requirements for Digital Product Passports. See the ",[650,1278,1280],{"href":860,"rel":1279},[654],"CIRPASS2 Coverage documentation"," for detailed analysis.",[640,1283,1285],{"id":1284},"espr-compliant","ESPR-Compliant",[495,1287,1288],{},"Full coverage of EU Ecodesign for Sustainable Products Regulation 2024/1781:",[925,1290,1291,1303,1312,1321],{},[889,1292,1293,1296,1297,1070,1300],{},[505,1294,1295],{},"Article 7"," - Performance & durability via ",[668,1298,1299],{},"dpp:PerformanceInfo",[668,1301,1302],{},"dpp:RepairabilityInfo",[889,1304,1305,1308,1309],{},[505,1306,1307],{},"Article 8"," - Substances of concern via ",[668,1310,1311],{},"dpp:SubstanceOfConcern",[889,1313,1314,1317,1318],{},[505,1315,1316],{},"Article 9"," - Access rights via ",[668,1319,1320],{},"dpp:AccessRights",[889,1322,1323,1326,1327],{},[505,1324,1325],{},"Article 77"," - Economic operator registration via ",[668,1328,1329],{},"dpp:economicOperatorId",[490,1331,1333],{"id":1332},"value-convention","Value Convention",[495,1335,1336,1337,1340],{},"All ratio and fraction properties use the ",[505,1338,1339],{},"0-1 decimal scale"," (aligned with UNTP):",[662,1342,1344],{"className":664,"code":1343,"language":60,"meta":666,"style":666},"{\n  \"recycledContent\": 0.45,\n  \"massFraction\": 0.15,\n  \"verifiedRatio\": 0.80\n}\n",[668,1345,1346,1350,1366,1382,1396],{"__ignoreMap":666},[671,1347,1348],{"class":673,"line":674},[671,1349,678],{"class":677},[671,1351,1352,1354,1357,1359,1361,1364],{"class":673,"line":681},[671,1353,685],{"class":684},[671,1355,1356],{"class":688},"recycledContent",[671,1358,692],{"class":684},[671,1360,695],{"class":677},[671,1362,1363],{"class":817}," 0.45",[671,1365,714],{"class":677},[671,1367,1368,1370,1373,1375,1377,1380],{"class":673,"line":701},[671,1369,685],{"class":684},[671,1371,1372],{"class":688},"massFraction",[671,1374,692],{"class":684},[671,1376,695],{"class":677},[671,1378,1379],{"class":817}," 0.15",[671,1381,714],{"class":677},[671,1383,1384,1386,1389,1391,1393],{"class":673,"line":717},[671,1385,685],{"class":684},[671,1387,1388],{"class":688},"verifiedRatio",[671,1390,692],{"class":684},[671,1392,695],{"class":677},[671,1394,1395],{"class":817}," 0.80\n",[671,1397,1398],{"class":673,"line":729},[671,1399,830],{"class":677},[495,1401,1402],{},"This means:",[925,1404,1405,1411,1417],{},[889,1406,1407,1410],{},[668,1408,1409],{},"0.45"," = 45%",[889,1412,1413,1416],{},[668,1414,1415],{},"0.15"," = 15%",[889,1418,1419,1422],{},[668,1420,1421],{},"0.80"," = 80%",[495,1424,1425,1426,1429],{},"This enables ",[505,1427,1428],{},"direct interoperability with UNTP"," without any value conversion.",[490,1431,1433],{"id":1432},"untp-bridge-context","UNTP Bridge Context",[495,1435,1436,1437,1440],{},"The ",[668,1438,1439],{},"untp-bridge-context.jsonld"," allows UNTP-style JSON-LD documents to be processed using OpenEPCIS vocabulary:",[662,1442,1444],{"className":664,"code":1443,"language":60,"meta":666,"style":666},"{\n  \"@context\": [\n    \"https://ref.openepcis.io/extensions/common/core/context\",\n    \"https://ref.openepcis.io/extensions/common/interop/untp-bridge-context.jsonld\"\n  ],\n  \"carbonFootprint\": 42.5,\n  \"recycledContent\": 0.45,\n  \"recyclableContent\": 0.80\n}\n",[668,1445,1446,1450,1462,1473,1482,1486,1501,1515,1528],{"__ignoreMap":666},[671,1447,1448],{"class":673,"line":674},[671,1449,678],{"class":677},[671,1451,1452,1454,1456,1458,1460],{"class":673,"line":681},[671,1453,685],{"class":684},[671,1455,689],{"class":688},[671,1457,692],{"class":684},[671,1459,695],{"class":677},[671,1461,698],{"class":677},[671,1463,1464,1466,1469,1471],{"class":673,"line":701},[671,1465,705],{"class":704},[671,1467,1468],{"class":708},"https://ref.openepcis.io/extensions/common/core/context",[671,1470,692],{"class":704},[671,1472,714],{"class":677},[671,1474,1475,1477,1480],{"class":673,"line":717},[671,1476,705],{"class":704},[671,1478,1479],{"class":708},"https://ref.openepcis.io/extensions/common/interop/untp-bridge-context.jsonld",[671,1481,737],{"class":704},[671,1483,1484],{"class":673,"line":729},[671,1485,743],{"class":677},[671,1487,1488,1490,1492,1494,1496,1499],{"class":673,"line":740},[671,1489,685],{"class":684},[671,1491,810],{"class":688},[671,1493,692],{"class":684},[671,1495,695],{"class":677},[671,1497,1498],{"class":817}," 42.5",[671,1500,714],{"class":677},[671,1502,1503,1505,1507,1509,1511,1513],{"class":673,"line":746},[671,1504,685],{"class":684},[671,1506,1356],{"class":688},[671,1508,692],{"class":684},[671,1510,695],{"class":677},[671,1512,1363],{"class":817},[671,1514,714],{"class":677},[671,1516,1517,1519,1522,1524,1526],{"class":673,"line":768},[671,1518,685],{"class":684},[671,1520,1521],{"class":688},"recyclableContent",[671,1523,692],{"class":684},[671,1525,695],{"class":677},[671,1527,1395],{"class":817},[671,1529,1530],{"class":673,"line":783},[671,1531,830],{"class":677},[640,1533,1535],{"id":1534},"bridge-context-mappings","Bridge Context Mappings",[495,1537,1538],{},"The bridge context maps UNTP-style names to OpenEPCIS URIs:",[517,1540,1541,1553],{},[520,1542,1543],{},[523,1544,1545,1548,1551],{},[526,1546,1547],{},"UNTP Style",[526,1549,1550],{},"Maps To",[526,1552,1102],{},[541,1554,1555,1568,1581,1594,1607,1621,1635,1648,1663,1678],{},[523,1556,1557,1561,1565],{},[546,1558,1559],{},[668,1560,810],{},[546,1562,1563],{},[668,1564,1111],{},[546,1566,1567],{},"Total carbon emissions",[523,1569,1570,1574,1578],{},[546,1571,1572],{},[668,1573,1356],{},[546,1575,1576],{},[668,1577,1126],{},[546,1579,1580],{},"Recycled material ratio",[523,1582,1583,1587,1591],{},[546,1584,1585],{},[668,1586,1521],{},[546,1588,1589],{},[668,1590,1141],{},[546,1592,1593],{},"Recyclable material ratio",[523,1595,1596,1600,1604],{},[546,1597,1598],{},[668,1599,1372],{},[546,1601,1602],{},[668,1603,1156],{},[546,1605,1606],{},"Mass proportion",[523,1608,1609,1614,1618],{},[546,1610,1611],{},[668,1612,1613],{},"declaredUnit",[546,1615,1616],{},[668,1617,1171],{},[546,1619,1620],{},"Carbon footprint unit",[523,1622,1623,1628,1632],{},[546,1624,1625],{},[668,1626,1627],{},"utilityFactor",[546,1629,1630],{},[668,1631,1186],{},[546,1633,1634],{},"Durability factor",[523,1636,1637,1641,1645],{},[546,1638,1639],{},[668,1640,1388],{},[546,1642,1643],{},[668,1644,1201],{},[546,1646,1647],{},"Verification ratio",[523,1649,1650,1655,1660],{},[546,1651,1652],{},[668,1653,1654],{},"CircularityPerformance",[546,1656,1657],{},[668,1658,1659],{},"dpp:CircularityPerformance",[546,1661,1662],{},"Circularity class",[523,1664,1665,1670,1675],{},[546,1666,1667],{},[668,1668,1669],{},"EmissionsPerformance",[546,1671,1672],{},[668,1673,1674],{},"dpp:EmissionsPerformance",[546,1676,1677],{},"Emissions class",[523,1679,1680,1685,1690],{},[546,1681,1682],{},[668,1683,1684],{},"TraceabilityPerformance",[546,1686,1687],{},[668,1688,1689],{},"dpp:TraceabilityPerformance",[546,1691,1692],{},"Traceability class",[490,1694,1696],{"id":1695},"new-classes-untp-aligned","New Classes (UNTP-Aligned)",[495,1698,1699],{},"OpenEPCIS v0.9.5 introduces UNTP-aligned performance classes:",[640,1701,1654],{"id":1702},"circularityperformance",[495,1704,1705],{},"Container for circularity metrics:",[662,1707,1709],{"className":664,"code":1708,"language":60,"meta":666,"style":666},"{\n  \"@type\": \"dpp:CircularityPerformance\",\n  \"dpp:recyclableContent\": 0.80,\n  \"dpp:recycledContent\": 0.45,\n  \"dpp:utilityFactor\": 1.2,\n  \"dpp:materialCircularityIndicator\": 0.65\n}\n",[668,1710,1711,1715,1734,1749,1763,1778,1791],{"__ignoreMap":666},[671,1712,1713],{"class":673,"line":674},[671,1714,678],{"class":677},[671,1716,1717,1719,1722,1724,1726,1728,1730,1732],{"class":673,"line":681},[671,1718,685],{"class":684},[671,1720,1721],{"class":688},"@type",[671,1723,692],{"class":684},[671,1725,695],{"class":677},[671,1727,758],{"class":704},[671,1729,1659],{"class":708},[671,1731,692],{"class":704},[671,1733,714],{"class":677},[671,1735,1736,1738,1740,1742,1744,1747],{"class":673,"line":701},[671,1737,685],{"class":684},[671,1739,1141],{"class":688},[671,1741,692],{"class":684},[671,1743,695],{"class":677},[671,1745,1746],{"class":817}," 0.80",[671,1748,714],{"class":677},[671,1750,1751,1753,1755,1757,1759,1761],{"class":673,"line":717},[671,1752,685],{"class":684},[671,1754,1126],{"class":688},[671,1756,692],{"class":684},[671,1758,695],{"class":677},[671,1760,1363],{"class":817},[671,1762,714],{"class":677},[671,1764,1765,1767,1769,1771,1773,1776],{"class":673,"line":729},[671,1766,685],{"class":684},[671,1768,1186],{"class":688},[671,1770,692],{"class":684},[671,1772,695],{"class":677},[671,1774,1775],{"class":817}," 1.2",[671,1777,714],{"class":677},[671,1779,1780,1782,1784,1786,1788],{"class":673,"line":740},[671,1781,685],{"class":684},[671,1783,1231],{"class":688},[671,1785,692],{"class":684},[671,1787,695],{"class":677},[671,1789,1790],{"class":817}," 0.65\n",[671,1792,1793],{"class":673,"line":746},[671,1794,830],{"class":677},[640,1796,1669],{"id":1797},"emissionsperformance",[495,1799,1800],{},"Container for greenhouse gas emissions data:",[662,1802,1804],{"className":664,"code":1803,"language":60,"meta":666,"style":666},"{\n  \"@type\": \"dpp:EmissionsPerformance\",\n  \"dpp:carbonFootprintTotal\": 42.5,\n  \"dpp:declaredUnit\": \"kg CO2e/unit\",\n  \"dpp:operationalScope\": {\"@id\": \"dpp:CradleToGate\"},\n  \"dpp:primarySourcedRatio\": 0.75\n}\n",[668,1805,1806,1810,1828,1842,1861,1893,1906],{"__ignoreMap":666},[671,1807,1808],{"class":673,"line":674},[671,1809,678],{"class":677},[671,1811,1812,1814,1816,1818,1820,1822,1824,1826],{"class":673,"line":681},[671,1813,685],{"class":684},[671,1815,1721],{"class":688},[671,1817,692],{"class":684},[671,1819,695],{"class":677},[671,1821,758],{"class":704},[671,1823,1674],{"class":708},[671,1825,692],{"class":704},[671,1827,714],{"class":677},[671,1829,1830,1832,1834,1836,1838,1840],{"class":673,"line":701},[671,1831,685],{"class":684},[671,1833,1111],{"class":688},[671,1835,692],{"class":684},[671,1837,695],{"class":677},[671,1839,1498],{"class":817},[671,1841,714],{"class":677},[671,1843,1844,1846,1848,1850,1852,1854,1857,1859],{"class":673,"line":717},[671,1845,685],{"class":684},[671,1847,1171],{"class":688},[671,1849,692],{"class":684},[671,1851,695],{"class":677},[671,1853,758],{"class":704},[671,1855,1856],{"class":708},"kg CO2e/unit",[671,1858,692],{"class":704},[671,1860,714],{"class":677},[671,1862,1863,1865,1867,1869,1871,1874,1876,1879,1881,1883,1885,1888,1890],{"class":673,"line":729},[671,1864,685],{"class":684},[671,1866,1246],{"class":688},[671,1868,692],{"class":684},[671,1870,695],{"class":677},[671,1872,1873],{"class":677}," {",[671,1875,692],{"class":684},[671,1877,1878],{"class":788},"@id",[671,1880,692],{"class":684},[671,1882,695],{"class":677},[671,1884,758],{"class":704},[671,1886,1887],{"class":708},"dpp:CradleToGate",[671,1889,692],{"class":704},[671,1891,1892],{"class":677},"},\n",[671,1894,1895,1897,1899,1901,1903],{"class":673,"line":740},[671,1896,685],{"class":684},[671,1898,1216],{"class":688},[671,1900,692],{"class":684},[671,1902,695],{"class":677},[671,1904,1905],{"class":817}," 0.75\n",[671,1907,1908],{"class":673,"line":746},[671,1909,830],{"class":677},[640,1911,1684],{"id":1912},"traceabilityperformance",[495,1914,1915],{},"Supply chain verification metrics:",[662,1917,1919],{"className":664,"code":1918,"language":60,"meta":666,"style":666},"{\n  \"@type\": \"dpp:TraceabilityPerformance\",\n  \"dpp:verifiedRatio\": 0.80\n}\n",[668,1920,1921,1925,1943,1955],{"__ignoreMap":666},[671,1922,1923],{"class":673,"line":674},[671,1924,678],{"class":677},[671,1926,1927,1929,1931,1933,1935,1937,1939,1941],{"class":673,"line":681},[671,1928,685],{"class":684},[671,1930,1721],{"class":688},[671,1932,692],{"class":684},[671,1934,695],{"class":677},[671,1936,758],{"class":704},[671,1938,1689],{"class":708},[671,1940,692],{"class":704},[671,1942,714],{"class":677},[671,1944,1945,1947,1949,1951,1953],{"class":673,"line":701},[671,1946,685],{"class":684},[671,1948,1201],{"class":688},[671,1950,692],{"class":684},[671,1952,695],{"class":677},[671,1954,1395],{"class":817},[671,1956,1957],{"class":673,"line":717},[671,1958,830],{"class":677},[490,1960,1962],{"id":1961},"enumerations","Enumerations",[640,1964,1966],{"id":1965},"operationalscope","OperationalScope",[495,1968,1969],{},"Lifecycle boundary for emissions calculation:",[517,1971,1972,1981],{},[520,1973,1974],{},[523,1975,1976,1979],{},[526,1977,1978],{},"Value",[526,1980,1102],{},[541,1982,1983,1992],{},[523,1984,1985,1989],{},[546,1986,1987],{},[668,1988,1887],{},[546,1990,1991],{},"Raw material extraction through manufacturing",[523,1993,1994,1999],{},[546,1995,1996],{},[668,1997,1998],{},"dpp:CradleToGrave",[546,2000,2001],{},"Full lifecycle including use and end-of-life",[640,2003,2005],{"id":2004},"granularitylevel","GranularityLevel",[495,2007,2008],{},"DPP data specificity level:",[517,2010,2011,2019],{},[520,2012,2013],{},[523,2014,2015,2017],{},[526,2016,1978],{},[526,2018,1102],{},[541,2020,2021,2031,2041],{},[523,2022,2023,2028],{},[546,2024,2025],{},[668,2026,2027],{},"dpp:ProductClass",[546,2029,2030],{},"DPP applies to all products of this type/model",[523,2032,2033,2038],{},[546,2034,2035],{},[668,2036,2037],{},"dpp:Batch",[546,2039,2040],{},"DPP applies to a specific production batch",[523,2042,2043,2048],{},[546,2044,2045],{},[668,2046,2047],{},"dpp:Item",[546,2049,2050],{},"DPP applies to an individual serialized product",[490,2052,2054],{"id":2053},"validation","Validation",[640,2056,2058],{"id":2057},"shacl-shapes","SHACL Shapes",[495,2060,2061,2062,695],{},"SHACL validation shapes are available at ",[650,2063,2066],{"href":2064,"rel":2065},"https://ref.openepcis.io/extensions/common/core/dpp-core-shacl.ttl",[654],[668,2067,2064],{},[925,2069,2070,2076,2081,2086,2091],{},[889,2071,2072,2075],{},[505,2073,2074],{},"Value range constraints"," - 0-1 for all fractions",[889,2077,2078],{},[505,2079,2080],{},"Required property validation",[889,2082,2083],{},[505,2084,2085],{},"Cardinality constraints",[889,2087,2088],{},[505,2089,2090],{},"Enumeration validation",[889,2092,2093,2096],{},[505,2094,2095],{},"Format patterns"," - CAS numbers, EC numbers, country codes",[495,2098,2099],{},"Example constraint for fraction values:",[662,2101,2105],{"className":2102,"code":2103,"language":2104,"meta":666,"style":666},"language-turtle shiki shiki-themes material-theme-lighter github-light github-dark monokai","sh:property [\n    sh:path dpp:recyclableContent ;\n    sh:datatype xsd:decimal ;\n    sh:minInclusive 0 ;\n    sh:maxInclusive 1 ;\n    sh:message \"recyclableContent must be between 0 and 1\"@en\n] .\n","turtle",[668,2106,2107,2112,2117,2122,2127,2132,2137],{"__ignoreMap":666},[671,2108,2109],{"class":673,"line":674},[671,2110,2111],{},"sh:property [\n",[671,2113,2114],{"class":673,"line":681},[671,2115,2116],{},"    sh:path dpp:recyclableContent ;\n",[671,2118,2119],{"class":673,"line":701},[671,2120,2121],{},"    sh:datatype xsd:decimal ;\n",[671,2123,2124],{"class":673,"line":717},[671,2125,2126],{},"    sh:minInclusive 0 ;\n",[671,2128,2129],{"class":673,"line":729},[671,2130,2131],{},"    sh:maxInclusive 1 ;\n",[671,2133,2134],{"class":673,"line":740},[671,2135,2136],{},"    sh:message \"recyclableContent must be between 0 and 1\"@en\n",[671,2138,2139],{"class":673,"line":746},[671,2140,2141],{},"] .\n",[640,2143,2145],{"id":2144},"json-schema","JSON Schema",[495,2147,2148,2149,695],{},"JSON Schema 2020-12 is available at ",[650,2150,2153],{"href":2151,"rel":2152},"https://ref.openepcis.io/extensions/common/core/dpp-core-json-schema.json",[654],[668,2154,2151],{},[925,2156,2157,2163,2169,2174],{},[889,2158,2159,2162],{},[505,2160,2161],{},"Type definitions"," for all DPP classes",[889,2164,2165,2168],{},[505,2166,2167],{},"Value format validation"," - patterns for identifiers",[889,2170,2171],{},[505,2172,2173],{},"Required field enforcement",[889,2175,2176],{},[505,2177,2178],{},"Enumeration constraints",[495,2180,2181],{},"Example fraction definition:",[662,2183,2185],{"className":664,"code":2184,"language":60,"meta":666,"style":666},"{\n  \"Fraction\": {\n    \"type\": \"number\",\n    \"minimum\": 0,\n    \"maximum\": 1,\n    \"description\": \"A fraction/ratio value between 0 and 1 (e.g., 0.45 = 45%)\"\n  }\n}\n",[668,2186,2187,2191,2204,2224,2240,2256,2274,2278],{"__ignoreMap":666},[671,2188,2189],{"class":673,"line":674},[671,2190,678],{"class":677},[671,2192,2193,2195,2198,2200,2202],{"class":673,"line":681},[671,2194,685],{"class":684},[671,2196,2197],{"class":688},"Fraction",[671,2199,692],{"class":684},[671,2201,695],{"class":677},[671,2203,780],{"class":677},[671,2205,2206,2208,2211,2213,2215,2217,2220,2222],{"class":673,"line":701},[671,2207,705],{"class":684},[671,2209,2210],{"class":788},"type",[671,2212,692],{"class":684},[671,2214,695],{"class":677},[671,2216,758],{"class":704},[671,2218,2219],{"class":708},"number",[671,2221,692],{"class":704},[671,2223,714],{"class":677},[671,2225,2226,2228,2231,2233,2235,2238],{"class":673,"line":717},[671,2227,705],{"class":684},[671,2229,2230],{"class":788},"minimum",[671,2232,692],{"class":684},[671,2234,695],{"class":677},[671,2236,2237],{"class":817}," 0",[671,2239,714],{"class":677},[671,2241,2242,2244,2247,2249,2251,2254],{"class":673,"line":729},[671,2243,705],{"class":684},[671,2245,2246],{"class":788},"maximum",[671,2248,692],{"class":684},[671,2250,695],{"class":677},[671,2252,2253],{"class":817}," 1",[671,2255,714],{"class":677},[671,2257,2258,2260,2263,2265,2267,2269,2272],{"class":673,"line":740},[671,2259,705],{"class":684},[671,2261,2262],{"class":788},"description",[671,2264,692],{"class":684},[671,2266,695],{"class":677},[671,2268,758],{"class":704},[671,2270,2271],{"class":708},"A fraction/ratio value between 0 and 1 (e.g., 0.45 = 45%)",[671,2273,737],{"class":704},[671,2275,2276],{"class":673,"line":746},[671,2277,824],{"class":677},[671,2279,2280],{"class":673,"line":768},[671,2281,830],{"class":677},[490,2283,2285],{"id":2284},"espr-specific-extensions-on-top-of-untp","ESPR-specific extensions on top of UNTP",[495,2287,2288],{},"UNTP is intentionally generic; ESPR adds requirements that don't live in UNTP today. OpenEPCIS contributes those as ESPR-specific extensions in the core DPP vocabulary:",[517,2290,2291,2301],{},[520,2292,2293],{},[523,2294,2295,2298],{},[526,2296,2297],{},"Area",[526,2299,2300],{},"What OpenEPCIS adds",[541,2302,2303,2313,2323,2333,2343],{},[523,2304,2305,2310],{},[546,2306,2307],{},[505,2308,2309],{},"Operator roles",[546,2311,2312],{},"ESPR Article 77 role enumeration (Manufacturer, Importer, Distributor, …)",[523,2314,2315,2320],{},[546,2316,2317],{},[505,2318,2319],{},"Facility information",[546,2321,2322],{},"GLN, certifications, facility types",[523,2324,2325,2330],{},[546,2326,2327],{},[505,2328,2329],{},"Substances of concern",[546,2331,2332],{},"SCIP database alignment with CAS / EC numbers",[523,2334,2335,2340],{},[546,2336,2337],{},[505,2338,2339],{},"Repairability",[546,2341,2342],{},"French Repairability Index (score, class, spare parts)",[523,2344,2345,2350],{},[546,2346,2347],{},[505,2348,2349],{},"Access control",[546,2351,2352],{},"ESPR Article 9 three-tier access levels",[490,2354,2356],{"id":2355},"licensing","Licensing",[495,2358,2359,2360,863],{},"OpenEPCIS DPP-Ready is released under ",[505,2361,2362],{},"Apache License 2.0",[640,2364,2366],{"id":2365},"third-party-acknowledgments","Third-Party Acknowledgments",[517,2368,2369,2382],{},[520,2370,2371],{},[523,2372,2373,2376,2379],{},[526,2374,2375],{},"Source",[526,2377,2378],{},"License",[526,2380,2381],{},"Usage",[541,2383,2384,2396,2411],{},[523,2385,2386,2390,2393],{},[546,2387,2388],{},[505,2389,993],{},[546,2391,2392],{},"GS1 IP Policy",[546,2394,2395],{},"Native foundation",[523,2397,2398,2403,2406],{},[546,2399,2400],{},[505,2401,2402],{},"UN Transparency Protocol",[546,2404,2405],{},"GPL-3.0",[546,2407,2408,2409],{},"Semantic alignment via ",[668,2410,871],{},[523,2412,2413,2417,2420],{},[546,2414,2415],{},[505,2416,607],{},[546,2418,2419],{},"CC BY 4.0",[546,2421,2422],{},"Requirements documentation",[495,2424,2425,2426,2431],{},"See ",[650,2427,2430],{"href":2428,"rel":2429},"https://github.com/openepcis/openepcis-dpp-ready/blob/main/extensions/common/interop/docs/LICENSING.md",[654],"LICENSING.md"," for detailed IP analysis.",[490,2433,2435],{"id":2434},"getting-started","Getting Started",[886,2437,2438,2473,2527,2533],{},[889,2439,2440,2443,2444],{},[505,2441,2442],{},"Import the DPP context"," in your JSON-LD documents:",[662,2445,2447],{"className":664,"code":2446,"language":60,"meta":666,"style":666},"{\n  \"@context\": \"https://ref.openepcis.io/extensions/common/core/context\"\n}\n",[668,2448,2449,2453,2469],{"__ignoreMap":666},[671,2450,2451],{"class":673,"line":674},[671,2452,678],{"class":677},[671,2454,2455,2457,2459,2461,2463,2465,2467],{"class":673,"line":681},[671,2456,685],{"class":684},[671,2458,689],{"class":688},[671,2460,692],{"class":684},[671,2462,695],{"class":677},[671,2464,758],{"class":704},[671,2466,1468],{"class":708},[671,2468,737],{"class":704},[671,2470,2471],{"class":673,"line":701},[671,2472,830],{"class":677},[889,2474,2475,2478,2479],{},[505,2476,2477],{},"For UNTP-style property names",", add the bridge context:",[662,2480,2482],{"className":664,"code":2481,"language":60,"meta":666,"style":666},"{\n  \"@context\": [\n    \"https://ref.openepcis.io/extensions/common/core/context\",\n    \"https://ref.openepcis.io/extensions/common/interop/untp-bridge-context.jsonld\"\n  ]\n}\n",[668,2483,2484,2488,2500,2510,2518,2523],{"__ignoreMap":666},[671,2485,2486],{"class":673,"line":674},[671,2487,678],{"class":677},[671,2489,2490,2492,2494,2496,2498],{"class":673,"line":681},[671,2491,685],{"class":684},[671,2493,689],{"class":688},[671,2495,692],{"class":684},[671,2497,695],{"class":677},[671,2499,698],{"class":677},[671,2501,2502,2504,2506,2508],{"class":673,"line":701},[671,2503,705],{"class":704},[671,2505,1468],{"class":708},[671,2507,692],{"class":704},[671,2509,714],{"class":677},[671,2511,2512,2514,2516],{"class":673,"line":717},[671,2513,705],{"class":704},[671,2515,1479],{"class":708},[671,2517,737],{"class":704},[671,2519,2520],{"class":673,"line":729},[671,2521,2522],{"class":677},"  ]\n",[671,2524,2525],{"class":673,"line":740},[671,2526,830],{"class":677},[889,2528,2529,2532],{},[505,2530,2531],{},"Use 0-1 decimal scale"," for all ratio/fraction values",[889,2534,2535,2538],{},[505,2536,2537],{},"Validate"," using SHACL shapes or JSON Schema",[490,2540,2542],{"id":2541},"resources","Resources",[640,2544,10],{"id":2545},"documentation",[925,2547,2548,2554,2559,2565],{},[889,2549,2550],{},[650,2551,2553],{"href":938,"rel":2552},[654],"UNTP Mapping",[889,2555,2556],{},[650,2557,966],{"href":945,"rel":2558},[654],[889,2560,2561],{},[650,2562,2564],{"href":860,"rel":2563},[654],"CIRPASS2 Coverage",[889,2566,2567],{},[650,2568,2356],{"href":2428,"rel":2569},[654],[640,2571,2573],{"id":2572},"external-standards","External Standards",[925,2575,2576,2583,2589,2595],{},[889,2577,2578,2582],{},[650,2579,626],{"href":2580,"rel":2581},"https://opensource.unicc.org/un/unece/uncefact/spec-untp",[654]," — moved to GitLab in Nov 2025; the old GitHub repo is archived",[889,2584,2585],{},[650,2586,993],{"href":2587,"rel":2588},"https://www.gs1.org/voc/",[654],[889,2590,2591],{},[650,2592,2594],{"href":850,"rel":2593},[654],"CIRPASS2 Project",[889,2596,2597],{},[650,2598,1034],{"href":2599,"rel":2600},"https://eur-lex.europa.eu/eli/reg/2024/1781",[654],[2602,2603,2604],"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 .saDeg, html code.shiki .saDeg{--shiki-light:#39ADB5;--shiki-light-font-style:inherit;--shiki-default:#005CC5;--shiki-default-font-style:inherit;--shiki-dark:#79B8FF;--shiki-dark-font-style:inherit;--shiki-sepia:#66D9EF;--shiki-sepia-font-style:italic}html pre.shiki code .sEff5, html code.shiki .sEff5{--shiki-light:#9C3EDA;--shiki-light-font-style:inherit;--shiki-default:#005CC5;--shiki-default-font-style:inherit;--shiki-dark:#79B8FF;--shiki-dark-font-style:inherit;--shiki-sepia:#66D9EF;--shiki-sepia-font-style:italic}html pre.shiki code .sh1VR, html code.shiki .sh1VR{--shiki-light:#39ADB5;--shiki-default:#032F62;--shiki-dark:#9ECBFF;--shiki-sepia:#CFCFC2}html pre.shiki code .sINAO, html code.shiki .sINAO{--shiki-light:#91B859;--shiki-default:#032F62;--shiki-dark:#9ECBFF;--shiki-sepia:#CFCFC2}html pre.shiki code .s_MOj, html code.shiki .s_MOj{--shiki-light:#E2931D;--shiki-light-font-style:inherit;--shiki-default:#005CC5;--shiki-default-font-style:inherit;--shiki-dark:#79B8FF;--shiki-dark-font-style:inherit;--shiki-sepia:#66D9EF;--shiki-sepia-font-style:italic}html pre.shiki code .sYThS, html code.shiki .sYThS{--shiki-light:#F76D47;--shiki-default:#005CC5;--shiki-dark:#79B8FF;--shiki-sepia:#AE81FF}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);}",{"title":666,"searchDepth":681,"depth":681,"links":2606},[2607,2608,2612,2613,2619,2620,2623,2628,2632,2636,2637,2640,2641],{"id":492,"depth":681,"text":493},{"id":511,"depth":681,"text":512,"children":2609},[2610,2611],{"id":642,"depth":701,"text":643},{"id":880,"depth":701,"text":881},{"id":917,"depth":681,"text":918},{"id":965,"depth":681,"text":966,"children":2614},[2615,2616,2617,2618],{"id":1043,"depth":701,"text":1044},{"id":1077,"depth":701,"text":1078},{"id":1272,"depth":701,"text":1273},{"id":1284,"depth":701,"text":1285},{"id":1332,"depth":681,"text":1333},{"id":1432,"depth":681,"text":1433,"children":2621},[2622],{"id":1534,"depth":701,"text":1535},{"id":1695,"depth":681,"text":1696,"children":2624},[2625,2626,2627],{"id":1702,"depth":701,"text":1654},{"id":1797,"depth":701,"text":1669},{"id":1912,"depth":701,"text":1684},{"id":1961,"depth":681,"text":1962,"children":2629},[2630,2631],{"id":1965,"depth":701,"text":1966},{"id":2004,"depth":701,"text":2005},{"id":2053,"depth":681,"text":2054,"children":2633},[2634,2635],{"id":2057,"depth":701,"text":2058},{"id":2144,"depth":701,"text":2145},{"id":2284,"depth":681,"text":2285},{"id":2355,"depth":681,"text":2356,"children":2638},[2639],{"id":2365,"depth":701,"text":2366},{"id":2434,"depth":681,"text":2435},{"id":2541,"depth":681,"text":2542,"children":2642},[2643,2644],{"id":2545,"depth":701,"text":10},{"id":2572,"depth":701,"text":2573},"md","2026-05-12T00:00:00.000Z",{"head":2648,"readingTime":2653},{"meta":2649},[2650],{"name":2651,"content":2652},"keywords","DPP interoperability, UNTP, UN Transparency Protocol, GS1, CIRPASS2, ESPR alignment, standards harmonization",{"text":2654,"minutes":2655,"time":2656,"words":2657},"6 min read",5.115,306900,1023,{"title":323,"tags":2659},[330,331,101,332,226,333,334],{"title":485,"description":328},{"loc":324,"lastmod":2662,"changefreq":2663,"priority":2664},"2025-02-02","monthly",0.8,"QMmHLgJZxpw0mYOSuOuzsuBtwq6LlYt_nLmoPwgHKpM",[2667],{"title":5,"path":6,"stem":7,"children":2668},[2669,2671,2676,2681,2686,2691,2696,2701,2711,2716,2721,2726,2784,2800],{"title":10,"path":6,"stem":11,"description":12,"icon":13,"tags":2670},[15,16,17,18,19,20],{"title":22,"path":23,"stem":24,"children":2672,"description":27,"icon":28,"tags":2675},[2673],{"title":22,"path":23,"stem":24,"description":27,"icon":28,"tags":2674},[16,30,31,32,33,34,35,36,37],[16,30,31,32,33,34,35,36,37],{"title":40,"path":41,"stem":42,"children":2677,"description":45,"icon":46,"tags":2680},[2678],{"title":40,"path":41,"stem":42,"description":45,"icon":46,"tags":2679},[16,30,31,32,48,49],[16,30,31,32,48,49],{"title":52,"path":53,"stem":54,"children":2682,"description":57,"icon":58,"tags":2685},[2683],{"title":52,"path":53,"stem":54,"description":57,"icon":58,"tags":2684},[16,60,61,62,63,64,65,20,66,67,68,69,70],[16,60,61,62,63,64,65,20,66,67,68,69,70],{"title":73,"path":74,"stem":75,"children":2687,"description":78,"icon":79,"tags":2690},[2688],{"title":73,"path":74,"stem":75,"description":78,"icon":79,"tags":2689},[16,31,60,61,62,63,81,65,20,82,83,84,68,69,70],[16,31,60,61,62,63,81,65,20,82,83,84,68,69,70],{"title":87,"path":88,"stem":89,"children":2692,"description":92,"icon":93,"tags":2695},[2693],{"title":87,"path":88,"stem":89,"description":92,"icon":93,"tags":2694},[16,95,96,97,98,99,20,100,101,102,103,104,105,106,107,108,109,110],[16,95,96,97,98,99,20,100,101,102,103,104,105,106,107,108,109,110],{"title":113,"path":114,"stem":115,"children":2697,"description":118,"icon":119,"tags":2700},[2698],{"title":113,"path":114,"stem":115,"description":118,"icon":119,"tags":2699},[16,121,60,61,62,63,20,122,123,124,69,70],[16,121,60,61,62,63,20,122,123,124,69,70],{"title":127,"path":128,"stem":129,"children":2702,"description":132,"icon":133,"tags":2710},[2703,2705],{"title":127,"path":128,"stem":129,"description":132,"icon":133,"tags":2704},[16,121,60,61,62,63,20,122,123,124,69,70],{"title":136,"path":137,"stem":138,"children":2706,"description":132,"icon":141,"tags":2709},[2707],{"title":136,"path":137,"stem":138,"description":132,"icon":141,"tags":2708},[16,60,61,143,20,144,145,146,34,147,148,149,150],[16,60,61,143,20,144,145,146,34,147,148,149,150],[16,121,60,61,62,63,20,122,123,124,69,70],{"title":154,"path":155,"stem":156,"children":2712,"description":159,"icon":160,"tags":2715},[2713],{"title":154,"path":155,"stem":156,"description":159,"icon":160,"tags":2714},[16,60,61,143,20,162,34,147,148,149,150],[16,60,61,143,20,162,34,147,148,149,150],{"title":165,"path":166,"stem":167,"children":2717,"description":170,"icon":171,"tags":2720},[2718],{"title":165,"path":166,"stem":167,"description":170,"icon":171,"tags":2719},[16,173,15,174,20,175,34,176,148,149,177],[16,173,15,174,20,175,34,176,148,149,177],{"title":180,"path":181,"stem":182,"children":2722,"description":185,"icon":186,"tags":2725},[2723],{"title":180,"path":181,"stem":182,"description":185,"icon":186,"tags":2724},[188,15,189,190,191,192,193,30,194,195,196,197,198,199,200,201],[188,15,189,190,191,192,193,30,194,195,196,197,198,199,200,201],{"title":204,"path":205,"stem":206,"children":2727,"description":209,"icon":210,"tags":2783},[2728,2730,2735,2744,2754,2763,2768,2770,2772,2774],{"title":204,"path":205,"stem":206,"description":209,"icon":210,"tags":2729},[212,213,214,30,215,34,216],{"title":218,"path":219,"stem":220,"children":2731,"description":223,"icon":224,"tags":2734},[2732],{"title":218,"path":219,"stem":220,"description":223,"icon":224,"tags":2733},[226,227,215,213,214],[226,227,215,213,214],{"title":230,"path":231,"stem":232,"children":2736,"description":235,"icon":236,"tags":2743},[2737,2739,2740,2741],{"title":230,"path":231,"stem":232,"description":235,"icon":236,"tags":2738},[238,239,213,30,101,34,215],{"title":241,"path":242,"stem":243,"description":244,"icon":171},{"title":246,"path":247,"stem":248,"description":249,"icon":250},{"title":252,"path":253,"stem":254,"description":255,"icon":13,"tags":2742},[238,257,258,61,259],[238,239,213,30,101,34,215],{"title":262,"path":263,"stem":264,"children":2745,"description":267,"icon":268,"tags":2753},[2746,2748,2749,2750,2751],{"title":262,"path":263,"stem":264,"description":267,"icon":268,"tags":2747},[270,271,272,213,30,101,34,215],{"title":241,"path":274,"stem":275,"description":276,"icon":277},{"title":246,"path":279,"stem":280,"description":281,"icon":277},{"title":283,"path":284,"stem":285,"description":286,"icon":277},{"title":252,"path":288,"stem":289,"description":290,"icon":13,"tags":2752},[270,257,272,292,293],[270,271,272,213,30,101,34,215],{"title":296,"path":297,"stem":298,"children":2755,"description":301,"icon":302,"tags":2762},[2756,2758,2760],{"title":296,"path":297,"stem":298,"description":301,"icon":302,"tags":2757},[304,305,306,213,215,307],{"title":241,"path":309,"stem":310,"description":311,"icon":312,"tags":2759},[304,305,306,314],{"title":252,"path":316,"stem":317,"description":318,"icon":13,"tags":2761},[304,257,305,306,320,61],[304,305,306,213,215,307],{"title":323,"path":324,"stem":325,"children":2764,"description":328,"icon":58,"tags":2767},[2765],{"title":323,"path":324,"stem":325,"description":328,"icon":58,"tags":2766},[330,331,101,332,226,333,334],[330,331,101,332,226,333,334],{"title":337,"path":338,"stem":339,"description":340,"icon":28,"tags":2769},[342,95,343,344],{"title":346,"path":347,"stem":348,"description":349,"icon":350,"tags":2771},[352,95,343],{"title":354,"path":355,"stem":356,"description":357,"icon":358,"tags":2773},[360,361,362,332],{"title":364,"path":365,"stem":366,"children":2775,"description":369,"icon":370,"tags":2782},[2776,2778,2780],{"title":364,"path":365,"stem":366,"description":369,"icon":370,"tags":2777},[372,373,374,375,376],{"title":241,"path":378,"stem":379,"description":380,"icon":171,"tags":2779},[372,314,373,374,375],{"title":252,"path":383,"stem":384,"description":385,"icon":13,"tags":2781},[372,257,387,388,61],[372,373,374,375,376],[212,213,214,30,215,34,216],{"title":392,"path":393,"stem":394,"children":2785,"description":397,"icon":398},[2786,2787,2788,2789,2790],{"title":392,"path":393,"stem":394,"description":397,"icon":398},{"title":400,"path":401,"stem":402,"description":403,"icon":404},{"title":406,"path":407,"stem":408,"description":409,"icon":410},{"title":412,"path":413,"stem":414,"description":415,"icon":416},{"title":418,"path":419,"stem":420,"children":2791,"description":423,"icon":424},[2792,2793,2794,2795,2796,2797,2798,2799],{"title":418,"path":419,"stem":420,"description":423,"icon":424},{"title":426,"path":427,"stem":428,"description":429,"icon":430},{"title":432,"path":433,"stem":434,"description":435,"icon":436},{"title":438,"path":439,"stem":440,"description":441,"icon":442},{"title":444,"path":445,"stem":446,"description":447,"icon":448},{"title":450,"path":451,"stem":452,"description":453,"icon":454},{"title":456,"path":457,"stem":458,"description":459,"icon":460},{"title":462,"path":463,"stem":464,"description":465,"icon":466},{"title":468,"path":469,"stem":470,"children":2801,"description":473,"icon":28,"tags":2804},[2802],{"title":468,"path":469,"stem":470,"description":473,"icon":28,"tags":2803},[475,476,477,478,331,479,480,481],[475,476,477,478,331,479,480,481],{"id":484,"title":485,"body":2806,"description":328,"extension":2645,"icon":58,"lastUpdated":2646,"meta":4517,"navigation":4522,"path":324,"seo":4524,"sitemap":4525,"stem":325,"__hash__":2665},{"type":487,"value":2807,"toc":4477},[2808,2810,2812,2818,2820,2822,2910,2912,2921,3041,3043,3050,3062,3070,3072,3074,3088,3093,3095,3099,3116,3120,3127,3129,3131,3189,3191,3193,3211,3213,3217,3219,3365,3367,3372,3374,3376,3404,3406,3410,3462,3464,3478,3482,3484,3488,3574,3576,3578,3712,3714,3716,3718,3720,3804,3806,3808,3910,3912,3914,3956,3958,3960,3962,3990,3992,3994,4030,4032,4034,4041,4063,4065,4097,4099,4106,4124,4126,4216,4218,4220,4272,4274,4278,4280,4326,4331,4333,4425,4427,4429,4451,4453,4475],[490,2809,493],{"id":492},[495,2811,497],{},[499,2813,2814],{"type":501},[495,2815,2816,508],{},[505,2817,507],{},[490,2819,512],{"id":511},[495,2821,515],{},[517,2823,2824,2838],{},[520,2825,2826],{},[523,2827,2828,2830,2832,2834,2836],{},[526,2829,528],{},[526,2831,531],{},[526,2833,534],{},[526,2835,507],{},[526,2837,539],{},[541,2839,2840,2854,2868,2882,2896],{},[523,2841,2842,2846,2848,2850,2852],{},[546,2843,2844],{},[505,2845,550],{},[546,2847,553],{},[546,2849,556],{},[546,2851,559],{},[546,2853,562],{},[523,2855,2856,2860,2862,2864,2866],{},[546,2857,2858],{},[505,2859,569],{},[546,2861,572],{},[546,2863,575],{},[546,2865,578],{},[546,2867,581],{},[523,2869,2870,2874,2876,2878,2880],{},[546,2871,2872],{},[505,2873,588],{},[546,2875,591],{},[546,2877,594],{},[546,2879,597],{},[546,2881,600],{},[523,2883,2884,2888,2890,2892,2894],{},[546,2885,2886],{},[505,2887,607],{},[546,2889,610],{},[546,2891,613],{},[546,2893,616],{},[546,2895,619],{},[523,2897,2898,2902,2904,2906,2908],{},[546,2899,2900],{},[505,2901,626],{},[546,2903,629],{},[546,2905,632],{},[546,2907,635],{},[546,2909,638],{},[640,2911,643],{"id":642},[495,2913,2914,648,2916,656,2919,660],{},[505,2915,569],{},[650,2917,655],{"href":652,"rel":2918},[654],[505,2920,659],{},[662,2922,2923],{"className":664,"code":665,"language":60,"meta":666,"style":666},[668,2924,2925,2929,2941,2951,2961,2969,2973,2991,3003,3021,3033,3037],{"__ignoreMap":666},[671,2926,2927],{"class":673,"line":674},[671,2928,678],{"class":677},[671,2930,2931,2933,2935,2937,2939],{"class":673,"line":681},[671,2932,685],{"class":684},[671,2934,689],{"class":688},[671,2936,692],{"class":684},[671,2938,695],{"class":677},[671,2940,698],{"class":677},[671,2942,2943,2945,2947,2949],{"class":673,"line":701},[671,2944,705],{"class":704},[671,2946,709],{"class":708},[671,2948,692],{"class":704},[671,2950,714],{"class":677},[671,2952,2953,2955,2957,2959],{"class":673,"line":717},[671,2954,705],{"class":704},[671,2956,722],{"class":708},[671,2958,692],{"class":704},[671,2960,714],{"class":677},[671,2962,2963,2965,2967],{"class":673,"line":729},[671,2964,705],{"class":704},[671,2966,734],{"class":708},[671,2968,737],{"class":704},[671,2970,2971],{"class":673,"line":740},[671,2972,743],{"class":677},[671,2974,2975,2977,2979,2981,2983,2985,2987,2989],{"class":673,"line":746},[671,2976,685],{"class":684},[671,2978,751],{"class":688},[671,2980,692],{"class":684},[671,2982,695],{"class":677},[671,2984,758],{"class":704},[671,2986,761],{"class":708},[671,2988,692],{"class":704},[671,2990,714],{"class":677},[671,2992,2993,2995,2997,2999,3001],{"class":673,"line":768},[671,2994,685],{"class":684},[671,2996,773],{"class":688},[671,2998,692],{"class":684},[671,3000,695],{"class":677},[671,3002,780],{"class":677},[671,3004,3005,3007,3009,3011,3013,3015,3017,3019],{"class":673,"line":783},[671,3006,705],{"class":684},[671,3008,789],{"class":788},[671,3010,692],{"class":684},[671,3012,695],{"class":677},[671,3014,758],{"class":704},[671,3016,798],{"class":708},[671,3018,692],{"class":704},[671,3020,714],{"class":677},[671,3022,3023,3025,3027,3029,3031],{"class":673,"line":805},[671,3024,705],{"class":684},[671,3026,810],{"class":788},[671,3028,692],{"class":684},[671,3030,695],{"class":677},[671,3032,818],{"class":817},[671,3034,3035],{"class":673,"line":821},[671,3036,824],{"class":677},[671,3038,3039],{"class":673,"line":827},[671,3040,830],{"class":677},[495,3042,833],{},[495,3044,3045,648,3047,843],{},[505,3046,588],{},[650,3048,842],{"href":840,"rel":3049},[654],[495,3051,3052,648,3054,853,3057,857,3059,863],{},[505,3053,607],{},[650,3055,852],{"href":850,"rel":3056},[654],[505,3058,856],{},[650,3060,862],{"href":860,"rel":3061},[654],[495,3063,3064,868,3066,872,3068,877],{},[505,3065,626],{},[668,3067,871],{},[650,3069,876],{"href":875},[640,3071,881],{"id":880},[495,3073,884],{},[886,3075,3076,3080,3084],{},[889,3077,3078,894],{},[505,3079,893],{},[889,3081,3082,900],{},[505,3083,899],{},[889,3085,3086,906],{},[505,3087,905],{},[662,3089,3091],{"className":3090,"code":911,"language":912},[910],[668,3092,911],{"__ignoreMap":666},[490,3094,918],{"id":917},[495,3096,3097],{},[505,3098,923],{},[925,3100,3101,3106,3111],{},[889,3102,3103],{},[650,3104,933],{"href":931,"rel":3105},[654],[889,3107,3108],{},[650,3109,940],{"href":938,"rel":3110},[654],[889,3112,3113],{},[650,3114,947],{"href":945,"rel":3115},[654],[495,3117,3118],{},[505,3119,952],{},[925,3121,3122],{},[889,3123,3124,962],{},[650,3125,961],{"href":959,"rel":3126},[654],[490,3128,966],{"id":965},[495,3130,969],{},[517,3132,3133,3143],{},[520,3134,3135],{},[523,3136,3137,3139,3141],{},[526,3138,978],{},[526,3140,981],{},[526,3142,984],{},[541,3144,3145,3157,3169,3179],{},[523,3146,3147,3151,3153],{},[546,3148,3149],{},[505,3150,993],{},[546,3152,996],{},[546,3154,999,3155],{},[668,3156,1002],{},[523,3158,3159,3163,3165],{},[546,3160,3161],{},[505,3162,626],{},[546,3164,1011],{},[546,3166,3167,1016],{},[668,3168,871],{},[523,3170,3171,3175,3177],{},[546,3172,3173],{},[505,3174,607],{},[546,3176,1025],{},[546,3178,10],{},[523,3180,3181,3185,3187],{},[546,3182,3183],{},[505,3184,1034],{},[546,3186,1037],{},[546,3188,1040],{},[640,3190,1044],{"id":1043},[495,3192,1047],{},[925,3194,3195,3199,3203],{},[889,3196,3197,1055],{},[505,3198,1054],{},[889,3200,3201,1061],{},[505,3202,1060],{},[889,3204,3205,1066,3207,1070,3209,1074],{},[505,3206,993],{},[668,3208,1069],{},[668,3210,1073],{},[640,3212,1078],{"id":1077},[495,3214,1081,3215,863],{},[650,3216,1084],{"href":469},[495,3218,1087],{},[517,3220,3221,3231],{},[520,3222,3223],{},[523,3224,3225,3227,3229],{},[526,3226,1096],{},[526,3228,1099],{},[526,3230,1102],{},[541,3232,3233,3245,3257,3269,3281,3293,3305,3317,3329,3341,3353],{},[523,3234,3235,3239,3243],{},[546,3236,3237],{},[668,3238,1111],{},[546,3240,3241],{},[668,3242,1116],{},[546,3244,1119],{},[523,3246,3247,3251,3255],{},[546,3248,3249],{},[668,3250,1126],{},[546,3252,3253],{},[668,3254,1131],{},[546,3256,1134],{},[523,3258,3259,3263,3267],{},[546,3260,3261],{},[668,3262,1141],{},[546,3264,3265],{},[668,3266,1146],{},[546,3268,1149],{},[523,3270,3271,3275,3279],{},[546,3272,3273],{},[668,3274,1156],{},[546,3276,3277],{},[668,3278,1161],{},[546,3280,1164],{},[523,3282,3283,3287,3291],{},[546,3284,3285],{},[668,3286,1171],{},[546,3288,3289],{},[668,3290,1176],{},[546,3292,1179],{},[523,3294,3295,3299,3303],{},[546,3296,3297],{},[668,3298,1186],{},[546,3300,3301],{},[668,3302,1191],{},[546,3304,1194],{},[523,3306,3307,3311,3315],{},[546,3308,3309],{},[668,3310,1201],{},[546,3312,3313],{},[668,3314,1206],{},[546,3316,1209],{},[523,3318,3319,3323,3327],{},[546,3320,3321],{},[668,3322,1216],{},[546,3324,3325],{},[668,3326,1221],{},[546,3328,1224],{},[523,3330,3331,3335,3339],{},[546,3332,3333],{},[668,3334,1231],{},[546,3336,3337],{},[668,3338,1236],{},[546,3340,1239],{},[523,3342,3343,3347,3351],{},[546,3344,3345],{},[668,3346,1246],{},[546,3348,3349],{},[668,3350,1251],{},[546,3352,1254],{},[523,3354,3355,3359,3363],{},[546,3356,3357],{},[668,3358,1261],{},[546,3360,3361],{},[668,3362,1266],{},[546,3364,1269],{},[640,3366,1273],{"id":1272},[495,3368,1276,3369,1281],{},[650,3370,1280],{"href":860,"rel":3371},[654],[640,3373,1285],{"id":1284},[495,3375,1288],{},[925,3377,3378,3386,3392,3398],{},[889,3379,3380,1296,3382,1070,3384],{},[505,3381,1295],{},[668,3383,1299],{},[668,3385,1302],{},[889,3387,3388,1308,3390],{},[505,3389,1307],{},[668,3391,1311],{},[889,3393,3394,1317,3396],{},[505,3395,1316],{},[668,3397,1320],{},[889,3399,3400,1326,3402],{},[505,3401,1325],{},[668,3403,1329],{},[490,3405,1333],{"id":1332},[495,3407,1336,3408,1340],{},[505,3409,1339],{},[662,3411,3412],{"className":664,"code":1343,"language":60,"meta":666,"style":666},[668,3413,3414,3418,3432,3446,3458],{"__ignoreMap":666},[671,3415,3416],{"class":673,"line":674},[671,3417,678],{"class":677},[671,3419,3420,3422,3424,3426,3428,3430],{"class":673,"line":681},[671,3421,685],{"class":684},[671,3423,1356],{"class":688},[671,3425,692],{"class":684},[671,3427,695],{"class":677},[671,3429,1363],{"class":817},[671,3431,714],{"class":677},[671,3433,3434,3436,3438,3440,3442,3444],{"class":673,"line":701},[671,3435,685],{"class":684},[671,3437,1372],{"class":688},[671,3439,692],{"class":684},[671,3441,695],{"class":677},[671,3443,1379],{"class":817},[671,3445,714],{"class":677},[671,3447,3448,3450,3452,3454,3456],{"class":673,"line":717},[671,3449,685],{"class":684},[671,3451,1388],{"class":688},[671,3453,692],{"class":684},[671,3455,695],{"class":677},[671,3457,1395],{"class":817},[671,3459,3460],{"class":673,"line":729},[671,3461,830],{"class":677},[495,3463,1402],{},[925,3465,3466,3470,3474],{},[889,3467,3468,1410],{},[668,3469,1409],{},[889,3471,3472,1416],{},[668,3473,1415],{},[889,3475,3476,1422],{},[668,3477,1421],{},[495,3479,1425,3480,1429],{},[505,3481,1428],{},[490,3483,1433],{"id":1432},[495,3485,1436,3486,1440],{},[668,3487,1439],{},[662,3489,3490],{"className":664,"code":1443,"language":60,"meta":666,"style":666},[668,3491,3492,3496,3508,3518,3526,3530,3544,3558,3570],{"__ignoreMap":666},[671,3493,3494],{"class":673,"line":674},[671,3495,678],{"class":677},[671,3497,3498,3500,3502,3504,3506],{"class":673,"line":681},[671,3499,685],{"class":684},[671,3501,689],{"class":688},[671,3503,692],{"class":684},[671,3505,695],{"class":677},[671,3507,698],{"class":677},[671,3509,3510,3512,3514,3516],{"class":673,"line":701},[671,3511,705],{"class":704},[671,3513,1468],{"class":708},[671,3515,692],{"class":704},[671,3517,714],{"class":677},[671,3519,3520,3522,3524],{"class":673,"line":717},[671,3521,705],{"class":704},[671,3523,1479],{"class":708},[671,3525,737],{"class":704},[671,3527,3528],{"class":673,"line":729},[671,3529,743],{"class":677},[671,3531,3532,3534,3536,3538,3540,3542],{"class":673,"line":740},[671,3533,685],{"class":684},[671,3535,810],{"class":688},[671,3537,692],{"class":684},[671,3539,695],{"class":677},[671,3541,1498],{"class":817},[671,3543,714],{"class":677},[671,3545,3546,3548,3550,3552,3554,3556],{"class":673,"line":746},[671,3547,685],{"class":684},[671,3549,1356],{"class":688},[671,3551,692],{"class":684},[671,3553,695],{"class":677},[671,3555,1363],{"class":817},[671,3557,714],{"class":677},[671,3559,3560,3562,3564,3566,3568],{"class":673,"line":768},[671,3561,685],{"class":684},[671,3563,1521],{"class":688},[671,3565,692],{"class":684},[671,3567,695],{"class":677},[671,3569,1395],{"class":817},[671,3571,3572],{"class":673,"line":783},[671,3573,830],{"class":677},[640,3575,1535],{"id":1534},[495,3577,1538],{},[517,3579,3580,3590],{},[520,3581,3582],{},[523,3583,3584,3586,3588],{},[526,3585,1547],{},[526,3587,1550],{},[526,3589,1102],{},[541,3591,3592,3604,3616,3628,3640,3652,3664,3676,3688,3700],{},[523,3593,3594,3598,3602],{},[546,3595,3596],{},[668,3597,810],{},[546,3599,3600],{},[668,3601,1111],{},[546,3603,1567],{},[523,3605,3606,3610,3614],{},[546,3607,3608],{},[668,3609,1356],{},[546,3611,3612],{},[668,3613,1126],{},[546,3615,1580],{},[523,3617,3618,3622,3626],{},[546,3619,3620],{},[668,3621,1521],{},[546,3623,3624],{},[668,3625,1141],{},[546,3627,1593],{},[523,3629,3630,3634,3638],{},[546,3631,3632],{},[668,3633,1372],{},[546,3635,3636],{},[668,3637,1156],{},[546,3639,1606],{},[523,3641,3642,3646,3650],{},[546,3643,3644],{},[668,3645,1613],{},[546,3647,3648],{},[668,3649,1171],{},[546,3651,1620],{},[523,3653,3654,3658,3662],{},[546,3655,3656],{},[668,3657,1627],{},[546,3659,3660],{},[668,3661,1186],{},[546,3663,1634],{},[523,3665,3666,3670,3674],{},[546,3667,3668],{},[668,3669,1388],{},[546,3671,3672],{},[668,3673,1201],{},[546,3675,1647],{},[523,3677,3678,3682,3686],{},[546,3679,3680],{},[668,3681,1654],{},[546,3683,3684],{},[668,3685,1659],{},[546,3687,1662],{},[523,3689,3690,3694,3698],{},[546,3691,3692],{},[668,3693,1669],{},[546,3695,3696],{},[668,3697,1674],{},[546,3699,1677],{},[523,3701,3702,3706,3710],{},[546,3703,3704],{},[668,3705,1684],{},[546,3707,3708],{},[668,3709,1689],{},[546,3711,1692],{},[490,3713,1696],{"id":1695},[495,3715,1699],{},[640,3717,1654],{"id":1702},[495,3719,1705],{},[662,3721,3722],{"className":664,"code":1708,"language":60,"meta":666,"style":666},[668,3723,3724,3728,3746,3760,3774,3788,3800],{"__ignoreMap":666},[671,3725,3726],{"class":673,"line":674},[671,3727,678],{"class":677},[671,3729,3730,3732,3734,3736,3738,3740,3742,3744],{"class":673,"line":681},[671,3731,685],{"class":684},[671,3733,1721],{"class":688},[671,3735,692],{"class":684},[671,3737,695],{"class":677},[671,3739,758],{"class":704},[671,3741,1659],{"class":708},[671,3743,692],{"class":704},[671,3745,714],{"class":677},[671,3747,3748,3750,3752,3754,3756,3758],{"class":673,"line":701},[671,3749,685],{"class":684},[671,3751,1141],{"class":688},[671,3753,692],{"class":684},[671,3755,695],{"class":677},[671,3757,1746],{"class":817},[671,3759,714],{"class":677},[671,3761,3762,3764,3766,3768,3770,3772],{"class":673,"line":717},[671,3763,685],{"class":684},[671,3765,1126],{"class":688},[671,3767,692],{"class":684},[671,3769,695],{"class":677},[671,3771,1363],{"class":817},[671,3773,714],{"class":677},[671,3775,3776,3778,3780,3782,3784,3786],{"class":673,"line":729},[671,3777,685],{"class":684},[671,3779,1186],{"class":688},[671,3781,692],{"class":684},[671,3783,695],{"class":677},[671,3785,1775],{"class":817},[671,3787,714],{"class":677},[671,3789,3790,3792,3794,3796,3798],{"class":673,"line":740},[671,3791,685],{"class":684},[671,3793,1231],{"class":688},[671,3795,692],{"class":684},[671,3797,695],{"class":677},[671,3799,1790],{"class":817},[671,3801,3802],{"class":673,"line":746},[671,3803,830],{"class":677},[640,3805,1669],{"id":1797},[495,3807,1800],{},[662,3809,3810],{"className":664,"code":1803,"language":60,"meta":666,"style":666},[668,3811,3812,3816,3834,3848,3866,3894,3906],{"__ignoreMap":666},[671,3813,3814],{"class":673,"line":674},[671,3815,678],{"class":677},[671,3817,3818,3820,3822,3824,3826,3828,3830,3832],{"class":673,"line":681},[671,3819,685],{"class":684},[671,3821,1721],{"class":688},[671,3823,692],{"class":684},[671,3825,695],{"class":677},[671,3827,758],{"class":704},[671,3829,1674],{"class":708},[671,3831,692],{"class":704},[671,3833,714],{"class":677},[671,3835,3836,3838,3840,3842,3844,3846],{"class":673,"line":701},[671,3837,685],{"class":684},[671,3839,1111],{"class":688},[671,3841,692],{"class":684},[671,3843,695],{"class":677},[671,3845,1498],{"class":817},[671,3847,714],{"class":677},[671,3849,3850,3852,3854,3856,3858,3860,3862,3864],{"class":673,"line":717},[671,3851,685],{"class":684},[671,3853,1171],{"class":688},[671,3855,692],{"class":684},[671,3857,695],{"class":677},[671,3859,758],{"class":704},[671,3861,1856],{"class":708},[671,3863,692],{"class":704},[671,3865,714],{"class":677},[671,3867,3868,3870,3872,3874,3876,3878,3880,3882,3884,3886,3888,3890,3892],{"class":673,"line":729},[671,3869,685],{"class":684},[671,3871,1246],{"class":688},[671,3873,692],{"class":684},[671,3875,695],{"class":677},[671,3877,1873],{"class":677},[671,3879,692],{"class":684},[671,3881,1878],{"class":788},[671,3883,692],{"class":684},[671,3885,695],{"class":677},[671,3887,758],{"class":704},[671,3889,1887],{"class":708},[671,3891,692],{"class":704},[671,3893,1892],{"class":677},[671,3895,3896,3898,3900,3902,3904],{"class":673,"line":740},[671,3897,685],{"class":684},[671,3899,1216],{"class":688},[671,3901,692],{"class":684},[671,3903,695],{"class":677},[671,3905,1905],{"class":817},[671,3907,3908],{"class":673,"line":746},[671,3909,830],{"class":677},[640,3911,1684],{"id":1912},[495,3913,1915],{},[662,3915,3916],{"className":664,"code":1918,"language":60,"meta":666,"style":666},[668,3917,3918,3922,3940,3952],{"__ignoreMap":666},[671,3919,3920],{"class":673,"line":674},[671,3921,678],{"class":677},[671,3923,3924,3926,3928,3930,3932,3934,3936,3938],{"class":673,"line":681},[671,3925,685],{"class":684},[671,3927,1721],{"class":688},[671,3929,692],{"class":684},[671,3931,695],{"class":677},[671,3933,758],{"class":704},[671,3935,1689],{"class":708},[671,3937,692],{"class":704},[671,3939,714],{"class":677},[671,3941,3942,3944,3946,3948,3950],{"class":673,"line":701},[671,3943,685],{"class":684},[671,3945,1201],{"class":688},[671,3947,692],{"class":684},[671,3949,695],{"class":677},[671,3951,1395],{"class":817},[671,3953,3954],{"class":673,"line":717},[671,3955,830],{"class":677},[490,3957,1962],{"id":1961},[640,3959,1966],{"id":1965},[495,3961,1969],{},[517,3963,3964,3972],{},[520,3965,3966],{},[523,3967,3968,3970],{},[526,3969,1978],{},[526,3971,1102],{},[541,3973,3974,3982],{},[523,3975,3976,3980],{},[546,3977,3978],{},[668,3979,1887],{},[546,3981,1991],{},[523,3983,3984,3988],{},[546,3985,3986],{},[668,3987,1998],{},[546,3989,2001],{},[640,3991,2005],{"id":2004},[495,3993,2008],{},[517,3995,3996,4004],{},[520,3997,3998],{},[523,3999,4000,4002],{},[526,4001,1978],{},[526,4003,1102],{},[541,4005,4006,4014,4022],{},[523,4007,4008,4012],{},[546,4009,4010],{},[668,4011,2027],{},[546,4013,2030],{},[523,4015,4016,4020],{},[546,4017,4018],{},[668,4019,2037],{},[546,4021,2040],{},[523,4023,4024,4028],{},[546,4025,4026],{},[668,4027,2047],{},[546,4029,2050],{},[490,4031,2054],{"id":2053},[640,4033,2058],{"id":2057},[495,4035,2061,4036,695],{},[650,4037,4039],{"href":2064,"rel":4038},[654],[668,4040,2064],{},[925,4042,4043,4047,4051,4055,4059],{},[889,4044,4045,2075],{},[505,4046,2074],{},[889,4048,4049],{},[505,4050,2080],{},[889,4052,4053],{},[505,4054,2085],{},[889,4056,4057],{},[505,4058,2090],{},[889,4060,4061,2096],{},[505,4062,2095],{},[495,4064,2099],{},[662,4066,4067],{"className":2102,"code":2103,"language":2104,"meta":666,"style":666},[668,4068,4069,4073,4077,4081,4085,4089,4093],{"__ignoreMap":666},[671,4070,4071],{"class":673,"line":674},[671,4072,2111],{},[671,4074,4075],{"class":673,"line":681},[671,4076,2116],{},[671,4078,4079],{"class":673,"line":701},[671,4080,2121],{},[671,4082,4083],{"class":673,"line":717},[671,4084,2126],{},[671,4086,4087],{"class":673,"line":729},[671,4088,2131],{},[671,4090,4091],{"class":673,"line":740},[671,4092,2136],{},[671,4094,4095],{"class":673,"line":746},[671,4096,2141],{},[640,4098,2145],{"id":2144},[495,4100,2148,4101,695],{},[650,4102,4104],{"href":2151,"rel":4103},[654],[668,4105,2151],{},[925,4107,4108,4112,4116,4120],{},[889,4109,4110,2162],{},[505,4111,2161],{},[889,4113,4114,2168],{},[505,4115,2167],{},[889,4117,4118],{},[505,4119,2173],{},[889,4121,4122],{},[505,4123,2178],{},[495,4125,2181],{},[662,4127,4128],{"className":664,"code":2184,"language":60,"meta":666,"style":666},[668,4129,4130,4134,4146,4164,4178,4192,4208,4212],{"__ignoreMap":666},[671,4131,4132],{"class":673,"line":674},[671,4133,678],{"class":677},[671,4135,4136,4138,4140,4142,4144],{"class":673,"line":681},[671,4137,685],{"class":684},[671,4139,2197],{"class":688},[671,4141,692],{"class":684},[671,4143,695],{"class":677},[671,4145,780],{"class":677},[671,4147,4148,4150,4152,4154,4156,4158,4160,4162],{"class":673,"line":701},[671,4149,705],{"class":684},[671,4151,2210],{"class":788},[671,4153,692],{"class":684},[671,4155,695],{"class":677},[671,4157,758],{"class":704},[671,4159,2219],{"class":708},[671,4161,692],{"class":704},[671,4163,714],{"class":677},[671,4165,4166,4168,4170,4172,4174,4176],{"class":673,"line":717},[671,4167,705],{"class":684},[671,4169,2230],{"class":788},[671,4171,692],{"class":684},[671,4173,695],{"class":677},[671,4175,2237],{"class":817},[671,4177,714],{"class":677},[671,4179,4180,4182,4184,4186,4188,4190],{"class":673,"line":729},[671,4181,705],{"class":684},[671,4183,2246],{"class":788},[671,4185,692],{"class":684},[671,4187,695],{"class":677},[671,4189,2253],{"class":817},[671,4191,714],{"class":677},[671,4193,4194,4196,4198,4200,4202,4204,4206],{"class":673,"line":740},[671,4195,705],{"class":684},[671,4197,2262],{"class":788},[671,4199,692],{"class":684},[671,4201,695],{"class":677},[671,4203,758],{"class":704},[671,4205,2271],{"class":708},[671,4207,737],{"class":704},[671,4209,4210],{"class":673,"line":746},[671,4211,824],{"class":677},[671,4213,4214],{"class":673,"line":768},[671,4215,830],{"class":677},[490,4217,2285],{"id":2284},[495,4219,2288],{},[517,4221,4222,4230],{},[520,4223,4224],{},[523,4225,4226,4228],{},[526,4227,2297],{},[526,4229,2300],{},[541,4231,4232,4240,4248,4256,4264],{},[523,4233,4234,4238],{},[546,4235,4236],{},[505,4237,2309],{},[546,4239,2312],{},[523,4241,4242,4246],{},[546,4243,4244],{},[505,4245,2319],{},[546,4247,2322],{},[523,4249,4250,4254],{},[546,4251,4252],{},[505,4253,2329],{},[546,4255,2332],{},[523,4257,4258,4262],{},[546,4259,4260],{},[505,4261,2339],{},[546,4263,2342],{},[523,4265,4266,4270],{},[546,4267,4268],{},[505,4269,2349],{},[546,4271,2352],{},[490,4273,2356],{"id":2355},[495,4275,2359,4276,863],{},[505,4277,2362],{},[640,4279,2366],{"id":2365},[517,4281,4282,4292],{},[520,4283,4284],{},[523,4285,4286,4288,4290],{},[526,4287,2375],{},[526,4289,2378],{},[526,4291,2381],{},[541,4293,4294,4304,4316],{},[523,4295,4296,4300,4302],{},[546,4297,4298],{},[505,4299,993],{},[546,4301,2392],{},[546,4303,2395],{},[523,4305,4306,4310,4312],{},[546,4307,4308],{},[505,4309,2402],{},[546,4311,2405],{},[546,4313,2408,4314],{},[668,4315,871],{},[523,4317,4318,4322,4324],{},[546,4319,4320],{},[505,4321,607],{},[546,4323,2419],{},[546,4325,2422],{},[495,4327,2425,4328,2431],{},[650,4329,2430],{"href":2428,"rel":4330},[654],[490,4332,2435],{"id":2434},[886,4334,4335,4367,4417,4421],{},[889,4336,4337,2443,4339],{},[505,4338,2442],{},[662,4340,4341],{"className":664,"code":2446,"language":60,"meta":666,"style":666},[668,4342,4343,4347,4363],{"__ignoreMap":666},[671,4344,4345],{"class":673,"line":674},[671,4346,678],{"class":677},[671,4348,4349,4351,4353,4355,4357,4359,4361],{"class":673,"line":681},[671,4350,685],{"class":684},[671,4352,689],{"class":688},[671,4354,692],{"class":684},[671,4356,695],{"class":677},[671,4358,758],{"class":704},[671,4360,1468],{"class":708},[671,4362,737],{"class":704},[671,4364,4365],{"class":673,"line":701},[671,4366,830],{"class":677},[889,4368,4369,2478,4371],{},[505,4370,2477],{},[662,4372,4373],{"className":664,"code":2481,"language":60,"meta":666,"style":666},[668,4374,4375,4379,4391,4401,4409,4413],{"__ignoreMap":666},[671,4376,4377],{"class":673,"line":674},[671,4378,678],{"class":677},[671,4380,4381,4383,4385,4387,4389],{"class":673,"line":681},[671,4382,685],{"class":684},[671,4384,689],{"class":688},[671,4386,692],{"class":684},[671,4388,695],{"class":677},[671,4390,698],{"class":677},[671,4392,4393,4395,4397,4399],{"class":673,"line":701},[671,4394,705],{"class":704},[671,4396,1468],{"class":708},[671,4398,692],{"class":704},[671,4400,714],{"class":677},[671,4402,4403,4405,4407],{"class":673,"line":717},[671,4404,705],{"class":704},[671,4406,1479],{"class":708},[671,4408,737],{"class":704},[671,4410,4411],{"class":673,"line":729},[671,4412,2522],{"class":677},[671,4414,4415],{"class":673,"line":740},[671,4416,830],{"class":677},[889,4418,4419,2532],{},[505,4420,2531],{},[889,4422,4423,2538],{},[505,4424,2537],{},[490,4426,2542],{"id":2541},[640,4428,10],{"id":2545},[925,4430,4431,4436,4441,4446],{},[889,4432,4433],{},[650,4434,2553],{"href":938,"rel":4435},[654],[889,4437,4438],{},[650,4439,966],{"href":945,"rel":4440},[654],[889,4442,4443],{},[650,4444,2564],{"href":860,"rel":4445},[654],[889,4447,4448],{},[650,4449,2356],{"href":2428,"rel":4450},[654],[640,4452,2573],{"id":2572},[925,4454,4455,4460,4465,4470],{},[889,4456,4457,2582],{},[650,4458,626],{"href":2580,"rel":4459},[654],[889,4461,4462],{},[650,4463,993],{"href":2587,"rel":4464},[654],[889,4466,4467],{},[650,4468,2594],{"href":850,"rel":4469},[654],[889,4471,4472],{},[650,4473,1034],{"href":2599,"rel":4474},[654],[2602,4476,2604],{},{"title":666,"searchDepth":681,"depth":681,"links":4478},[4479,4480,4484,4485,4491,4492,4495,4500,4504,4508,4509,4512,4513],{"id":492,"depth":681,"text":493},{"id":511,"depth":681,"text":512,"children":4481},[4482,4483],{"id":642,"depth":701,"text":643},{"id":880,"depth":701,"text":881},{"id":917,"depth":681,"text":918},{"id":965,"depth":681,"text":966,"children":4486},[4487,4488,4489,4490],{"id":1043,"depth":701,"text":1044},{"id":1077,"depth":701,"text":1078},{"id":1272,"depth":701,"text":1273},{"id":1284,"depth":701,"text":1285},{"id":1332,"depth":681,"text":1333},{"id":1432,"depth":681,"text":1433,"children":4493},[4494],{"id":1534,"depth":701,"text":1535},{"id":1695,"depth":681,"text":1696,"children":4496},[4497,4498,4499],{"id":1702,"depth":701,"text":1654},{"id":1797,"depth":701,"text":1669},{"id":1912,"depth":701,"text":1684},{"id":1961,"depth":681,"text":1962,"children":4501},[4502,4503],{"id":1965,"depth":701,"text":1966},{"id":2004,"depth":701,"text":2005},{"id":2053,"depth":681,"text":2054,"children":4505},[4506,4507],{"id":2057,"depth":701,"text":2058},{"id":2144,"depth":701,"text":2145},{"id":2284,"depth":681,"text":2285},{"id":2355,"depth":681,"text":2356,"children":4510},[4511],{"id":2365,"depth":701,"text":2366},{"id":2434,"depth":681,"text":2435},{"id":2541,"depth":681,"text":2542,"children":4514},[4515,4516],{"id":2545,"depth":701,"text":10},{"id":2572,"depth":701,"text":2573},{"head":4518,"readingTime":4521},{"meta":4519},[4520],{"name":2651,"content":2652},{"text":2654,"minutes":2655,"time":2656,"words":2657},{"title":323,"tags":4523},[330,331,101,332,226,333,334],{"title":485,"description":328},{"loc":324,"lastmod":2662,"changefreq":2663,"priority":2664},1779384036454]