From e6901940056fbdca338d72d20a96680ca53250fd Mon Sep 17 00:00:00 2001 From: namhoang1604 Date: Tue, 24 Sep 2024 07:25:01 +0000 Subject: [PATCH] deploy: c68d261b32d3bbda3a93cd2f8a06243644006f14 --- 404.html | 2 +- assets/js/{085742ca.faddb3a0.js => 085742ca.342a571b.js} | 2 +- assets/js/{577d7028.51012c5f.js => 577d7028.79ec8faf.js} | 2 +- assets/js/{5b6552f6.68abf342.js => 5b6552f6.18163192.js} | 2 +- assets/js/{680d5359.bcb8e972.js => 680d5359.648b5eb6.js} | 2 +- assets/js/{7e459fdf.331e4994.js => 7e459fdf.8ce5940e.js} | 2 +- assets/js/dbe878d5.68ab3c6f.js | 1 + assets/js/dbe878d5.7bd14a59.js | 1 - .../{runtime~main.d54e1f57.js => runtime~main.cbb93077.js} | 2 +- docs/introduction/index.html | 2 +- docs/mock-apps/common/asset/index.html | 2 +- docs/mock-apps/common/component-type/index.html | 2 +- docs/mock-apps/common/construct-data/index.html | 2 +- docs/mock-apps/common/credential/index.html | 2 +- .../common/default-verification-service-link/index.html | 2 +- docs/mock-apps/common/identifier-key-path/index.html | 2 +- docs/mock-apps/common/identify-provider/index.html | 6 +++--- docs/mock-apps/common/idr/index.html | 4 ++-- docs/mock-apps/common/index.html | 2 +- docs/mock-apps/common/local-storage/index.html | 2 +- docs/mock-apps/common/render-template/index.html | 2 +- docs/mock-apps/common/storage/index.html | 2 +- docs/mock-apps/common/style/index.html | 2 +- docs/mock-apps/common/vckit/index.html | 2 +- docs/mock-apps/common/verify-link/index.html | 2 +- docs/mock-apps/components/barcode-generator/index.html | 2 +- .../components/conformity-credential-checkbox/index.html | 2 +- docs/mock-apps/components/conformity-credential/index.html | 2 +- docs/mock-apps/components/custom-button/index.html | 2 +- docs/mock-apps/components/index.html | 2 +- docs/mock-apps/components/json-form/index.html | 2 +- docs/mock-apps/components/local-storage-loader/index.html | 2 +- docs/mock-apps/configuration/app-config/index.html | 2 +- docs/mock-apps/configuration/component-config/index.html | 2 +- docs/mock-apps/configuration/feature-config/index.html | 2 +- .../configuration/general-feature-config/index.html | 2 +- docs/mock-apps/configuration/index.html | 2 +- docs/mock-apps/configuration/service-config/index.html | 2 +- docs/mock-apps/configuration/system-config/index.html | 2 +- docs/mock-apps/conformity-credential/index.html | 2 +- .../identity-resolution-service/index.html | 2 +- docs/mock-apps/dependent-services/index.html | 2 +- .../mock-apps/dependent-services/storage-service/index.html | 2 +- .../verifiable-credential-service/index.html | 2 +- docs/mock-apps/getting-started/index.html | 2 +- docs/mock-apps/index.html | 2 +- docs/mock-apps/installation/index.html | 2 +- docs/mock-apps/scanning-app/index.html | 2 +- docs/mock-apps/services/index.html | 2 +- docs/mock-apps/services/merge-to-local-storage/index.html | 2 +- .../mock-apps/services/process-aggregation-event/index.html | 4 ++-- docs/mock-apps/services/process-dpp/index.html | 4 ++-- .../mock-apps/services/process-transaction-event/index.html | 4 ++-- .../services/process-transformation-event/index.html | 4 ++-- docs/mock-apps/verify-app/index.html | 2 +- docs/test-suites/index.html | 2 +- .../semantic-interoperability/cli/configuration/index.html | 2 +- .../semantic-interoperability/cli/extensions/index.html | 2 +- docs/test-suites/semantic-interoperability/cli/index.html | 2 +- .../semantic-interoperability/cli/installation/index.html | 2 +- .../semantic-interoperability/cli/usage/index.html | 2 +- .../semantic-interoperability/getting-started/index.html | 2 +- docs/test-suites/semantic-interoperability/index.html | 2 +- .../technical-interoperability/getting-started/index.html | 2 +- .../identity-resolution/index.html | 2 +- .../identity-resolution/testing/index.html | 2 +- docs/test-suites/technical-interoperability/index.html | 2 +- .../technical-interoperability/installation/index.html | 2 +- .../technical-interoperability/storage/index.html | 2 +- .../technical-interoperability/storage/testing/index.html | 2 +- .../transparency-graphs/index.html | 2 +- .../transparency-graphs/testing/index.html | 2 +- .../technical-interoperability/untp-extensions/index.html | 2 +- .../untp-extensions/qr-link-encryption/index.html | 2 +- .../untp-extensions/rendering/index.html | 2 +- .../verifiable-credentials/index.html | 2 +- .../verifiable-credentials/testing/index.html | 2 +- index.html | 2 +- privacy/index.html | 2 +- terms/index.html | 2 +- 80 files changed, 86 insertions(+), 86 deletions(-) rename assets/js/{085742ca.faddb3a0.js => 085742ca.342a571b.js} (53%) rename assets/js/{577d7028.51012c5f.js => 577d7028.79ec8faf.js} (50%) rename assets/js/{5b6552f6.68abf342.js => 5b6552f6.18163192.js} (65%) rename assets/js/{680d5359.bcb8e972.js => 680d5359.648b5eb6.js} (62%) rename assets/js/{7e459fdf.331e4994.js => 7e459fdf.8ce5940e.js} (53%) create mode 100644 assets/js/dbe878d5.68ab3c6f.js delete mode 100644 assets/js/dbe878d5.7bd14a59.js rename assets/js/{runtime~main.d54e1f57.js => runtime~main.cbb93077.js} (71%) diff --git a/404.html b/404.html index 3e181b31..c65f1978 100644 --- a/404.html +++ b/404.html @@ -4,7 +4,7 @@ Page Not Found | UN Transparency Protocol Test Suite - + diff --git a/assets/js/085742ca.faddb3a0.js b/assets/js/085742ca.342a571b.js similarity index 53% rename from assets/js/085742ca.faddb3a0.js rename to assets/js/085742ca.342a571b.js index e041002f..d2b9047a 100644 --- a/assets/js/085742ca.faddb3a0.js +++ b/assets/js/085742ca.342a571b.js @@ -1 +1 @@ -"use strict";(self.webpackChunkdocumentation=self.webpackChunkdocumentation||[]).push([[7017],{8481:(e,t,n)=>{n.d(t,{Ay:()=>d,RM:()=>s});var i=n(4848),r=n(8453);const s=[];function o(e){const t={admonition:"admonition",p:"p",...(0,r.R)(),...e.components};return(0,i.jsx)(t.admonition,{type:"info",children:(0,i.jsx)(t.p,{children:"Please note that this content is under development and is not ready for implementation. This status message will be updated as content development progresses."})})}function d(e={}){const{wrapper:t}={...(0,r.R)(),...e.components};return t?(0,i.jsx)(t,{...e,children:(0,i.jsx)(o,{...e})}):o(e)}},199:(e,t,n)=>{n.r(t),n.d(t,{assets:()=>l,contentTitle:()=>d,default:()=>h,frontMatter:()=>o,metadata:()=>c,toc:()=>a});var i=n(4848),r=n(8453),s=n(8481);const o={sidebar_position:34,title:"Identify Provider"},d=void 0,c={id:"mock-apps/common/identify-provider",title:"Identify Provider",description:"Description",source:"@site/docs/mock-apps/common/identify-provider.md",sourceDirName:"mock-apps/common",slug:"/mock-apps/common/identify-provider",permalink:"/tests-untp/docs/mock-apps/common/identify-provider",draft:!1,unlisted:!1,editUrl:"https://github.com/uncefact/tests-untp/tree/main/docs/mock-apps/common/identify-provider.md",tags:[],version:"current",sidebarPosition:34,frontMatter:{sidebar_position:34,title:"Identify Provider"},sidebar:"tutorialSidebar",previous:{title:"Construct Data",permalink:"/tests-untp/docs/mock-apps/common/construct-data"},next:{title:"Component Type",permalink:"/tests-untp/docs/mock-apps/common/component-type"}},l={},a=[...s.RM,{value:"Description",id:"description",level:2},{value:"Example",id:"example",level:2},{value:"Definitions",id:"definitions",level:2},{value:"Provider Types",id:"provider-types",level:2}];function p(e){const t={a:"a",code:"code",h2:"h2",li:"li",ol:"ol",p:"p",pre:"pre",strong:"strong",table:"table",tbody:"tbody",td:"td",th:"th",thead:"thead",tr:"tr",...(0,r.R)(),...e.components};return(0,i.jsxs)(i.Fragment,{children:[(0,i.jsx)(s.Ay,{}),"\n",(0,i.jsx)(t.h2,{id:"description",children:"Description"}),"\n",(0,i.jsxs)(t.p,{children:["The ",(0,i.jsx)(t.code,{children:"Identify Provider"})," object is a key component in the Mock App system that links scanned identifiers to their corresponding ",(0,i.jsx)(t.a,{href:"/docs/mock-apps/dependent-services/identity-resolution-service",children:"Identity Resolver Service"}),", understands how to communicate with such services and encapsulates logic to interpret data retrieved from data carriers."]}),"\n",(0,i.jsx)(t.p,{children:"It serves three main functions:"}),"\n",(0,i.jsxs)(t.ol,{children:["\n",(0,i.jsx)(t.li,{children:"Interprets data from scanned carriers"}),"\n",(0,i.jsx)(t.li,{children:"Communicates with external identity registrar services"}),"\n",(0,i.jsx)(t.li,{children:"Processes identifiers from identity registrars"}),"\n"]}),"\n",(0,i.jsx)(t.p,{children:"For instance, when dealing with a Global Trade Item Number (GTIN) from GS1:"}),"\n",(0,i.jsxs)(t.ol,{children:["\n",(0,i.jsx)(t.li,{children:"The GS1 Identify Provider recognises the identifier format"}),"\n",(0,i.jsx)(t.li,{children:"It interacts with the Mock Verified By GS1 Service"}),"\n",(0,i.jsx)(t.li,{children:"It formats the request appropriately"}),"\n",(0,i.jsx)(t.li,{children:"It extracts the actor's Identity Resolver (IDR) link from the response"}),"\n"]}),"\n",(0,i.jsx)(t.p,{children:"The Mock App system can use multiple identify providers, each tailored to a specific identity registrar and service. This modular approach allows the system to work with a variety of identification standards and services."}),"\n",(0,i.jsx)(t.h2,{id:"example",children:"Example"}),"\n",(0,i.jsx)(t.pre,{children:(0,i.jsx)(t.code,{className:"language-json",children:'{\n "identifyProvider": {\n "type": "gs1",\n "url": "http://localhost:3333/products"\n }\n}\n'})}),"\n",(0,i.jsx)(t.h2,{id:"definitions",children:"Definitions"}),"\n",(0,i.jsxs)(t.table,{children:[(0,i.jsx)(t.thead,{children:(0,i.jsxs)(t.tr,{children:[(0,i.jsx)(t.th,{children:"Property"}),(0,i.jsx)(t.th,{style:{textAlign:"center"},children:"Required"}),(0,i.jsx)(t.th,{children:"Description"}),(0,i.jsx)(t.th,{children:"Type"})]})}),(0,i.jsxs)(t.tbody,{children:[(0,i.jsxs)(t.tr,{children:[(0,i.jsx)(t.td,{children:"type"}),(0,i.jsx)(t.td,{style:{textAlign:"center"},children:"Yes"}),(0,i.jsx)(t.td,{children:'The type of identify provider, e.g., "gs1" for GS1 standards.'}),(0,i.jsx)(t.td,{children:(0,i.jsx)(t.a,{href:"/docs/mock-apps/common/identify-provider#provider-types",children:"ProviderType"})})]}),(0,i.jsxs)(t.tr,{children:[(0,i.jsx)(t.td,{children:"url"}),(0,i.jsx)(t.td,{style:{textAlign:"center"},children:"Yes"}),(0,i.jsx)(t.td,{children:"The URL endpoint for the identify provider service."}),(0,i.jsx)(t.td,{children:"String"})]})]})]}),"\n",(0,i.jsx)(t.h2,{id:"provider-types",children:"Provider Types"}),"\n",(0,i.jsxs)(t.table,{children:[(0,i.jsx)(t.thead,{children:(0,i.jsxs)(t.tr,{children:[(0,i.jsx)(t.th,{children:"Type"}),(0,i.jsx)(t.th,{children:"Description"})]})}),(0,i.jsx)(t.tbody,{children:(0,i.jsxs)(t.tr,{children:[(0,i.jsx)(t.td,{children:"gs1"}),(0,i.jsx)(t.td,{children:"Used for resolving (using the Mock Verified By GS1 Service)/understanding GS1-based identifiers (e.g., GTINs)."})]})})]}),"\n",(0,i.jsxs)(t.p,{children:[(0,i.jsx)(t.strong,{children:"Note"}),": The available types may be extended in the future to support additional identity providers."]})]})}function h(e={}){const{wrapper:t}={...(0,r.R)(),...e.components};return t?(0,i.jsx)(t,{...e,children:(0,i.jsx)(p,{...e})}):p(e)}},8453:(e,t,n)=>{n.d(t,{R:()=>o,x:()=>d});var i=n(6540);const r={},s=i.createContext(r);function o(e){const t=i.useContext(s);return i.useMemo((function(){return"function"==typeof e?e(t):{...t,...e}}),[t,e])}function d(e){let t;return t=e.disableParentContext?"function"==typeof e.components?e.components(r):e.components||r:o(e.components),i.createElement(s.Provider,{value:t},e.children)}}}]); \ No newline at end of file +"use strict";(self.webpackChunkdocumentation=self.webpackChunkdocumentation||[]).push([[7017],{8481:(e,t,n)=>{n.d(t,{Ay:()=>o,RM:()=>s});var i=n(4848),r=n(8453);const s=[];function d(e){const t={admonition:"admonition",p:"p",...(0,r.R)(),...e.components};return(0,i.jsx)(t.admonition,{type:"info",children:(0,i.jsx)(t.p,{children:"Please note that this content is under development and is not ready for implementation. This status message will be updated as content development progresses."})})}function o(e={}){const{wrapper:t}={...(0,r.R)(),...e.components};return t?(0,i.jsx)(t,{...e,children:(0,i.jsx)(d,{...e})}):d(e)}},199:(e,t,n)=>{n.r(t),n.d(t,{assets:()=>l,contentTitle:()=>o,default:()=>h,frontMatter:()=>d,metadata:()=>c,toc:()=>a});var i=n(4848),r=n(8453),s=n(8481);const d={sidebar_position:34,title:"Identify Provider"},o=void 0,c={id:"mock-apps/common/identify-provider",title:"Identify Provider",description:"Description",source:"@site/docs/mock-apps/common/identify-provider.md",sourceDirName:"mock-apps/common",slug:"/mock-apps/common/identify-provider",permalink:"/tests-untp/docs/mock-apps/common/identify-provider",draft:!1,unlisted:!1,editUrl:"https://github.com/uncefact/tests-untp/tree/main/docs/mock-apps/common/identify-provider.md",tags:[],version:"current",sidebarPosition:34,frontMatter:{sidebar_position:34,title:"Identify Provider"},sidebar:"tutorialSidebar",previous:{title:"Construct Data",permalink:"/tests-untp/docs/mock-apps/common/construct-data"},next:{title:"Component Type",permalink:"/tests-untp/docs/mock-apps/common/component-type"}},l={},a=[...s.RM,{value:"Description",id:"description",level:2},{value:"Example",id:"example",level:2},{value:"Definitions",id:"definitions",level:2},{value:"Provider Types",id:"provider-types",level:2}];function p(e){const t={a:"a",code:"code",h2:"h2",li:"li",ol:"ol",p:"p",pre:"pre",strong:"strong",table:"table",tbody:"tbody",td:"td",th:"th",thead:"thead",tr:"tr",...(0,r.R)(),...e.components};return(0,i.jsxs)(i.Fragment,{children:[(0,i.jsx)(s.Ay,{}),"\n",(0,i.jsx)(t.h2,{id:"description",children:"Description"}),"\n",(0,i.jsxs)(t.p,{children:["The ",(0,i.jsx)(t.code,{children:"Identify Provider"})," object is a key component in the Mock App system that links scanned identifiers to their corresponding ",(0,i.jsx)(t.a,{href:"/docs/mock-apps/dependent-services/identity-resolution-service",children:"Identity Resolver Service"}),", understands how to communicate with such services and encapsulates logic to interpret data retrieved from data carriers."]}),"\n",(0,i.jsx)(t.p,{children:"It serves three main functions:"}),"\n",(0,i.jsxs)(t.ol,{children:["\n",(0,i.jsx)(t.li,{children:"Interprets data from scanned carriers"}),"\n",(0,i.jsx)(t.li,{children:"Communicates with external identity registrar services"}),"\n",(0,i.jsx)(t.li,{children:"Processes identifiers from identity registrars"}),"\n"]}),"\n",(0,i.jsx)(t.p,{children:"For instance, when dealing with a Global Trade Item Number (GTIN) from GS1:"}),"\n",(0,i.jsxs)(t.ol,{children:["\n",(0,i.jsx)(t.li,{children:"The GS1 Identify Provider recognises the identifier format"}),"\n",(0,i.jsx)(t.li,{children:"It interacts with the Mock Verified By GS1 Service"}),"\n",(0,i.jsx)(t.li,{children:"It formats the request appropriately"}),"\n",(0,i.jsx)(t.li,{children:"It extracts the actor's Identity Resolver (IDR) link from the response"}),"\n"]}),"\n",(0,i.jsx)(t.p,{children:"The Mock App system can use multiple identify providers, each tailored to a specific identity registrar and service. This modular approach allows the system to work with a variety of identification standards and services."}),"\n",(0,i.jsx)(t.h2,{id:"example",children:"Example"}),"\n",(0,i.jsx)(t.pre,{children:(0,i.jsx)(t.code,{className:"language-json",children:'{\n "identifyProvider": {\n "type": "gs1",\n "url": "http://localhost:3333",\n "namespace": "gs1"\n }\n}\n'})}),"\n",(0,i.jsx)(t.h2,{id:"definitions",children:"Definitions"}),"\n",(0,i.jsxs)(t.table,{children:[(0,i.jsx)(t.thead,{children:(0,i.jsxs)(t.tr,{children:[(0,i.jsx)(t.th,{children:"Property"}),(0,i.jsx)(t.th,{style:{textAlign:"center"},children:"Required"}),(0,i.jsx)(t.th,{children:"Description"}),(0,i.jsx)(t.th,{children:"Type"})]})}),(0,i.jsxs)(t.tbody,{children:[(0,i.jsxs)(t.tr,{children:[(0,i.jsx)(t.td,{children:"type"}),(0,i.jsx)(t.td,{style:{textAlign:"center"},children:"Yes"}),(0,i.jsx)(t.td,{children:'The type of identify provider, e.g., "gs1" for GS1 standards.'}),(0,i.jsx)(t.td,{children:(0,i.jsx)(t.a,{href:"/docs/mock-apps/common/identify-provider#provider-types",children:"ProviderType"})})]}),(0,i.jsxs)(t.tr,{children:[(0,i.jsx)(t.td,{children:"url"}),(0,i.jsx)(t.td,{style:{textAlign:"center"},children:"Yes"}),(0,i.jsx)(t.td,{children:"The URL endpoint for the identify provider service."}),(0,i.jsx)(t.td,{children:"String"})]}),(0,i.jsxs)(t.tr,{children:[(0,i.jsx)(t.td,{children:"namespace"}),(0,i.jsx)(t.td,{style:{textAlign:"center"},children:"Yes"}),(0,i.jsx)(t.td,{children:"The namespace for the identify provider."}),(0,i.jsx)(t.td,{children:"String"})]})]})]}),"\n",(0,i.jsx)(t.h2,{id:"provider-types",children:"Provider Types"}),"\n",(0,i.jsxs)(t.table,{children:[(0,i.jsx)(t.thead,{children:(0,i.jsxs)(t.tr,{children:[(0,i.jsx)(t.th,{children:"Type"}),(0,i.jsx)(t.th,{children:"Description"})]})}),(0,i.jsx)(t.tbody,{children:(0,i.jsxs)(t.tr,{children:[(0,i.jsx)(t.td,{children:"gs1"}),(0,i.jsx)(t.td,{children:"Used for resolving (using the Mock Verified By GS1 Service)/understanding GS1-based identifiers (e.g., GTINs)."})]})})]}),"\n",(0,i.jsxs)(t.p,{children:[(0,i.jsx)(t.strong,{children:"Note"}),": The available types may be extended in the future to support additional identity providers."]})]})}function h(e={}){const{wrapper:t}={...(0,r.R)(),...e.components};return t?(0,i.jsx)(t,{...e,children:(0,i.jsx)(p,{...e})}):p(e)}},8453:(e,t,n)=>{n.d(t,{R:()=>d,x:()=>o});var i=n(6540);const r={},s=i.createContext(r);function d(e){const t=i.useContext(s);return i.useMemo((function(){return"function"==typeof e?e(t):{...t,...e}}),[t,e])}function o(e){let t;return t=e.disableParentContext?"function"==typeof e.components?e.components(r):e.components||r:d(e.components),i.createElement(s.Provider,{value:t},e.children)}}}]); \ No newline at end of file diff --git a/assets/js/577d7028.51012c5f.js b/assets/js/577d7028.79ec8faf.js similarity index 50% rename from assets/js/577d7028.51012c5f.js rename to assets/js/577d7028.79ec8faf.js index b5aedb75..07091db3 100644 --- a/assets/js/577d7028.51012c5f.js +++ b/assets/js/577d7028.79ec8faf.js @@ -1 +1 @@ -"use strict";(self.webpackChunkdocumentation=self.webpackChunkdocumentation||[]).push([[4129],{8481:(e,n,t)=>{t.d(n,{Ay:()=>o,RM:()=>s});var i=t(4848),r=t(8453);const s=[];function a(e){const n={admonition:"admonition",p:"p",...(0,r.R)(),...e.components};return(0,i.jsx)(n.admonition,{type:"info",children:(0,i.jsx)(n.p,{children:"Please note that this content is under development and is not ready for implementation. This status message will be updated as content development progresses."})})}function o(e={}){const{wrapper:n}={...(0,r.R)(),...e.components};return n?(0,i.jsx)(n,{...e,children:(0,i.jsx)(a,{...e})}):a(e)}},4906:(e,n,t)=>{t.r(n),t.d(n,{assets:()=>d,contentTitle:()=>o,default:()=>h,frontMatter:()=>a,metadata:()=>c,toc:()=>l});var i=t(4848),r=t(8453),s=t(8481);const a={sidebar_position:25,title:"Process Transformation Event"},o=void 0,c={id:"mock-apps/services/process-transformation-event",title:"Process Transformation Event",description:"Description",source:"@site/docs/mock-apps/services/process-transformation-event.md",sourceDirName:"mock-apps/services",slug:"/mock-apps/services/process-transformation-event",permalink:"/tests-untp/docs/mock-apps/services/process-transformation-event",draft:!1,unlisted:!1,editUrl:"https://github.com/uncefact/tests-untp/tree/main/docs/mock-apps/services/process-transformation-event.md",tags:[],version:"current",sidebarPosition:25,frontMatter:{sidebar_position:25,title:"Process Transformation Event"},sidebar:"tutorialSidebar",previous:{title:"Process Transaction Event",permalink:"/tests-untp/docs/mock-apps/services/process-transaction-event"},next:{title:"Process Aggregation Event",permalink:"/tests-untp/docs/mock-apps/services/process-aggregation-event"}},d={},l=[...s.RM,{value:"Description",id:"description",level:2},{value:"Diagram",id:"diagram",level:2},{value:"Example",id:"example",level:2},{value:"Definitions",id:"definitions",level:2}];function p(e){const n={a:"a",code:"code",h2:"h2",mermaid:"mermaid",p:"p",pre:"pre",table:"table",tbody:"tbody",td:"td",th:"th",thead:"thead",tr:"tr",...(0,r.R)(),...e.components};return(0,i.jsxs)(i.Fragment,{children:[(0,i.jsx)(s.Ay,{}),"\n",(0,i.jsx)(n.h2,{id:"description",children:"Description"}),"\n",(0,i.jsxs)(n.p,{children:["The ",(0,i.jsx)(n.code,{children:"processTransformationEvent"})," service is responsible for processing a ",(0,i.jsx)(n.a,{href:"https://uncefact.github.io/spec-untp/docs/specification/DigitalTraceabilityEvents",children:"Transformation Event (DTE)"}),", issuing ",(0,i.jsx)(n.a,{href:"https://uncefact.github.io/spec-untp/docs/specification/VerifiableCredentials",children:"Verifiable Credentials (VCs)"})," for both the Transformation Event and ",(0,i.jsx)(n.a,{href:"https://uncefact.github.io/spec-untp/docs/specification/DigitalProductPassport",children:"Digital Product Passports (DPPs)"}),", uploading them to the ",(0,i.jsx)(n.a,{href:"/docs/mock-apps/dependent-services/storage-service",children:"Storage service"}),", registering the link to the stored DTE and DPPs with the ",(0,i.jsx)(n.a,{href:"/docs/mock-apps/dependent-services/identity-resolution-service",children:"Identity Resolver service"}),", and managing Transaction events in local storage associated with the event. It handles the entire lifecycle of creating and managing transformation events and associated DPPs."]}),"\n",(0,i.jsx)(n.h2,{id:"diagram",children:"Diagram"}),"\n",(0,i.jsx)(n.mermaid,{value:"sequenceDiagram\nparticipant C as Client\nparticipant P as processTransformationEvent\nparticipant V as VCKit\nparticipant S as Storage\nparticipant D as DLR\nC->>P: Call processTransformationEvent(data, context)\nP->>P: Validate context\nP->>V: Issue EPCIS VC\nV--\x3e>P: Return EPCIS VC\nP->>S: Upload EPCIS VC\nS--\x3e>P: Return EPCIS VC URL\nP->>D: Register EPCIS link resolver\nD--\x3e>P: Return EPCIS resolver URL\nloop For each output item\nP->>V: Issue DPP VC\nV--\x3e>P: Return DPP VC\nP->>S: Upload DPP VC\nS--\x3e>P: Return DPP VC URL\nP->>D: Register DPP link resolver\nD--\x3e>P: Return DPP resolver URL\nend\nP--\x3e>C: Return EPCIS VC"}),"\n",(0,i.jsx)(n.h2,{id:"example",children:"Example"}),"\n",(0,i.jsx)(n.pre,{children:(0,i.jsx)(n.code,{className:"language-json",children:'{\n "name": "processTransformationEvent",\n "parameters": [\n {\n "vckit": {\n "vckitAPIUrl": "https://api.vckit.example.com",\n "issuer": "did:example:123456789abcdefghi"\n },\n "epcisTransformationEvent": {\n "context": ["https://www.w3.org/2018/credentials/v1", "https://gs1.org/voc/"],\n "type": ["VerifiableCredential", "EPCISTransformationEvent"],\n "renderTemplate": [\n {\n "type": "html",\n "template": "

Transformation Event

Output: {{outputItems.0.epc}}

"\n }\n ],\n "dlrIdentificationKeyType": "gtin",\n "dlrLinkTitle": "Transformation Event",\n "dlrVerificationPage": "https://verify.example.com"\n },\n "dlr": {\n "dlrAPIUrl": "https://dlr.example.com/api",\n "dlrAPIKey": "dlr-api-key-12345"\n },\n "storage": {\n "url": "https://storage.example.com/upload",\n "params": {\n "resultPath": "/url"\n }\n },\n "dpp": {\n "context": ["https://www.w3.org/2018/credentials/v1", "https://schema.org/"],\n "type": ["VerifiableCredential", "DigitalProductPassport"],\n "renderTemplate": [\n {\n "type": "html",\n "template": "

Product DPP

EPC: {{epc}}

"\n }\n ],\n "dlrIdentificationKeyType": "gtin",\n "dlrLinkTitle": "Product DPP",\n "dlrVerificationPage": "https://verify.example.com"\n },\n "dppCredentials": [\n {\n "mappingFields": [\n {\n "sourcePath": "/vc/credentialSubject/outputItems/0/epc",\n "destinationPath": "/epc"\n }\n ]\n }\n ],\n "identifierKeyPath": "/outputItems/0/epc",\n "transformationEventCredential": {\n "mappingFields": [\n {\n "sourcePath": "/inputItems",\n "destinationPath": "/inputQuantityList"\n },\n {\n "sourcePath": "/outputItems",\n "destinationPath": "/outputQuantityList"\n }\n ],\n "generationFields": [\n {\n "path": "/eventTime",\n "handler": "generateCurrentDatetime"\n },\n {\n "path": "/eventID",\n "handler": "generateUUID"\n }\n ]\n }\n }\n ]\n}\n'})}),"\n",(0,i.jsx)(n.h2,{id:"definitions",children:"Definitions"}),"\n",(0,i.jsxs)(n.table,{children:[(0,i.jsx)(n.thead,{children:(0,i.jsxs)(n.tr,{children:[(0,i.jsx)(n.th,{children:"Property"}),(0,i.jsx)(n.th,{children:"Required"}),(0,i.jsx)(n.th,{children:"Description"}),(0,i.jsx)(n.th,{children:"Type"})]})}),(0,i.jsxs)(n.tbody,{children:[(0,i.jsxs)(n.tr,{children:[(0,i.jsx)(n.td,{children:"vckit"}),(0,i.jsx)(n.td,{children:"Yes"}),(0,i.jsx)(n.td,{children:"Configuration for the VCKit service"}),(0,i.jsx)(n.td,{children:(0,i.jsx)(n.a,{href:"/docs/mock-apps/common/vckit",children:"VCKit"})})]}),(0,i.jsxs)(n.tr,{children:[(0,i.jsx)(n.td,{children:"epcisTransformationEvent"}),(0,i.jsx)(n.td,{children:"Yes"}),(0,i.jsx)(n.td,{children:"Configuration for the EPCIS Transformation Event"}),(0,i.jsx)(n.td,{children:(0,i.jsx)(n.a,{href:"/docs/mock-apps/common/credential",children:"Credential"})})]}),(0,i.jsxs)(n.tr,{children:[(0,i.jsx)(n.td,{children:"dlr"}),(0,i.jsx)(n.td,{children:"Yes"}),(0,i.jsx)(n.td,{children:"Configuration for the Digital Link Resolver"}),(0,i.jsx)(n.td,{children:(0,i.jsx)(n.a,{href:"/docs/mock-apps/common/idr",children:"IDR"})})]}),(0,i.jsxs)(n.tr,{children:[(0,i.jsx)(n.td,{children:"storage"}),(0,i.jsx)(n.td,{children:"Yes"}),(0,i.jsx)(n.td,{children:"Configuration for storage service"}),(0,i.jsx)(n.td,{children:(0,i.jsx)(n.a,{href:"/docs/mock-apps/common/storage",children:"Storage"})})]}),(0,i.jsxs)(n.tr,{children:[(0,i.jsx)(n.td,{children:"dpp"}),(0,i.jsx)(n.td,{children:"Yes"}),(0,i.jsx)(n.td,{children:"Configuration for the Digital Product Passport"}),(0,i.jsx)(n.td,{children:(0,i.jsx)(n.a,{href:"/docs/mock-apps/common/credential",children:"Credential"})})]}),(0,i.jsxs)(n.tr,{children:[(0,i.jsx)(n.td,{children:"dppCredentials"}),(0,i.jsx)(n.td,{children:"Yes"}),(0,i.jsx)(n.td,{children:"Mapping configuration for DPP credentials"}),(0,i.jsxs)(n.td,{children:[(0,i.jsx)(n.a,{href:"/docs/mock-apps/common/construct-data",children:"Construct Data"}),"[]"]})]}),(0,i.jsxs)(n.tr,{children:[(0,i.jsx)(n.td,{children:"identifierKeyPath"}),(0,i.jsx)(n.td,{children:"Yes"}),(0,i.jsx)(n.td,{children:"JSON path to the identifier in the credential subject or the object for function and arguments of JSON path to construct identifier"}),(0,i.jsx)(n.td,{children:(0,i.jsx)(n.a,{href:"/docs/mock-apps/common/identifier-key-path",children:"IdentifierKeyPath"})})]}),(0,i.jsxs)(n.tr,{children:[(0,i.jsx)(n.td,{children:"transformationEventCredential"}),(0,i.jsx)(n.td,{children:"Yes"}),(0,i.jsx)(n.td,{children:"Mapping and generation configuration for the transformation event credential"}),(0,i.jsx)(n.td,{children:(0,i.jsx)(n.a,{href:"/docs/mock-apps/common/construct-data",children:"Construct Data"})})]})]})]})]})}function h(e={}){const{wrapper:n}={...(0,r.R)(),...e.components};return n?(0,i.jsx)(n,{...e,children:(0,i.jsx)(p,{...e})}):p(e)}},8453:(e,n,t)=>{t.d(n,{R:()=>a,x:()=>o});var i=t(6540);const r={},s=i.createContext(r);function a(e){const n=i.useContext(s);return i.useMemo((function(){return"function"==typeof e?e(n):{...n,...e}}),[n,e])}function o(e){let n;return n=e.disableParentContext?"function"==typeof e.components?e.components(r):e.components||r:a(e.components),i.createElement(s.Provider,{value:n},e.children)}}}]); \ No newline at end of file +"use strict";(self.webpackChunkdocumentation=self.webpackChunkdocumentation||[]).push([[4129],{8481:(e,n,t)=>{t.d(n,{Ay:()=>o,RM:()=>s});var i=t(4848),r=t(8453);const s=[];function a(e){const n={admonition:"admonition",p:"p",...(0,r.R)(),...e.components};return(0,i.jsx)(n.admonition,{type:"info",children:(0,i.jsx)(n.p,{children:"Please note that this content is under development and is not ready for implementation. This status message will be updated as content development progresses."})})}function o(e={}){const{wrapper:n}={...(0,r.R)(),...e.components};return n?(0,i.jsx)(n,{...e,children:(0,i.jsx)(a,{...e})}):a(e)}},4906:(e,n,t)=>{t.r(n),t.d(n,{assets:()=>d,contentTitle:()=>o,default:()=>h,frontMatter:()=>a,metadata:()=>c,toc:()=>l});var i=t(4848),r=t(8453),s=t(8481);const a={sidebar_position:25,title:"Process Transformation Event"},o=void 0,c={id:"mock-apps/services/process-transformation-event",title:"Process Transformation Event",description:"Description",source:"@site/docs/mock-apps/services/process-transformation-event.md",sourceDirName:"mock-apps/services",slug:"/mock-apps/services/process-transformation-event",permalink:"/tests-untp/docs/mock-apps/services/process-transformation-event",draft:!1,unlisted:!1,editUrl:"https://github.com/uncefact/tests-untp/tree/main/docs/mock-apps/services/process-transformation-event.md",tags:[],version:"current",sidebarPosition:25,frontMatter:{sidebar_position:25,title:"Process Transformation Event"},sidebar:"tutorialSidebar",previous:{title:"Process Transaction Event",permalink:"/tests-untp/docs/mock-apps/services/process-transaction-event"},next:{title:"Process Aggregation Event",permalink:"/tests-untp/docs/mock-apps/services/process-aggregation-event"}},d={},l=[...s.RM,{value:"Description",id:"description",level:2},{value:"Diagram",id:"diagram",level:2},{value:"Example",id:"example",level:2},{value:"Definitions",id:"definitions",level:2}];function p(e){const n={a:"a",code:"code",h2:"h2",mermaid:"mermaid",p:"p",pre:"pre",table:"table",tbody:"tbody",td:"td",th:"th",thead:"thead",tr:"tr",...(0,r.R)(),...e.components};return(0,i.jsxs)(i.Fragment,{children:[(0,i.jsx)(s.Ay,{}),"\n",(0,i.jsx)(n.h2,{id:"description",children:"Description"}),"\n",(0,i.jsxs)(n.p,{children:["The ",(0,i.jsx)(n.code,{children:"processTransformationEvent"})," service is responsible for processing a ",(0,i.jsx)(n.a,{href:"https://uncefact.github.io/spec-untp/docs/specification/DigitalTraceabilityEvents",children:"Transformation Event (DTE)"}),", issuing ",(0,i.jsx)(n.a,{href:"https://uncefact.github.io/spec-untp/docs/specification/VerifiableCredentials",children:"Verifiable Credentials (VCs)"})," for both the Transformation Event and ",(0,i.jsx)(n.a,{href:"https://uncefact.github.io/spec-untp/docs/specification/DigitalProductPassport",children:"Digital Product Passports (DPPs)"}),", uploading them to the ",(0,i.jsx)(n.a,{href:"/docs/mock-apps/dependent-services/storage-service",children:"Storage service"}),", registering the link to the stored DTE and DPPs with the ",(0,i.jsx)(n.a,{href:"/docs/mock-apps/dependent-services/identity-resolution-service",children:"Identity Resolver service"}),", and managing Transaction events in local storage associated with the event. It handles the entire lifecycle of creating and managing transformation events and associated DPPs."]}),"\n",(0,i.jsx)(n.h2,{id:"diagram",children:"Diagram"}),"\n",(0,i.jsx)(n.mermaid,{value:"sequenceDiagram\nparticipant C as Client\nparticipant P as processTransformationEvent\nparticipant V as VCKit\nparticipant S as Storage\nparticipant D as DLR\nC->>P: Call processTransformationEvent(data, context)\nP->>P: Validate context\nP->>V: Issue EPCIS VC\nV--\x3e>P: Return EPCIS VC\nP->>S: Upload EPCIS VC\nS--\x3e>P: Return EPCIS VC URL\nP->>D: Register EPCIS link resolver\nD--\x3e>P: Return EPCIS resolver URL\nloop For each output item\nP->>V: Issue DPP VC\nV--\x3e>P: Return DPP VC\nP->>S: Upload DPP VC\nS--\x3e>P: Return DPP VC URL\nP->>D: Register DPP link resolver\nD--\x3e>P: Return DPP resolver URL\nend\nP--\x3e>C: Return EPCIS VC"}),"\n",(0,i.jsx)(n.h2,{id:"example",children:"Example"}),"\n",(0,i.jsx)(n.pre,{children:(0,i.jsx)(n.code,{className:"language-json",children:'{\n "name": "processTransformationEvent",\n "parameters": [\n {\n "vckit": {\n "vckitAPIUrl": "https://api.vckit.example.com",\n "issuer": "did:example:123456789abcdefghi"\n },\n "epcisTransformationEvent": {\n "context": ["https://www.w3.org/2018/credentials/v1", "https://gs1.org/voc/"],\n "type": ["VerifiableCredential", "EPCISTransformationEvent"],\n "renderTemplate": [\n {\n "type": "html",\n "template": "

Transformation Event

Output: {{outputItems.0.epc}}

"\n }\n ],\n "dlrIdentificationKeyType": "gtin",\n "dlrLinkTitle": "Transformation Event",\n "dlrVerificationPage": "https://verify.example.com"\n },\n "dlr": {\n "dlrAPIUrl": "https://dlr.example.com/api",\n "dlrAPIKey": "dlr-api-key-12345",\n "namespace": "gs1",\n "linkRegisterPath": "/api/resolver"\n },\n "storage": {\n "url": "https://storage.example.com/upload",\n "params": {\n "resultPath": "/url"\n }\n },\n "dpp": {\n "context": ["https://www.w3.org/2018/credentials/v1", "https://schema.org/"],\n "type": ["VerifiableCredential", "DigitalProductPassport"],\n "renderTemplate": [\n {\n "type": "html",\n "template": "

Product DPP

EPC: {{epc}}

"\n }\n ],\n "dlrIdentificationKeyType": "gtin",\n "dlrLinkTitle": "Product DPP",\n "dlrVerificationPage": "https://verify.example.com"\n },\n "dppCredentials": [\n {\n "mappingFields": [\n {\n "sourcePath": "/vc/credentialSubject/outputItems/0/epc",\n "destinationPath": "/epc"\n }\n ]\n }\n ],\n "identifierKeyPath": "/outputItems/0/epc",\n "transformationEventCredential": {\n "mappingFields": [\n {\n "sourcePath": "/inputItems",\n "destinationPath": "/inputQuantityList"\n },\n {\n "sourcePath": "/outputItems",\n "destinationPath": "/outputQuantityList"\n }\n ],\n "generationFields": [\n {\n "path": "/eventTime",\n "handler": "generateCurrentDatetime"\n },\n {\n "path": "/eventID",\n "handler": "generateUUID"\n }\n ]\n }\n }\n ]\n}\n'})}),"\n",(0,i.jsx)(n.h2,{id:"definitions",children:"Definitions"}),"\n",(0,i.jsxs)(n.table,{children:[(0,i.jsx)(n.thead,{children:(0,i.jsxs)(n.tr,{children:[(0,i.jsx)(n.th,{children:"Property"}),(0,i.jsx)(n.th,{children:"Required"}),(0,i.jsx)(n.th,{children:"Description"}),(0,i.jsx)(n.th,{children:"Type"})]})}),(0,i.jsxs)(n.tbody,{children:[(0,i.jsxs)(n.tr,{children:[(0,i.jsx)(n.td,{children:"vckit"}),(0,i.jsx)(n.td,{children:"Yes"}),(0,i.jsx)(n.td,{children:"Configuration for the VCKit service"}),(0,i.jsx)(n.td,{children:(0,i.jsx)(n.a,{href:"/docs/mock-apps/common/vckit",children:"VCKit"})})]}),(0,i.jsxs)(n.tr,{children:[(0,i.jsx)(n.td,{children:"epcisTransformationEvent"}),(0,i.jsx)(n.td,{children:"Yes"}),(0,i.jsx)(n.td,{children:"Configuration for the EPCIS Transformation Event"}),(0,i.jsx)(n.td,{children:(0,i.jsx)(n.a,{href:"/docs/mock-apps/common/credential",children:"Credential"})})]}),(0,i.jsxs)(n.tr,{children:[(0,i.jsx)(n.td,{children:"dlr"}),(0,i.jsx)(n.td,{children:"Yes"}),(0,i.jsx)(n.td,{children:"Configuration for the Digital Link Resolver"}),(0,i.jsx)(n.td,{children:(0,i.jsx)(n.a,{href:"/docs/mock-apps/common/idr",children:"IDR"})})]}),(0,i.jsxs)(n.tr,{children:[(0,i.jsx)(n.td,{children:"storage"}),(0,i.jsx)(n.td,{children:"Yes"}),(0,i.jsx)(n.td,{children:"Configuration for storage service"}),(0,i.jsx)(n.td,{children:(0,i.jsx)(n.a,{href:"/docs/mock-apps/common/storage",children:"Storage"})})]}),(0,i.jsxs)(n.tr,{children:[(0,i.jsx)(n.td,{children:"dpp"}),(0,i.jsx)(n.td,{children:"Yes"}),(0,i.jsx)(n.td,{children:"Configuration for the Digital Product Passport"}),(0,i.jsx)(n.td,{children:(0,i.jsx)(n.a,{href:"/docs/mock-apps/common/credential",children:"Credential"})})]}),(0,i.jsxs)(n.tr,{children:[(0,i.jsx)(n.td,{children:"dppCredentials"}),(0,i.jsx)(n.td,{children:"Yes"}),(0,i.jsx)(n.td,{children:"Mapping configuration for DPP credentials"}),(0,i.jsxs)(n.td,{children:[(0,i.jsx)(n.a,{href:"/docs/mock-apps/common/construct-data",children:"Construct Data"}),"[]"]})]}),(0,i.jsxs)(n.tr,{children:[(0,i.jsx)(n.td,{children:"identifierKeyPath"}),(0,i.jsx)(n.td,{children:"Yes"}),(0,i.jsx)(n.td,{children:"JSON path to the identifier in the credential subject or the object for function and arguments of JSON path to construct identifier"}),(0,i.jsx)(n.td,{children:(0,i.jsx)(n.a,{href:"/docs/mock-apps/common/identifier-key-path",children:"IdentifierKeyPath"})})]}),(0,i.jsxs)(n.tr,{children:[(0,i.jsx)(n.td,{children:"transformationEventCredential"}),(0,i.jsx)(n.td,{children:"Yes"}),(0,i.jsx)(n.td,{children:"Mapping and generation configuration for the transformation event credential"}),(0,i.jsx)(n.td,{children:(0,i.jsx)(n.a,{href:"/docs/mock-apps/common/construct-data",children:"Construct Data"})})]})]})]})]})}function h(e={}){const{wrapper:n}={...(0,r.R)(),...e.components};return n?(0,i.jsx)(n,{...e,children:(0,i.jsx)(p,{...e})}):p(e)}},8453:(e,n,t)=>{t.d(n,{R:()=>a,x:()=>o});var i=t(6540);const r={},s=i.createContext(r);function a(e){const n=i.useContext(s);return i.useMemo((function(){return"function"==typeof e?e(n):{...n,...e}}),[n,e])}function o(e){let n;return n=e.disableParentContext?"function"==typeof e.components?e.components(r):e.components||r:a(e.components),i.createElement(s.Provider,{value:n},e.children)}}}]); \ No newline at end of file diff --git a/assets/js/5b6552f6.68abf342.js b/assets/js/5b6552f6.18163192.js similarity index 65% rename from assets/js/5b6552f6.68abf342.js rename to assets/js/5b6552f6.18163192.js index 757a6fe6..b02f724a 100644 --- a/assets/js/5b6552f6.68abf342.js +++ b/assets/js/5b6552f6.18163192.js @@ -1 +1 @@ -"use strict";(self.webpackChunkdocumentation=self.webpackChunkdocumentation||[]).push([[7120],{8481:(e,t,n)=>{n.d(t,{Ay:()=>a,RM:()=>s});var i=n(4848),r=n(8453);const s=[];function o(e){const t={admonition:"admonition",p:"p",...(0,r.R)(),...e.components};return(0,i.jsx)(t.admonition,{type:"info",children:(0,i.jsx)(t.p,{children:"Please note that this content is under development and is not ready for implementation. This status message will be updated as content development progresses."})})}function a(e={}){const{wrapper:t}={...(0,r.R)(),...e.components};return t?(0,i.jsx)(t,{...e,children:(0,i.jsx)(o,{...e})}):o(e)}},1335:(e,t,n)=>{n.r(t),n.d(t,{assets:()=>d,contentTitle:()=>a,default:()=>h,frontMatter:()=>o,metadata:()=>c,toc:()=>l});var i=n(4848),r=n(8453),s=n(8481);const o={sidebar_position:26,title:"Process Aggregation Event"},a=void 0,c={id:"mock-apps/services/process-aggregation-event",title:"Process Aggregation Event",description:"Description",source:"@site/docs/mock-apps/services/process-aggregation-event.md",sourceDirName:"mock-apps/services",slug:"/mock-apps/services/process-aggregation-event",permalink:"/tests-untp/docs/mock-apps/services/process-aggregation-event",draft:!1,unlisted:!1,editUrl:"https://github.com/uncefact/tests-untp/tree/main/docs/mock-apps/services/process-aggregation-event.md",tags:[],version:"current",sidebarPosition:26,frontMatter:{sidebar_position:26,title:"Process Aggregation Event"},sidebar:"tutorialSidebar",previous:{title:"Process Transformation Event",permalink:"/tests-untp/docs/mock-apps/services/process-transformation-event"},next:{title:"Merge To Local Storage",permalink:"/tests-untp/docs/mock-apps/services/merge-to-local-storage"}},d={},l=[...s.RM,{value:"Description",id:"description",level:2},{value:"Diagram",id:"diagram",level:2},{value:"Example",id:"example",level:2},{value:"Definitions",id:"definitions",level:2}];function p(e){const t={a:"a",code:"code",h2:"h2",mermaid:"mermaid",p:"p",pre:"pre",table:"table",tbody:"tbody",td:"td",th:"th",thead:"thead",tr:"tr",...(0,r.R)(),...e.components};return(0,i.jsxs)(i.Fragment,{children:[(0,i.jsx)(s.Ay,{}),"\n",(0,i.jsx)(t.h2,{id:"description",children:"Description"}),"\n",(0,i.jsxs)(t.p,{children:["The ",(0,i.jsx)(t.code,{children:"processAggregationEvent"})," service is responsible for processing an ",(0,i.jsx)(t.a,{href:"https://uncefact.github.io/spec-untp/docs/specification/DigitalTraceabilityEvents",children:"Aggregation Event (DTE)"}),", issuing a ",(0,i.jsx)(t.a,{href:"https://uncefact.github.io/spec-untp/docs/specification/VerifiableCredentials",children:"Verifiable Credential (VC)"}),", uploading it to the ",(0,i.jsx)(t.a,{href:"/docs/mock-apps/dependent-services/storage-service",children:"Storage service"}),", registering the link to the stored DTE with the ",(0,i.jsx)(t.a,{href:"/docs/mock-apps/dependent-services/identity-resolution-service",children:"Identity Resolver service"}),". It handles the entire lifecycle of creating and managing an aggregation event, from data input to storage and resolution."]}),"\n",(0,i.jsx)(t.h2,{id:"diagram",children:"Diagram"}),"\n",(0,i.jsx)(t.mermaid,{value:"sequenceDiagram\nparticipant C as Client\nparticipant P as processAggregationEvent\nparticipant V as VCKit\nparticipant S as Storage\nparticipant D as DLR\nC->>P: Call processAggregationEvent(aggregationEvent, context)\nP->>P: Validate context\nP->>P: Extract identifier\nP->>V: Issue VC\nV--\x3e>P: Return VC\nP->>S: Upload VC\nS--\x3e>P: Return VC URL\nP->>D: Register link resolver\nD--\x3e>P: Return resolver URL\nP--\x3e>C: Return VC and resolver URL"}),"\n",(0,i.jsx)(t.h2,{id:"example",children:"Example"}),"\n",(0,i.jsx)(t.pre,{children:(0,i.jsx)(t.code,{className:"language-json",children:'{\n "name": "processAggregationEvent",\n "parameters": [\n {\n "vckit": {\n "vckitAPIUrl": "https://api.vckit.example.com",\n "issuer": "did:example:123456789abcdefghi"\n },\n "epcisAggregationEvent": {\n "context": ["https://www.w3.org/2018/credentials/v1", "https://gs1.org/voc/"],\n "type": ["VerifiableCredential", "EPCISAggregationEvent"],\n "renderTemplate": [\n {\n "type": "html",\n "template": "

Aggregation Event

Parent: {{parentItem.epc}}

"\n }\n ],\n "dlrIdentificationKeyType": "sscc",\n "dlrLinkTitle": "Aggregation Event",\n "dlrVerificationPage": "https://verify.example.com"\n },\n "storage": {\n "url": "https://storage.example.com/upload",\n "params": {\n "resultPath": "/url"\n }\n },\n "dlr": {\n "dlrAPIUrl": "https://dlr.example.com/api",\n "dlrAPIKey": "dlr-api-key-12345"\n },\n "identifierKeyPath": "/parentItem/epc"\n }\n ]\n}\n'})}),"\n",(0,i.jsx)(t.h2,{id:"definitions",children:"Definitions"}),"\n",(0,i.jsxs)(t.table,{children:[(0,i.jsx)(t.thead,{children:(0,i.jsxs)(t.tr,{children:[(0,i.jsx)(t.th,{children:"Property"}),(0,i.jsx)(t.th,{children:"Required"}),(0,i.jsx)(t.th,{children:"Description"}),(0,i.jsx)(t.th,{children:"Type"})]})}),(0,i.jsxs)(t.tbody,{children:[(0,i.jsxs)(t.tr,{children:[(0,i.jsx)(t.td,{children:"vckit"}),(0,i.jsx)(t.td,{children:"Yes"}),(0,i.jsx)(t.td,{children:"Configuration for the VCKit service"}),(0,i.jsx)(t.td,{children:(0,i.jsx)(t.a,{href:"/docs/mock-apps/common/vckit",children:"VCKit"})})]}),(0,i.jsxs)(t.tr,{children:[(0,i.jsx)(t.td,{children:"epcisAggregationEvent"}),(0,i.jsx)(t.td,{children:"Yes"}),(0,i.jsx)(t.td,{children:"Configuration for the EPCIS Aggregation Event"}),(0,i.jsx)(t.td,{children:(0,i.jsx)(t.a,{href:"/docs/mock-apps/common/credential",children:"Credential"})})]}),(0,i.jsxs)(t.tr,{children:[(0,i.jsx)(t.td,{children:"storage"}),(0,i.jsx)(t.td,{children:"Yes"}),(0,i.jsx)(t.td,{children:"Configuration for storage service"}),(0,i.jsx)(t.td,{children:(0,i.jsx)(t.a,{href:"/docs/mock-apps/common/storage",children:"Storage"})})]}),(0,i.jsxs)(t.tr,{children:[(0,i.jsx)(t.td,{children:"dlr"}),(0,i.jsx)(t.td,{children:"Yes"}),(0,i.jsx)(t.td,{children:"Configuration for the Digital Link Resolver"}),(0,i.jsx)(t.td,{children:(0,i.jsx)(t.a,{href:"/docs/mock-apps/common/idr",children:"IDR"})})]}),(0,i.jsxs)(t.tr,{children:[(0,i.jsx)(t.td,{children:"identifierKeyPath"}),(0,i.jsx)(t.td,{children:"Yes"}),(0,i.jsx)(t.td,{children:"JSON path to the identifier in the credential subject or the object for function and arguments of JSON path to construct identifier"}),(0,i.jsx)(t.td,{children:(0,i.jsx)(t.a,{href:"/docs/mock-apps/common/identifier-key-path",children:"IdentifierKeyPath"})})]})]})]})]})}function h(e={}){const{wrapper:t}={...(0,r.R)(),...e.components};return t?(0,i.jsx)(t,{...e,children:(0,i.jsx)(p,{...e})}):p(e)}},8453:(e,t,n)=>{n.d(t,{R:()=>o,x:()=>a});var i=n(6540);const r={},s=i.createContext(r);function o(e){const t=i.useContext(s);return i.useMemo((function(){return"function"==typeof e?e(t):{...t,...e}}),[t,e])}function a(e){let t;return t=e.disableParentContext?"function"==typeof e.components?e.components(r):e.components||r:o(e.components),i.createElement(s.Provider,{value:t},e.children)}}}]); \ No newline at end of file +"use strict";(self.webpackChunkdocumentation=self.webpackChunkdocumentation||[]).push([[7120],{8481:(e,t,n)=>{n.d(t,{Ay:()=>a,RM:()=>s});var i=n(4848),r=n(8453);const s=[];function o(e){const t={admonition:"admonition",p:"p",...(0,r.R)(),...e.components};return(0,i.jsx)(t.admonition,{type:"info",children:(0,i.jsx)(t.p,{children:"Please note that this content is under development and is not ready for implementation. This status message will be updated as content development progresses."})})}function a(e={}){const{wrapper:t}={...(0,r.R)(),...e.components};return t?(0,i.jsx)(t,{...e,children:(0,i.jsx)(o,{...e})}):o(e)}},1335:(e,t,n)=>{n.r(t),n.d(t,{assets:()=>d,contentTitle:()=>a,default:()=>h,frontMatter:()=>o,metadata:()=>c,toc:()=>l});var i=n(4848),r=n(8453),s=n(8481);const o={sidebar_position:26,title:"Process Aggregation Event"},a=void 0,c={id:"mock-apps/services/process-aggregation-event",title:"Process Aggregation Event",description:"Description",source:"@site/docs/mock-apps/services/process-aggregation-event.md",sourceDirName:"mock-apps/services",slug:"/mock-apps/services/process-aggregation-event",permalink:"/tests-untp/docs/mock-apps/services/process-aggregation-event",draft:!1,unlisted:!1,editUrl:"https://github.com/uncefact/tests-untp/tree/main/docs/mock-apps/services/process-aggregation-event.md",tags:[],version:"current",sidebarPosition:26,frontMatter:{sidebar_position:26,title:"Process Aggregation Event"},sidebar:"tutorialSidebar",previous:{title:"Process Transformation Event",permalink:"/tests-untp/docs/mock-apps/services/process-transformation-event"},next:{title:"Merge To Local Storage",permalink:"/tests-untp/docs/mock-apps/services/merge-to-local-storage"}},d={},l=[...s.RM,{value:"Description",id:"description",level:2},{value:"Diagram",id:"diagram",level:2},{value:"Example",id:"example",level:2},{value:"Definitions",id:"definitions",level:2}];function p(e){const t={a:"a",code:"code",h2:"h2",mermaid:"mermaid",p:"p",pre:"pre",table:"table",tbody:"tbody",td:"td",th:"th",thead:"thead",tr:"tr",...(0,r.R)(),...e.components};return(0,i.jsxs)(i.Fragment,{children:[(0,i.jsx)(s.Ay,{}),"\n",(0,i.jsx)(t.h2,{id:"description",children:"Description"}),"\n",(0,i.jsxs)(t.p,{children:["The ",(0,i.jsx)(t.code,{children:"processAggregationEvent"})," service is responsible for processing an ",(0,i.jsx)(t.a,{href:"https://uncefact.github.io/spec-untp/docs/specification/DigitalTraceabilityEvents",children:"Aggregation Event (DTE)"}),", issuing a ",(0,i.jsx)(t.a,{href:"https://uncefact.github.io/spec-untp/docs/specification/VerifiableCredentials",children:"Verifiable Credential (VC)"}),", uploading it to the ",(0,i.jsx)(t.a,{href:"/docs/mock-apps/dependent-services/storage-service",children:"Storage service"}),", registering the link to the stored DTE with the ",(0,i.jsx)(t.a,{href:"/docs/mock-apps/dependent-services/identity-resolution-service",children:"Identity Resolver service"}),". It handles the entire lifecycle of creating and managing an aggregation event, from data input to storage and resolution."]}),"\n",(0,i.jsx)(t.h2,{id:"diagram",children:"Diagram"}),"\n",(0,i.jsx)(t.mermaid,{value:"sequenceDiagram\nparticipant C as Client\nparticipant P as processAggregationEvent\nparticipant V as VCKit\nparticipant S as Storage\nparticipant D as DLR\nC->>P: Call processAggregationEvent(aggregationEvent, context)\nP->>P: Validate context\nP->>P: Extract identifier\nP->>V: Issue VC\nV--\x3e>P: Return VC\nP->>S: Upload VC\nS--\x3e>P: Return VC URL\nP->>D: Register link resolver\nD--\x3e>P: Return resolver URL\nP--\x3e>C: Return VC and resolver URL"}),"\n",(0,i.jsx)(t.h2,{id:"example",children:"Example"}),"\n",(0,i.jsx)(t.pre,{children:(0,i.jsx)(t.code,{className:"language-json",children:'{\n "name": "processAggregationEvent",\n "parameters": [\n {\n "vckit": {\n "vckitAPIUrl": "https://api.vckit.example.com",\n "issuer": "did:example:123456789abcdefghi"\n },\n "epcisAggregationEvent": {\n "context": ["https://www.w3.org/2018/credentials/v1", "https://gs1.org/voc/"],\n "type": ["VerifiableCredential", "EPCISAggregationEvent"],\n "renderTemplate": [\n {\n "type": "html",\n "template": "

Aggregation Event

Parent: {{parentItem.epc}}

"\n }\n ],\n "dlrIdentificationKeyType": "sscc",\n "dlrLinkTitle": "Aggregation Event",\n "dlrVerificationPage": "https://verify.example.com"\n },\n "storage": {\n "url": "https://storage.example.com/upload",\n "params": {\n "resultPath": "/url"\n }\n },\n "dlr": {\n "dlrAPIUrl": "https://dlr.example.com/api",\n "dlrAPIKey": "dlr-api-key-12345",\n "namespace": "gs1",\n "linkRegisterPath": "/api/resolver"\n },\n "identifierKeyPath": "/parentItem/epc"\n }\n ]\n}\n'})}),"\n",(0,i.jsx)(t.h2,{id:"definitions",children:"Definitions"}),"\n",(0,i.jsxs)(t.table,{children:[(0,i.jsx)(t.thead,{children:(0,i.jsxs)(t.tr,{children:[(0,i.jsx)(t.th,{children:"Property"}),(0,i.jsx)(t.th,{children:"Required"}),(0,i.jsx)(t.th,{children:"Description"}),(0,i.jsx)(t.th,{children:"Type"})]})}),(0,i.jsxs)(t.tbody,{children:[(0,i.jsxs)(t.tr,{children:[(0,i.jsx)(t.td,{children:"vckit"}),(0,i.jsx)(t.td,{children:"Yes"}),(0,i.jsx)(t.td,{children:"Configuration for the VCKit service"}),(0,i.jsx)(t.td,{children:(0,i.jsx)(t.a,{href:"/docs/mock-apps/common/vckit",children:"VCKit"})})]}),(0,i.jsxs)(t.tr,{children:[(0,i.jsx)(t.td,{children:"epcisAggregationEvent"}),(0,i.jsx)(t.td,{children:"Yes"}),(0,i.jsx)(t.td,{children:"Configuration for the EPCIS Aggregation Event"}),(0,i.jsx)(t.td,{children:(0,i.jsx)(t.a,{href:"/docs/mock-apps/common/credential",children:"Credential"})})]}),(0,i.jsxs)(t.tr,{children:[(0,i.jsx)(t.td,{children:"storage"}),(0,i.jsx)(t.td,{children:"Yes"}),(0,i.jsx)(t.td,{children:"Configuration for storage service"}),(0,i.jsx)(t.td,{children:(0,i.jsx)(t.a,{href:"/docs/mock-apps/common/storage",children:"Storage"})})]}),(0,i.jsxs)(t.tr,{children:[(0,i.jsx)(t.td,{children:"dlr"}),(0,i.jsx)(t.td,{children:"Yes"}),(0,i.jsx)(t.td,{children:"Configuration for the Digital Link Resolver"}),(0,i.jsx)(t.td,{children:(0,i.jsx)(t.a,{href:"/docs/mock-apps/common/idr",children:"IDR"})})]}),(0,i.jsxs)(t.tr,{children:[(0,i.jsx)(t.td,{children:"identifierKeyPath"}),(0,i.jsx)(t.td,{children:"Yes"}),(0,i.jsx)(t.td,{children:"JSON path to the identifier in the credential subject or the object for function and arguments of JSON path to construct identifier"}),(0,i.jsx)(t.td,{children:(0,i.jsx)(t.a,{href:"/docs/mock-apps/common/identifier-key-path",children:"IdentifierKeyPath"})})]})]})]})]})}function h(e={}){const{wrapper:t}={...(0,r.R)(),...e.components};return t?(0,i.jsx)(t,{...e,children:(0,i.jsx)(p,{...e})}):p(e)}},8453:(e,t,n)=>{n.d(t,{R:()=>o,x:()=>a});var i=n(6540);const r={},s=i.createContext(r);function o(e){const t=i.useContext(s);return i.useMemo((function(){return"function"==typeof e?e(t):{...t,...e}}),[t,e])}function a(e){let t;return t=e.disableParentContext?"function"==typeof e.components?e.components(r):e.components||r:o(e.components),i.createElement(s.Provider,{value:t},e.children)}}}]); \ No newline at end of file diff --git a/assets/js/680d5359.bcb8e972.js b/assets/js/680d5359.648b5eb6.js similarity index 62% rename from assets/js/680d5359.bcb8e972.js rename to assets/js/680d5359.648b5eb6.js index 9e46b7ea..beeda0af 100644 --- a/assets/js/680d5359.bcb8e972.js +++ b/assets/js/680d5359.648b5eb6.js @@ -1 +1 @@ -"use strict";(self.webpackChunkdocumentation=self.webpackChunkdocumentation||[]).push([[8735],{8481:(e,n,t)=>{t.d(n,{Ay:()=>o,RM:()=>r});var s=t(4848),i=t(8453);const r=[];function a(e){const n={admonition:"admonition",p:"p",...(0,i.R)(),...e.components};return(0,s.jsx)(n.admonition,{type:"info",children:(0,s.jsx)(n.p,{children:"Please note that this content is under development and is not ready for implementation. This status message will be updated as content development progresses."})})}function o(e={}){const{wrapper:n}={...(0,i.R)(),...e.components};return n?(0,s.jsx)(n,{...e,children:(0,s.jsx)(a,{...e})}):a(e)}},857:(e,n,t)=>{t.r(n),t.d(n,{assets:()=>d,contentTitle:()=>o,default:()=>h,frontMatter:()=>a,metadata:()=>c,toc:()=>l});var s=t(4848),i=t(8453),r=t(8481);const a={sidebar_position:24,title:"Process Transaction Event"},o=void 0,c={id:"mock-apps/services/process-transaction-event",title:"Process Transaction Event",description:"Description",source:"@site/docs/mock-apps/services/process-transaction-event.md",sourceDirName:"mock-apps/services",slug:"/mock-apps/services/process-transaction-event",permalink:"/tests-untp/docs/mock-apps/services/process-transaction-event",draft:!1,unlisted:!1,editUrl:"https://github.com/uncefact/tests-untp/tree/main/docs/mock-apps/services/process-transaction-event.md",tags:[],version:"current",sidebarPosition:24,frontMatter:{sidebar_position:24,title:"Process Transaction Event"},sidebar:"tutorialSidebar",previous:{title:"Process DPP",permalink:"/tests-untp/docs/mock-apps/services/process-dpp"},next:{title:"Process Transformation Event",permalink:"/tests-untp/docs/mock-apps/services/process-transformation-event"}},d={},l=[...r.RM,{value:"Description",id:"description",level:2},{value:"Diagram",id:"diagram",level:2},{value:"Example",id:"example",level:2},{value:"Definitions",id:"definitions",level:2}];function p(e){const n={a:"a",code:"code",h2:"h2",mermaid:"mermaid",p:"p",pre:"pre",table:"table",tbody:"tbody",td:"td",th:"th",thead:"thead",tr:"tr",...(0,i.R)(),...e.components};return(0,s.jsxs)(s.Fragment,{children:[(0,s.jsx)(r.Ay,{}),"\n",(0,s.jsx)(n.h2,{id:"description",children:"Description"}),"\n",(0,s.jsxs)(n.p,{children:["The ",(0,s.jsx)(n.code,{children:"processTransactionEvent"})," service is responsible for processing a ",(0,s.jsx)(n.a,{href:"https://uncefact.github.io/spec-untp/docs/specification/DigitalTraceabilityEvents",children:"Transaction Event (DTE)"}),", issuing a ",(0,s.jsx)(n.a,{href:"https://uncefact.github.io/spec-untp/docs/specification/VerifiableCredentials",children:"Verifiable Credential (VC)"}),", uploading it to the ",(0,s.jsx)(n.a,{href:"/docs/mock-apps/dependent-services/storage-service",children:"Storage service"}),", registering the link to the stored DTE with the ",(0,s.jsx)(n.a,{href:"/docs/mock-apps/dependent-services/identity-resolution-service",children:"Identity Resolver service"}),", and managing DPPs in local storage associated with the event. It handles the entire lifecycle of creating and managing a transaction event, from data input to storage, resolution, and local data management."]}),"\n",(0,s.jsx)(n.h2,{id:"diagram",children:"Diagram"}),"\n",(0,s.jsx)(n.mermaid,{value:"sequenceDiagram\nparticipant C as Client\nparticipant P as processTransactionEvent\nparticipant V as VCKit\nparticipant S as Storage\nparticipant D as DLR\nparticipant L as LocalStorage\nC->>P: Call processTransactionEvent(transactionEvent, context)\nP->>P: Validate context\nP->>P: Extract identifier\nP->>V: Issue VC\nV--\x3e>P: Return VC\nP->>S: Upload VC\nS--\x3e>P: Return VC URL\nP->>D: Register link resolver\nD--\x3e>P: Return resolver URL\nP->>L: Delete associated DPPs from local storage\nP--\x3e>C: Return VC and resolver URL"}),"\n",(0,s.jsx)(n.h2,{id:"example",children:"Example"}),"\n",(0,s.jsx)(n.pre,{children:(0,s.jsx)(n.code,{className:"language-json",children:'{\n "name": "processTransactionEvent",\n "parameters": [\n {\n "vckit": {\n "vckitAPIUrl": "https://api.vckit.example.com",\n "issuer": "did:example:123456789abcdefghi"\n },\n "epcisTransactionEvent": {\n "context": ["https://www.w3.org/2018/credentials/v1", "https://gs1.org/voc/"],\n "type": ["VerifiableCredential", "EPCISTransactionEvent"],\n "renderTemplate": [\n {\n "type": "html",\n "template": "

Transaction Event

ID: {{transactionId}}

"\n }\n ],\n "dlrIdentificationKeyType": "gtin",\n "dlrLinkTitle": "Transaction Event",\n "dlrVerificationPage": "https://verify.example.com"\n },\n "storage": {\n "url": "https://storage.example.com/upload",\n "params": {\n "resultPath": "/url"\n }\n },\n "dlr": {\n "dlrAPIUrl": "https://dlr.example.com/api",\n "dlrAPIKey": "dlr-api-key-12345"\n },\n "identifierKeyPath": "/transactionId",\n "localStorageParams": {\n "storageKey": "transactionEvents",\n "keyPath": "/transactionId"\n }\n }\n ]\n}\n'})}),"\n",(0,s.jsx)(n.h2,{id:"definitions",children:"Definitions"}),"\n",(0,s.jsxs)(n.table,{children:[(0,s.jsx)(n.thead,{children:(0,s.jsxs)(n.tr,{children:[(0,s.jsx)(n.th,{children:"Property"}),(0,s.jsx)(n.th,{children:"Required"}),(0,s.jsx)(n.th,{children:"Description"}),(0,s.jsx)(n.th,{children:"Type"})]})}),(0,s.jsxs)(n.tbody,{children:[(0,s.jsxs)(n.tr,{children:[(0,s.jsx)(n.td,{children:"vckit"}),(0,s.jsx)(n.td,{children:"Yes"}),(0,s.jsx)(n.td,{children:"Configuration for the VCKit service"}),(0,s.jsx)(n.td,{children:(0,s.jsx)(n.a,{href:"/docs/mock-apps/common/vckit",children:"VCKit"})})]}),(0,s.jsxs)(n.tr,{children:[(0,s.jsx)(n.td,{children:"epcisTransactionEvent"}),(0,s.jsx)(n.td,{children:"Yes"}),(0,s.jsx)(n.td,{children:"Configuration for the EPCIS Transaction Event"}),(0,s.jsx)(n.td,{children:(0,s.jsx)(n.a,{href:"/docs/mock-apps/common/credential",children:"Credential"})})]}),(0,s.jsxs)(n.tr,{children:[(0,s.jsx)(n.td,{children:"storage"}),(0,s.jsx)(n.td,{children:"Yes"}),(0,s.jsx)(n.td,{children:"Configuration for storage service"}),(0,s.jsx)(n.td,{children:(0,s.jsx)(n.a,{href:"/docs/mock-apps/common/storage",children:"Storage"})})]}),(0,s.jsxs)(n.tr,{children:[(0,s.jsx)(n.td,{children:"dlr"}),(0,s.jsx)(n.td,{children:"Yes"}),(0,s.jsx)(n.td,{children:"Configuration for the Digital Link Resolver"}),(0,s.jsx)(n.td,{children:(0,s.jsx)(n.a,{href:"/docs/mock-apps/common/idr",children:"IDR"})})]}),(0,s.jsxs)(n.tr,{children:[(0,s.jsx)(n.td,{children:"identifierKeyPath"}),(0,s.jsx)(n.td,{children:"Yes"}),(0,s.jsx)(n.td,{children:"JSON path to the identifier in the credential subject or the object for function and arguments of JSON path to construct identifier"}),(0,s.jsx)(n.td,{children:(0,s.jsx)(n.a,{href:"/docs/mock-apps/common/identifier-key-path",children:"IdentifierKeyPath"})})]}),(0,s.jsxs)(n.tr,{children:[(0,s.jsx)(n.td,{children:"localStorageParams"}),(0,s.jsx)(n.td,{children:"Yes"}),(0,s.jsx)(n.td,{children:"Configuration for local storage management"}),(0,s.jsx)(n.td,{children:(0,s.jsx)(n.a,{href:"/docs/mock-apps/common/local-storage",children:"LocalStorage"})})]})]})]})]})}function h(e={}){const{wrapper:n}={...(0,i.R)(),...e.components};return n?(0,s.jsx)(n,{...e,children:(0,s.jsx)(p,{...e})}):p(e)}},8453:(e,n,t)=>{t.d(n,{R:()=>a,x:()=>o});var s=t(6540);const i={},r=s.createContext(i);function a(e){const n=s.useContext(r);return s.useMemo((function(){return"function"==typeof e?e(n):{...n,...e}}),[n,e])}function o(e){let n;return n=e.disableParentContext?"function"==typeof e.components?e.components(i):e.components||i:a(e.components),s.createElement(r.Provider,{value:n},e.children)}}}]); \ No newline at end of file +"use strict";(self.webpackChunkdocumentation=self.webpackChunkdocumentation||[]).push([[8735],{8481:(e,n,t)=>{t.d(n,{Ay:()=>o,RM:()=>r});var s=t(4848),i=t(8453);const r=[];function a(e){const n={admonition:"admonition",p:"p",...(0,i.R)(),...e.components};return(0,s.jsx)(n.admonition,{type:"info",children:(0,s.jsx)(n.p,{children:"Please note that this content is under development and is not ready for implementation. This status message will be updated as content development progresses."})})}function o(e={}){const{wrapper:n}={...(0,i.R)(),...e.components};return n?(0,s.jsx)(n,{...e,children:(0,s.jsx)(a,{...e})}):a(e)}},857:(e,n,t)=>{t.r(n),t.d(n,{assets:()=>d,contentTitle:()=>o,default:()=>h,frontMatter:()=>a,metadata:()=>c,toc:()=>l});var s=t(4848),i=t(8453),r=t(8481);const a={sidebar_position:24,title:"Process Transaction Event"},o=void 0,c={id:"mock-apps/services/process-transaction-event",title:"Process Transaction Event",description:"Description",source:"@site/docs/mock-apps/services/process-transaction-event.md",sourceDirName:"mock-apps/services",slug:"/mock-apps/services/process-transaction-event",permalink:"/tests-untp/docs/mock-apps/services/process-transaction-event",draft:!1,unlisted:!1,editUrl:"https://github.com/uncefact/tests-untp/tree/main/docs/mock-apps/services/process-transaction-event.md",tags:[],version:"current",sidebarPosition:24,frontMatter:{sidebar_position:24,title:"Process Transaction Event"},sidebar:"tutorialSidebar",previous:{title:"Process DPP",permalink:"/tests-untp/docs/mock-apps/services/process-dpp"},next:{title:"Process Transformation Event",permalink:"/tests-untp/docs/mock-apps/services/process-transformation-event"}},d={},l=[...r.RM,{value:"Description",id:"description",level:2},{value:"Diagram",id:"diagram",level:2},{value:"Example",id:"example",level:2},{value:"Definitions",id:"definitions",level:2}];function p(e){const n={a:"a",code:"code",h2:"h2",mermaid:"mermaid",p:"p",pre:"pre",table:"table",tbody:"tbody",td:"td",th:"th",thead:"thead",tr:"tr",...(0,i.R)(),...e.components};return(0,s.jsxs)(s.Fragment,{children:[(0,s.jsx)(r.Ay,{}),"\n",(0,s.jsx)(n.h2,{id:"description",children:"Description"}),"\n",(0,s.jsxs)(n.p,{children:["The ",(0,s.jsx)(n.code,{children:"processTransactionEvent"})," service is responsible for processing a ",(0,s.jsx)(n.a,{href:"https://uncefact.github.io/spec-untp/docs/specification/DigitalTraceabilityEvents",children:"Transaction Event (DTE)"}),", issuing a ",(0,s.jsx)(n.a,{href:"https://uncefact.github.io/spec-untp/docs/specification/VerifiableCredentials",children:"Verifiable Credential (VC)"}),", uploading it to the ",(0,s.jsx)(n.a,{href:"/docs/mock-apps/dependent-services/storage-service",children:"Storage service"}),", registering the link to the stored DTE with the ",(0,s.jsx)(n.a,{href:"/docs/mock-apps/dependent-services/identity-resolution-service",children:"Identity Resolver service"}),", and managing DPPs in local storage associated with the event. It handles the entire lifecycle of creating and managing a transaction event, from data input to storage, resolution, and local data management."]}),"\n",(0,s.jsx)(n.h2,{id:"diagram",children:"Diagram"}),"\n",(0,s.jsx)(n.mermaid,{value:"sequenceDiagram\nparticipant C as Client\nparticipant P as processTransactionEvent\nparticipant V as VCKit\nparticipant S as Storage\nparticipant D as DLR\nparticipant L as LocalStorage\nC->>P: Call processTransactionEvent(transactionEvent, context)\nP->>P: Validate context\nP->>P: Extract identifier\nP->>V: Issue VC\nV--\x3e>P: Return VC\nP->>S: Upload VC\nS--\x3e>P: Return VC URL\nP->>D: Register link resolver\nD--\x3e>P: Return resolver URL\nP->>L: Delete associated DPPs from local storage\nP--\x3e>C: Return VC and resolver URL"}),"\n",(0,s.jsx)(n.h2,{id:"example",children:"Example"}),"\n",(0,s.jsx)(n.pre,{children:(0,s.jsx)(n.code,{className:"language-json",children:'{\n "name": "processTransactionEvent",\n "parameters": [\n {\n "vckit": {\n "vckitAPIUrl": "https://api.vckit.example.com",\n "issuer": "did:example:123456789abcdefghi"\n },\n "epcisTransactionEvent": {\n "context": ["https://www.w3.org/2018/credentials/v1", "https://gs1.org/voc/"],\n "type": ["VerifiableCredential", "EPCISTransactionEvent"],\n "renderTemplate": [\n {\n "type": "html",\n "template": "

Transaction Event

ID: {{transactionId}}

"\n }\n ],\n "dlrIdentificationKeyType": "gtin",\n "dlrLinkTitle": "Transaction Event",\n "dlrVerificationPage": "https://verify.example.com"\n },\n "storage": {\n "url": "https://storage.example.com/upload",\n "params": {\n "resultPath": "/url"\n }\n },\n "dlr": {\n "dlrAPIUrl": "https://dlr.example.com/api",\n "dlrAPIKey": "dlr-api-key-12345",\n "namespace": "gs1",\n "linkRegisterPath": "/api/resolver"\n },\n "identifierKeyPath": "/transactionId",\n "localStorageParams": {\n "storageKey": "transactionEvents",\n "keyPath": "/transactionId"\n }\n }\n ]\n}\n'})}),"\n",(0,s.jsx)(n.h2,{id:"definitions",children:"Definitions"}),"\n",(0,s.jsxs)(n.table,{children:[(0,s.jsx)(n.thead,{children:(0,s.jsxs)(n.tr,{children:[(0,s.jsx)(n.th,{children:"Property"}),(0,s.jsx)(n.th,{children:"Required"}),(0,s.jsx)(n.th,{children:"Description"}),(0,s.jsx)(n.th,{children:"Type"})]})}),(0,s.jsxs)(n.tbody,{children:[(0,s.jsxs)(n.tr,{children:[(0,s.jsx)(n.td,{children:"vckit"}),(0,s.jsx)(n.td,{children:"Yes"}),(0,s.jsx)(n.td,{children:"Configuration for the VCKit service"}),(0,s.jsx)(n.td,{children:(0,s.jsx)(n.a,{href:"/docs/mock-apps/common/vckit",children:"VCKit"})})]}),(0,s.jsxs)(n.tr,{children:[(0,s.jsx)(n.td,{children:"epcisTransactionEvent"}),(0,s.jsx)(n.td,{children:"Yes"}),(0,s.jsx)(n.td,{children:"Configuration for the EPCIS Transaction Event"}),(0,s.jsx)(n.td,{children:(0,s.jsx)(n.a,{href:"/docs/mock-apps/common/credential",children:"Credential"})})]}),(0,s.jsxs)(n.tr,{children:[(0,s.jsx)(n.td,{children:"storage"}),(0,s.jsx)(n.td,{children:"Yes"}),(0,s.jsx)(n.td,{children:"Configuration for storage service"}),(0,s.jsx)(n.td,{children:(0,s.jsx)(n.a,{href:"/docs/mock-apps/common/storage",children:"Storage"})})]}),(0,s.jsxs)(n.tr,{children:[(0,s.jsx)(n.td,{children:"dlr"}),(0,s.jsx)(n.td,{children:"Yes"}),(0,s.jsx)(n.td,{children:"Configuration for the Digital Link Resolver"}),(0,s.jsx)(n.td,{children:(0,s.jsx)(n.a,{href:"/docs/mock-apps/common/idr",children:"IDR"})})]}),(0,s.jsxs)(n.tr,{children:[(0,s.jsx)(n.td,{children:"identifierKeyPath"}),(0,s.jsx)(n.td,{children:"Yes"}),(0,s.jsx)(n.td,{children:"JSON path to the identifier in the credential subject or the object for function and arguments of JSON path to construct identifier"}),(0,s.jsx)(n.td,{children:(0,s.jsx)(n.a,{href:"/docs/mock-apps/common/identifier-key-path",children:"IdentifierKeyPath"})})]}),(0,s.jsxs)(n.tr,{children:[(0,s.jsx)(n.td,{children:"localStorageParams"}),(0,s.jsx)(n.td,{children:"Yes"}),(0,s.jsx)(n.td,{children:"Configuration for local storage management"}),(0,s.jsx)(n.td,{children:(0,s.jsx)(n.a,{href:"/docs/mock-apps/common/local-storage",children:"LocalStorage"})})]})]})]})]})}function h(e={}){const{wrapper:n}={...(0,i.R)(),...e.components};return n?(0,s.jsx)(n,{...e,children:(0,s.jsx)(p,{...e})}):p(e)}},8453:(e,n,t)=>{t.d(n,{R:()=>a,x:()=>o});var s=t(6540);const i={},r=s.createContext(i);function a(e){const n=s.useContext(r);return s.useMemo((function(){return"function"==typeof e?e(n):{...n,...e}}),[n,e])}function o(e){let n;return n=e.disableParentContext?"function"==typeof e.components?e.components(i):e.components||i:a(e.components),s.createElement(r.Provider,{value:n},e.children)}}}]); \ No newline at end of file diff --git a/assets/js/7e459fdf.331e4994.js b/assets/js/7e459fdf.8ce5940e.js similarity index 53% rename from assets/js/7e459fdf.331e4994.js rename to assets/js/7e459fdf.8ce5940e.js index f1cf8db8..4e337471 100644 --- a/assets/js/7e459fdf.331e4994.js +++ b/assets/js/7e459fdf.8ce5940e.js @@ -1 +1 @@ -"use strict";(self.webpackChunkdocumentation=self.webpackChunkdocumentation||[]).push([[7553],{8481:(e,t,n)=>{n.d(t,{Ay:()=>c,RM:()=>s});var i=n(4848),o=n(8453);const s=[];function r(e){const t={admonition:"admonition",p:"p",...(0,o.R)(),...e.components};return(0,i.jsx)(t.admonition,{type:"info",children:(0,i.jsx)(t.p,{children:"Please note that this content is under development and is not ready for implementation. This status message will be updated as content development progresses."})})}function c(e={}){const{wrapper:t}={...(0,o.R)(),...e.components};return t?(0,i.jsx)(t,{...e,children:(0,i.jsx)(r,{...e})}):r(e)}},6720:(e,t,n)=>{n.r(t),n.d(t,{assets:()=>a,contentTitle:()=>c,default:()=>h,frontMatter:()=>r,metadata:()=>d,toc:()=>l});var i=n(4848),o=n(8453),s=n(8481);const r={sidebar_position:31,title:"IDR"},c=void 0,d={id:"mock-apps/common/idr",title:"IDR",description:"Description",source:"@site/docs/mock-apps/common/idr.md",sourceDirName:"mock-apps/common",slug:"/mock-apps/common/idr",permalink:"/tests-untp/docs/mock-apps/common/idr",draft:!1,unlisted:!1,editUrl:"https://github.com/uncefact/tests-untp/tree/main/docs/mock-apps/common/idr.md",tags:[],version:"current",sidebarPosition:31,frontMatter:{sidebar_position:31,title:"IDR"},sidebar:"tutorialSidebar",previous:{title:"VCkit",permalink:"/tests-untp/docs/mock-apps/common/vckit"},next:{title:"Storage",permalink:"/tests-untp/docs/mock-apps/common/storage"}},a={},l=[...s.RM,{value:"Description",id:"description",level:2},{value:"Definition",id:"definition",level:2}];function p(e){const t={a:"a",code:"code",h2:"h2",p:"p",table:"table",tbody:"tbody",td:"td",th:"th",thead:"thead",tr:"tr",...(0,o.R)(),...e.components};return(0,i.jsxs)(i.Fragment,{children:[(0,i.jsx)(s.Ay,{}),"\n",(0,i.jsx)(t.h2,{id:"description",children:"Description"}),"\n",(0,i.jsxs)(t.p,{children:["The ",(0,i.jsx)(t.code,{children:"IDR"})," object contains configuration for the ",(0,i.jsx)(t.a,{href:"/docs/mock-apps/dependent-services/identity-resolution-service",children:"Identity Resolver Service"}),", which is used to create and manage resolvable links for the UNTP credentials."]}),"\n",(0,i.jsx)(t.h2,{id:"definition",children:"Definition"}),"\n",(0,i.jsxs)(t.table,{children:[(0,i.jsx)(t.thead,{children:(0,i.jsxs)(t.tr,{children:[(0,i.jsx)(t.th,{children:"Property"}),(0,i.jsx)(t.th,{children:"Required"}),(0,i.jsx)(t.th,{children:"Description"}),(0,i.jsx)(t.th,{children:"Type"})]})}),(0,i.jsxs)(t.tbody,{children:[(0,i.jsxs)(t.tr,{children:[(0,i.jsx)(t.td,{children:"dlrAPIUrl"}),(0,i.jsx)(t.td,{children:"Yes"}),(0,i.jsx)(t.td,{children:"URL for the Identity Resolver API"}),(0,i.jsx)(t.td,{children:"String"})]}),(0,i.jsxs)(t.tr,{children:[(0,i.jsx)(t.td,{children:"dlrAPIKey"}),(0,i.jsx)(t.td,{children:"No"}),(0,i.jsx)(t.td,{children:"API key for the Identity Resolver"}),(0,i.jsx)(t.td,{children:"String"})]})]})]})]})}function h(e={}){const{wrapper:t}={...(0,o.R)(),...e.components};return t?(0,i.jsx)(t,{...e,children:(0,i.jsx)(p,{...e})}):p(e)}},8453:(e,t,n)=>{n.d(t,{R:()=>r,x:()=>c});var i=n(6540);const o={},s=i.createContext(o);function r(e){const t=i.useContext(s);return i.useMemo((function(){return"function"==typeof e?e(t):{...t,...e}}),[t,e])}function c(e){let t;return t=e.disableParentContext?"function"==typeof e.components?e.components(o):e.components||o:r(e.components),i.createElement(s.Provider,{value:t},e.children)}}}]); \ No newline at end of file +"use strict";(self.webpackChunkdocumentation=self.webpackChunkdocumentation||[]).push([[7553],{8481:(e,t,n)=>{n.d(t,{Ay:()=>d,RM:()=>o});var i=n(4848),s=n(8453);const o=[];function r(e){const t={admonition:"admonition",p:"p",...(0,s.R)(),...e.components};return(0,i.jsx)(t.admonition,{type:"info",children:(0,i.jsx)(t.p,{children:"Please note that this content is under development and is not ready for implementation. This status message will be updated as content development progresses."})})}function d(e={}){const{wrapper:t}={...(0,s.R)(),...e.components};return t?(0,i.jsx)(t,{...e,children:(0,i.jsx)(r,{...e})}):r(e)}},6720:(e,t,n)=>{n.r(t),n.d(t,{assets:()=>l,contentTitle:()=>d,default:()=>p,frontMatter:()=>r,metadata:()=>c,toc:()=>a});var i=n(4848),s=n(8453),o=n(8481);const r={sidebar_position:31,title:"IDR"},d=void 0,c={id:"mock-apps/common/idr",title:"IDR",description:"Description",source:"@site/docs/mock-apps/common/idr.md",sourceDirName:"mock-apps/common",slug:"/mock-apps/common/idr",permalink:"/tests-untp/docs/mock-apps/common/idr",draft:!1,unlisted:!1,editUrl:"https://github.com/uncefact/tests-untp/tree/main/docs/mock-apps/common/idr.md",tags:[],version:"current",sidebarPosition:31,frontMatter:{sidebar_position:31,title:"IDR"},sidebar:"tutorialSidebar",previous:{title:"VCkit",permalink:"/tests-untp/docs/mock-apps/common/vckit"},next:{title:"Storage",permalink:"/tests-untp/docs/mock-apps/common/storage"}},l={},a=[...o.RM,{value:"Description",id:"description",level:2},{value:"Definition",id:"definition",level:2}];function h(e){const t={a:"a",code:"code",h2:"h2",p:"p",table:"table",tbody:"tbody",td:"td",th:"th",thead:"thead",tr:"tr",...(0,s.R)(),...e.components};return(0,i.jsxs)(i.Fragment,{children:[(0,i.jsx)(o.Ay,{}),"\n",(0,i.jsx)(t.h2,{id:"description",children:"Description"}),"\n",(0,i.jsxs)(t.p,{children:["The ",(0,i.jsx)(t.code,{children:"IDR"})," object contains configuration for the ",(0,i.jsx)(t.a,{href:"/docs/mock-apps/dependent-services/identity-resolution-service",children:"Identity Resolver Service"}),", which is used to create and manage resolvable links for the UNTP credentials."]}),"\n",(0,i.jsx)(t.h2,{id:"definition",children:"Definition"}),"\n",(0,i.jsxs)(t.table,{children:[(0,i.jsx)(t.thead,{children:(0,i.jsxs)(t.tr,{children:[(0,i.jsx)(t.th,{children:"Property"}),(0,i.jsx)(t.th,{children:"Required"}),(0,i.jsx)(t.th,{children:"Description"}),(0,i.jsx)(t.th,{children:"Type"})]})}),(0,i.jsxs)(t.tbody,{children:[(0,i.jsxs)(t.tr,{children:[(0,i.jsx)(t.td,{children:"dlrAPIUrl"}),(0,i.jsx)(t.td,{children:"Yes"}),(0,i.jsx)(t.td,{children:"URL for the Identity Resolver API"}),(0,i.jsx)(t.td,{children:"String"})]}),(0,i.jsxs)(t.tr,{children:[(0,i.jsx)(t.td,{children:"dlrAPIKey"}),(0,i.jsx)(t.td,{children:"No"}),(0,i.jsx)(t.td,{children:"API key for the Identity Resolver"}),(0,i.jsx)(t.td,{children:"String"})]}),(0,i.jsxs)(t.tr,{children:[(0,i.jsx)(t.td,{children:"namespace"}),(0,i.jsx)(t.td,{children:"Yes"}),(0,i.jsx)(t.td,{children:"Namespace for the Identity Resolver"}),(0,i.jsx)(t.td,{children:"String"})]}),(0,i.jsxs)(t.tr,{children:[(0,i.jsx)(t.td,{children:"linkRegisterPath"}),(0,i.jsx)(t.td,{children:"No"}),(0,i.jsx)(t.td,{children:"Path to register a link"}),(0,i.jsx)(t.td,{children:"String"})]})]})]})]})}function p(e={}){const{wrapper:t}={...(0,s.R)(),...e.components};return t?(0,i.jsx)(t,{...e,children:(0,i.jsx)(h,{...e})}):h(e)}},8453:(e,t,n)=>{n.d(t,{R:()=>r,x:()=>d});var i=n(6540);const s={},o=i.createContext(s);function r(e){const t=i.useContext(o);return i.useMemo((function(){return"function"==typeof e?e(t):{...t,...e}}),[t,e])}function d(e){let t;return t=e.disableParentContext?"function"==typeof e.components?e.components(s):e.components||s:r(e.components),i.createElement(o.Provider,{value:t},e.children)}}}]); \ No newline at end of file diff --git a/assets/js/dbe878d5.68ab3c6f.js b/assets/js/dbe878d5.68ab3c6f.js new file mode 100644 index 00000000..06e5e241 --- /dev/null +++ b/assets/js/dbe878d5.68ab3c6f.js @@ -0,0 +1 @@ +"use strict";(self.webpackChunkdocumentation=self.webpackChunkdocumentation||[]).push([[4818],{8481:(e,n,t)=>{t.d(n,{Ay:()=>c,RM:()=>r});var s=t(4848),i=t(8453);const r=[];function o(e){const n={admonition:"admonition",p:"p",...(0,i.R)(),...e.components};return(0,s.jsx)(n.admonition,{type:"info",children:(0,s.jsx)(n.p,{children:"Please note that this content is under development and is not ready for implementation. This status message will be updated as content development progresses."})})}function c(e={}){const{wrapper:n}={...(0,i.R)(),...e.components};return n?(0,s.jsx)(n,{...e,children:(0,s.jsx)(o,{...e})}):o(e)}},3560:(e,n,t)=>{t.r(n),t.d(n,{assets:()=>d,contentTitle:()=>c,default:()=>h,frontMatter:()=>o,metadata:()=>a,toc:()=>l});var s=t(4848),i=t(8453),r=t(8481);const o={sidebar_position:23,title:"Process DPP"},c=void 0,a={id:"mock-apps/services/process-dpp",title:"Process DPP",description:"Description",source:"@site/docs/mock-apps/services/process-dpp.md",sourceDirName:"mock-apps/services",slug:"/mock-apps/services/process-dpp",permalink:"/tests-untp/docs/mock-apps/services/process-dpp",draft:!1,unlisted:!1,editUrl:"https://github.com/uncefact/tests-untp/tree/main/docs/mock-apps/services/process-dpp.md",tags:[],version:"current",sidebarPosition:23,frontMatter:{sidebar_position:23,title:"Process DPP"},sidebar:"tutorialSidebar",previous:{title:"Services",permalink:"/tests-untp/docs/mock-apps/services/"},next:{title:"Process Transaction Event",permalink:"/tests-untp/docs/mock-apps/services/process-transaction-event"}},d={},l=[...r.RM,{value:"Description",id:"description",level:2},{value:"Diagram",id:"diagram",level:2},{value:"Example",id:"example",level:2},{value:"Definitions",id:"definitions",level:2}];function p(e){const n={a:"a",code:"code",h2:"h2",mermaid:"mermaid",p:"p",pre:"pre",table:"table",tbody:"tbody",td:"td",th:"th",thead:"thead",tr:"tr",...(0,i.R)(),...e.components};return(0,s.jsxs)(s.Fragment,{children:[(0,s.jsx)(r.Ay,{}),"\n",(0,s.jsx)(n.h2,{id:"description",children:"Description"}),"\n",(0,s.jsxs)(n.p,{children:["The ",(0,s.jsx)(n.code,{children:"processDPP"})," service is responsible for processing a ",(0,s.jsx)(n.a,{href:"https://uncefact.github.io/spec-untp/docs/specification/DigitalProductPassport",children:"Digital Product Passport (DPP)"}),", issuing a ",(0,s.jsx)(n.a,{href:"https://uncefact.github.io/spec-untp/docs/specification/VerifiableCredentials",children:"Verifiable Credential (VC)"}),", uploading it to the ",(0,s.jsx)(n.a,{href:"/docs/mock-apps/dependent-services/storage-service",children:"Storage service"}),", and registering the link to the stored DPP with the ",(0,s.jsx)(n.a,{href:"/docs/mock-apps/dependent-services/identity-resolution-service",children:"Identity Resolver service"}),". It handles the entire lifecycle of creating and managing a DPP, from data input to storage and resolution."]}),"\n",(0,s.jsx)(n.h2,{id:"diagram",children:"Diagram"}),"\n",(0,s.jsx)(n.mermaid,{value:"\nsequenceDiagram\n\nparticipant C as Client\n\nparticipant P as processDPP\n\nparticipant V as VCKit\n\nparticipant S as Storage\n\nparticipant D as DLR\n\nC->>P: Call processDPP(data, context)\n\nP->>P: Validate context\n\nP->>P: Extract identifier\n\nP->>V: Issue VC\n\nV--\x3e>P: Return VC\n\nP->>S: Upload VC\n\nS--\x3e>P: Return VC URL\n\nP->>D: Register link resolver\n\nD--\x3e>P: Return resolver URL\n\nP--\x3e>C: Return VC and resolver URL\n"}),"\n",(0,s.jsx)(n.h2,{id:"example",children:"Example"}),"\n",(0,s.jsx)(n.pre,{children:(0,s.jsx)(n.code,{className:"language-json",children:'{\n "name": "processDPP",\n "parameters": [\n {\n "vckit": {\n "vckitAPIUrl": "http://localhost:3332/v2",\n "issuer": "did:web:example.com:steel-mill-1"\n },\n "dpp": {\n "context": ["https://dpp-json-ld.s3.ap-southeast-2.amazonaws.com/dppld.json"],\n "renderTemplate": [\n {\n "template": "...",\n "@type": "WebRenderingTemplate2022"\n }\n ],\n "type": ["VerifiableCredential", " DigitalProductPassport"],\n "dlrLinkTitle": "Steel Passport",\n "dlrIdentificationKeyType": "gtin",\n "dlrVerificationPage": "http://localhost:3332/verify"\n },\n "dlr": {\n "dlrAPIUrl": "https://dlr.example.com",\n "dlrAPIKey": "5555555555555",\n "namespace": "gs1",\n "linkRegisterPath": "/api/resolver"\n },\n "storage": {\n "url": "https://storage.example.com/v1/documents",\n "params": {\n "bucket": "verifiable-credentials",\n "resultPath": "/uri"\n },\n "options": {\n "method": "POST",\n "headers": {\n "Content-Type": "application/json"\n }\n }\n },\n "identifierKeyPath": "/product/itemIdentifiers/0/identifierValue"\n }\n ]\n}\n'})}),"\n",(0,s.jsx)(n.h2,{id:"definitions",children:"Definitions"}),"\n",(0,s.jsxs)(n.table,{children:[(0,s.jsx)(n.thead,{children:(0,s.jsxs)(n.tr,{children:[(0,s.jsx)(n.th,{children:"Property"}),(0,s.jsx)(n.th,{children:"Required"}),(0,s.jsx)(n.th,{children:"Description"}),(0,s.jsx)(n.th,{children:"Type"})]})}),(0,s.jsxs)(n.tbody,{children:[(0,s.jsxs)(n.tr,{children:[(0,s.jsx)(n.td,{children:"vckit"}),(0,s.jsx)(n.td,{children:"Yes"}),(0,s.jsx)(n.td,{children:"Configuration for the VCKit service"}),(0,s.jsx)(n.td,{children:(0,s.jsx)(n.a,{href:"/docs/mock-apps/common/vckit",children:"VCKit"})})]}),(0,s.jsxs)(n.tr,{children:[(0,s.jsx)(n.td,{children:"dpp"}),(0,s.jsx)(n.td,{children:"Yes"}),(0,s.jsx)(n.td,{children:"Configuration for the Digital Product Passport"}),(0,s.jsx)(n.td,{children:(0,s.jsx)(n.a,{href:"/docs/mock-apps/common/credential",children:"DPP"})})]}),(0,s.jsxs)(n.tr,{children:[(0,s.jsx)(n.td,{children:"dlr"}),(0,s.jsx)(n.td,{children:"Yes"}),(0,s.jsx)(n.td,{children:"Configuration for the Digital Link Resolver"}),(0,s.jsx)(n.td,{children:(0,s.jsx)(n.a,{href:"/docs/mock-apps/common/idr",children:"IDR"})})]}),(0,s.jsxs)(n.tr,{children:[(0,s.jsx)(n.td,{children:"storage"}),(0,s.jsx)(n.td,{children:"Yes"}),(0,s.jsx)(n.td,{children:"Configuration for storage service"}),(0,s.jsx)(n.td,{children:(0,s.jsx)(n.a,{href:"/docs/mock-apps/common/storage",children:"Storage"})})]}),(0,s.jsxs)(n.tr,{children:[(0,s.jsx)(n.td,{children:"identifierKeyPath"}),(0,s.jsx)(n.td,{children:"Yes"}),(0,s.jsx)(n.td,{children:"JSON path to the identifier in the credential subject or the object for function and arguments of JSON path to construct identifier"}),(0,s.jsx)(n.td,{children:(0,s.jsx)(n.a,{href:"/docs/mock-apps/common/identifier-key-path",children:"IdentifierKeyPath"})})]})]})]})]})}function h(e={}){const{wrapper:n}={...(0,i.R)(),...e.components};return n?(0,s.jsx)(n,{...e,children:(0,s.jsx)(p,{...e})}):p(e)}},8453:(e,n,t)=>{t.d(n,{R:()=>o,x:()=>c});var s=t(6540);const i={},r=s.createContext(i);function o(e){const n=s.useContext(r);return s.useMemo((function(){return"function"==typeof e?e(n):{...n,...e}}),[n,e])}function c(e){let n;return n=e.disableParentContext?"function"==typeof e.components?e.components(i):e.components||i:o(e.components),s.createElement(r.Provider,{value:n},e.children)}}}]); \ No newline at end of file diff --git a/assets/js/dbe878d5.7bd14a59.js b/assets/js/dbe878d5.7bd14a59.js deleted file mode 100644 index 3214fba0..00000000 --- a/assets/js/dbe878d5.7bd14a59.js +++ /dev/null @@ -1 +0,0 @@ -"use strict";(self.webpackChunkdocumentation=self.webpackChunkdocumentation||[]).push([[4818],{8481:(e,t,n)=>{n.d(t,{Ay:()=>c,RM:()=>r});var s=n(4848),i=n(8453);const r=[];function o(e){const t={admonition:"admonition",p:"p",...(0,i.R)(),...e.components};return(0,s.jsx)(t.admonition,{type:"info",children:(0,s.jsx)(t.p,{children:"Please note that this content is under development and is not ready for implementation. This status message will be updated as content development progresses."})})}function c(e={}){const{wrapper:t}={...(0,i.R)(),...e.components};return t?(0,s.jsx)(t,{...e,children:(0,s.jsx)(o,{...e})}):o(e)}},3560:(e,t,n)=>{n.r(t),n.d(t,{assets:()=>d,contentTitle:()=>c,default:()=>h,frontMatter:()=>o,metadata:()=>a,toc:()=>l});var s=n(4848),i=n(8453),r=n(8481);const o={sidebar_position:23,title:"Process DPP"},c=void 0,a={id:"mock-apps/services/process-dpp",title:"Process DPP",description:"Description",source:"@site/docs/mock-apps/services/process-dpp.md",sourceDirName:"mock-apps/services",slug:"/mock-apps/services/process-dpp",permalink:"/tests-untp/docs/mock-apps/services/process-dpp",draft:!1,unlisted:!1,editUrl:"https://github.com/uncefact/tests-untp/tree/main/docs/mock-apps/services/process-dpp.md",tags:[],version:"current",sidebarPosition:23,frontMatter:{sidebar_position:23,title:"Process DPP"},sidebar:"tutorialSidebar",previous:{title:"Services",permalink:"/tests-untp/docs/mock-apps/services/"},next:{title:"Process Transaction Event",permalink:"/tests-untp/docs/mock-apps/services/process-transaction-event"}},d={},l=[...r.RM,{value:"Description",id:"description",level:2},{value:"Diagram",id:"diagram",level:2},{value:"Example",id:"example",level:2},{value:"Definitions",id:"definitions",level:2}];function p(e){const t={a:"a",code:"code",h2:"h2",mermaid:"mermaid",p:"p",pre:"pre",table:"table",tbody:"tbody",td:"td",th:"th",thead:"thead",tr:"tr",...(0,i.R)(),...e.components};return(0,s.jsxs)(s.Fragment,{children:[(0,s.jsx)(r.Ay,{}),"\n",(0,s.jsx)(t.h2,{id:"description",children:"Description"}),"\n",(0,s.jsxs)(t.p,{children:["The ",(0,s.jsx)(t.code,{children:"processDPP"})," service is responsible for processing a ",(0,s.jsx)(t.a,{href:"https://uncefact.github.io/spec-untp/docs/specification/DigitalProductPassport",children:"Digital Product Passport (DPP)"}),", issuing a ",(0,s.jsx)(t.a,{href:"https://uncefact.github.io/spec-untp/docs/specification/VerifiableCredentials",children:"Verifiable Credential (VC)"}),", uploading it to the ",(0,s.jsx)(t.a,{href:"/docs/mock-apps/dependent-services/storage-service",children:"Storage service"}),", and registering the link to the stored DPP with the ",(0,s.jsx)(t.a,{href:"/docs/mock-apps/dependent-services/identity-resolution-service",children:"Identity Resolver service"}),". It handles the entire lifecycle of creating and managing a DPP, from data input to storage and resolution."]}),"\n",(0,s.jsx)(t.h2,{id:"diagram",children:"Diagram"}),"\n",(0,s.jsx)(t.mermaid,{value:"\nsequenceDiagram\n\nparticipant C as Client\n\nparticipant P as processDPP\n\nparticipant V as VCKit\n\nparticipant S as Storage\n\nparticipant D as DLR\n\nC->>P: Call processDPP(data, context)\n\nP->>P: Validate context\n\nP->>P: Extract identifier\n\nP->>V: Issue VC\n\nV--\x3e>P: Return VC\n\nP->>S: Upload VC\n\nS--\x3e>P: Return VC URL\n\nP->>D: Register link resolver\n\nD--\x3e>P: Return resolver URL\n\nP--\x3e>C: Return VC and resolver URL\n"}),"\n",(0,s.jsx)(t.h2,{id:"example",children:"Example"}),"\n",(0,s.jsx)(t.pre,{children:(0,s.jsx)(t.code,{className:"language-json",children:'{\n "name": "processDPP",\n "parameters": [\n {\n "vckit": {\n "vckitAPIUrl": "http://localhost:3332/v2",\n "issuer": "did:web:example.com:steel-mill-1"\n },\n "dpp": {\n "context": ["https://dpp-json-ld.s3.ap-southeast-2.amazonaws.com/dppld.json"],\n "renderTemplate": [\n {\n "template": "...",\n "@type": "WebRenderingTemplate2022"\n }\n ],\n "type": ["VerifiableCredential", " DigitalProductPassport"],\n "dlrLinkTitle": "Steel Passport",\n "dlrIdentificationKeyType": "gtin",\n "dlrVerificationPage": "http://localhost:3332/verify"\n },\n "dlr": {\n "dlrAPIUrl": "https://dlr.example.com",\n "dlrAPIKey": "5555555555555"\n },\n "storage": {\n "url": "https://storage.example.com/v1/documents",\n "params": {\n "bucket": "verifiable-credentials",\n "resultPath": "/uri"\n },\n "options": {\n "method": "POST",\n "headers": {\n "Content-Type": "application/json"\n }\n }\n },\n "identifierKeyPath": "/product/itemIdentifiers/0/identifierValue"\n }\n ]\n}\n'})}),"\n",(0,s.jsx)(t.h2,{id:"definitions",children:"Definitions"}),"\n",(0,s.jsxs)(t.table,{children:[(0,s.jsx)(t.thead,{children:(0,s.jsxs)(t.tr,{children:[(0,s.jsx)(t.th,{children:"Property"}),(0,s.jsx)(t.th,{children:"Required"}),(0,s.jsx)(t.th,{children:"Description"}),(0,s.jsx)(t.th,{children:"Type"})]})}),(0,s.jsxs)(t.tbody,{children:[(0,s.jsxs)(t.tr,{children:[(0,s.jsx)(t.td,{children:"vckit"}),(0,s.jsx)(t.td,{children:"Yes"}),(0,s.jsx)(t.td,{children:"Configuration for the VCKit service"}),(0,s.jsx)(t.td,{children:(0,s.jsx)(t.a,{href:"/docs/mock-apps/common/vckit",children:"VCKit"})})]}),(0,s.jsxs)(t.tr,{children:[(0,s.jsx)(t.td,{children:"dpp"}),(0,s.jsx)(t.td,{children:"Yes"}),(0,s.jsx)(t.td,{children:"Configuration for the Digital Product Passport"}),(0,s.jsx)(t.td,{children:(0,s.jsx)(t.a,{href:"/docs/mock-apps/common/credential",children:"DPP"})})]}),(0,s.jsxs)(t.tr,{children:[(0,s.jsx)(t.td,{children:"dlr"}),(0,s.jsx)(t.td,{children:"Yes"}),(0,s.jsx)(t.td,{children:"Configuration for the Digital Link Resolver"}),(0,s.jsx)(t.td,{children:(0,s.jsx)(t.a,{href:"/docs/mock-apps/common/idr",children:"IDR"})})]}),(0,s.jsxs)(t.tr,{children:[(0,s.jsx)(t.td,{children:"storage"}),(0,s.jsx)(t.td,{children:"Yes"}),(0,s.jsx)(t.td,{children:"Configuration for storage service"}),(0,s.jsx)(t.td,{children:(0,s.jsx)(t.a,{href:"/docs/mock-apps/common/storage",children:"Storage"})})]}),(0,s.jsxs)(t.tr,{children:[(0,s.jsx)(t.td,{children:"identifierKeyPath"}),(0,s.jsx)(t.td,{children:"Yes"}),(0,s.jsx)(t.td,{children:"JSON path to the identifier in the credential subject or the object for function and arguments of JSON path to construct identifier"}),(0,s.jsx)(t.td,{children:(0,s.jsx)(t.a,{href:"/docs/mock-apps/common/identifier-key-path",children:"IdentifierKeyPath"})})]})]})]})]})}function h(e={}){const{wrapper:t}={...(0,i.R)(),...e.components};return t?(0,s.jsx)(t,{...e,children:(0,s.jsx)(p,{...e})}):p(e)}},8453:(e,t,n)=>{n.d(t,{R:()=>o,x:()=>c});var s=n(6540);const i={},r=s.createContext(i);function o(e){const t=s.useContext(r);return s.useMemo((function(){return"function"==typeof e?e(t):{...t,...e}}),[t,e])}function c(e){let t;return t=e.disableParentContext?"function"==typeof e.components?e.components(i):e.components||i:o(e.components),s.createElement(r.Provider,{value:t},e.children)}}}]); \ No newline at end of file diff --git a/assets/js/runtime~main.d54e1f57.js b/assets/js/runtime~main.cbb93077.js similarity index 71% rename from assets/js/runtime~main.d54e1f57.js rename to assets/js/runtime~main.cbb93077.js index 10cd0774..cab4ca43 100644 --- a/assets/js/runtime~main.d54e1f57.js +++ b/assets/js/runtime~main.cbb93077.js @@ -1 +1 @@ -(()=>{"use strict";var e,a,f,d,c,b={},t={};function r(e){var a=t[e];if(void 0!==a)return a.exports;var f=t[e]={id:e,loaded:!1,exports:{}};return b[e].call(f.exports,f,f.exports,r),f.loaded=!0,f.exports}r.m=b,r.c=t,e=[],r.O=(a,f,d,c)=>{if(!f){var b=1/0;for(i=0;i=c)&&Object.keys(r.O).every((e=>r.O[e](f[o])))?f.splice(o--,1):(t=!1,c0&&e[i-1][2]>c;i--)e[i]=e[i-1];e[i]=[f,d,c]},r.n=e=>{var a=e&&e.__esModule?()=>e.default:()=>e;return r.d(a,{a:a}),a},f=Object.getPrototypeOf?e=>Object.getPrototypeOf(e):e=>e.__proto__,r.t=function(e,d){if(1&d&&(e=this(e)),8&d)return e;if("object"==typeof e&&e){if(4&d&&e.__esModule)return e;if(16&d&&"function"==typeof e.then)return e}var c=Object.create(null);r.r(c);var b={};a=a||[null,f({}),f([]),f(f)];for(var t=2&d&&e;"object"==typeof t&&!~a.indexOf(t);t=f(t))Object.getOwnPropertyNames(t).forEach((a=>b[a]=()=>e[a]));return b.default=()=>e,r.d(c,b),c},r.d=(e,a)=>{for(var f in a)r.o(a,f)&&!r.o(e,f)&&Object.defineProperty(e,f,{enumerable:!0,get:a[f]})},r.f={},r.e=e=>Promise.all(Object.keys(r.f).reduce(((a,f)=>(r.f[f](e,a),a)),[])),r.u=e=>"assets/js/"+({51:"c25f9d34",340:"552cf059",551:"3496df51",793:"5ef14c48",987:"0531aaa8",1235:"a7456010",1244:"8ac603f8",1321:"b2f714bf",1337:"2053dccf",1614:"229906a6",1639:"ddadeb1e",1673:"5e3e7c06",1814:"3c1fb8fb",1895:"0ca26a2c",2097:"cf2a862f",2191:"553d0fc4",2344:"ac7eac65",2493:"e59573dd",2600:"af166207",2699:"e70afa19",2759:"c24a5290",2970:"f1c6d0c4",3128:"425c06f9",3132:"445e7840",3169:"a7bf941b",3187:"93e1ff5a",3396:"965e8f06",3769:"33b26378",3873:"826679d4",4129:"577d7028",4238:"9aa17927",4312:"4c54cd24",4576:"928beb81",4583:"1df93b7f",4700:"4505c18c",4711:"ef07c418",4815:"bb909d62",4818:"dbe878d5",4912:"8d5201cb",4938:"bd6744df",5400:"5f0b1014",5655:"ed523a4b",5742:"aba21aa0",5882:"dadc47ff",5922:"287c65a9",6061:"1f391b9e",6074:"1cda0596",6234:"d2578f67",6498:"a4ef1660",6762:"7842fcd7",6786:"2cbb390d",7017:"085742ca",7098:"a7bd4aaa",7120:"5b6552f6",7260:"483f55fd",7329:"990870e6",7408:"91dfa211",7410:"4a46c1d6",7431:"8e33b65d",7478:"a0e89b48",7553:"7e459fdf",7606:"3d7bc76c",7905:"45670f71",7968:"dc91be4e",8228:"30221500",8401:"17896441",8508:"87121257",8735:"680d5359",8900:"ae987efd",9036:"a81fd1fb",9048:"a94703ab",9118:"50781d71",9265:"93020abc",9633:"45457832",9647:"5e95c892",9716:"10b977c0",9776:"a9c4a5b0",9849:"a6961166",9893:"c4b6dfb7"}[e]||e)+"."+{51:"feef1e72",340:"15e7d9e2",551:"f81b43cb",793:"47e29d4b",987:"dcb28509",1169:"d4d29cfb",1176:"c653568f",1235:"51a4a774",1244:"ac96a77e",1245:"50338f1c",1303:"346b01be",1321:"9c0929ab",1331:"ed7b009c",1337:"e7ccb1d2",1398:"e7416b13",1614:"6c18150e",1639:"1d4fc1d9",1673:"3fd1c85a",1814:"0afeb115",1895:"fe0f9f97",1946:"e3b91785",2097:"ab66bd00",2130:"fbdd4da3",2191:"5e9bd1e2",2237:"3ee39997",2344:"7897f117",2376:"315d26e4",2453:"ac68a1bb",2493:"f323d923",2548:"e1456249",2600:"4f38785d",2699:"d2b65815",2759:"bc4bc886",2843:"8379bc0a",2901:"da4be85b",2925:"5f697986",2970:"97d8a7b9",2983:"477447fa",3068:"105bfc02",3128:"ee06a06d",3132:"0f897e9f",3169:"7946f873",3187:"a870492d",3396:"77721ed8",3626:"62620731",3706:"49b78a8b",3769:"2dd68cf2",3873:"769ecae6",4129:"51012c5f",4162:"a5ce8620",4238:"9f91f4e0",4312:"024ba15e",4576:"5ca54798",4583:"7ffaf244",4700:"71ee8d35",4711:"24ea9782",4741:"dd3174ba",4815:"79af6e05",4818:"7bd14a59",4912:"8511c899",4938:"762ec22e",4943:"099574ac",5400:"93d07628",5655:"bcb82d39",5742:"49179dbc",5882:"32371789",5922:"869f871e",6061:"54ade6ce",6074:"38b53546",6234:"6dca11ec",6420:"f1689df3",6498:"f5d7c87e",6762:"850925ee",6786:"3feb9a0b",6788:"b342e239",6803:"2cb6a173",7017:"faddb3a0",7098:"d266fece",7120:"68abf342",7260:"4b3f4191",7329:"67a9ee13",7408:"35fc5846",7410:"42c1e432",7426:"c26d27b7",7431:"fbd2dc3c",7478:"1e1dbecb",7553:"331e4994",7560:"e43b5889",7606:"3f5e3f1e",7905:"3c22e742",7968:"1b46a3d9",8055:"6ed4725c",8228:"470339fb",8401:"acc1fe46",8478:"003d6999",8508:"54725cf9",8635:"3bb1ea69",8735:"bcb8e972",8810:"b4fdfbc4",8869:"5da0ea44",8900:"9f8bc493",9036:"fafc1adc",9048:"b524f7df",9118:"9baab3fd",9265:"f7228867",9633:"f3cc8ad5",9647:"ad8f2bde",9689:"18f8b2ca",9716:"42671af8",9776:"5a6ac7f9",9849:"816d55dd",9893:"ea8d7b5a"}[e]+".js",r.miniCssF=e=>{},r.g=function(){if("object"==typeof globalThis)return globalThis;try{return this||new Function("return this")()}catch(e){if("object"==typeof window)return window}}(),r.o=(e,a)=>Object.prototype.hasOwnProperty.call(e,a),d={},c="documentation:",r.l=(e,a,f,b)=>{if(d[e])d[e].push(a);else{var t,o;if(void 0!==f)for(var n=document.getElementsByTagName("script"),i=0;i{t.onerror=t.onload=null,clearTimeout(s);var c=d[e];if(delete d[e],t.parentNode&&t.parentNode.removeChild(t),c&&c.forEach((e=>e(f))),a)return a(f)},s=setTimeout(l.bind(null,void 0,{type:"timeout",target:t}),12e4);t.onerror=l.bind(null,t.onerror),t.onload=l.bind(null,t.onload),o&&document.head.appendChild(t)}},r.r=e=>{"undefined"!=typeof Symbol&&Symbol.toStringTag&&Object.defineProperty(e,Symbol.toStringTag,{value:"Module"}),Object.defineProperty(e,"__esModule",{value:!0})},r.p="/tests-untp/",r.gca=function(e){return e={17896441:"8401",30221500:"8228",45457832:"9633",87121257:"8508",c25f9d34:"51","552cf059":"340","3496df51":"551","5ef14c48":"793","0531aaa8":"987",a7456010:"1235","8ac603f8":"1244",b2f714bf:"1321","2053dccf":"1337","229906a6":"1614",ddadeb1e:"1639","5e3e7c06":"1673","3c1fb8fb":"1814","0ca26a2c":"1895",cf2a862f:"2097","553d0fc4":"2191",ac7eac65:"2344",e59573dd:"2493",af166207:"2600",e70afa19:"2699",c24a5290:"2759",f1c6d0c4:"2970","425c06f9":"3128","445e7840":"3132",a7bf941b:"3169","93e1ff5a":"3187","965e8f06":"3396","33b26378":"3769","826679d4":"3873","577d7028":"4129","9aa17927":"4238","4c54cd24":"4312","928beb81":"4576","1df93b7f":"4583","4505c18c":"4700",ef07c418:"4711",bb909d62:"4815",dbe878d5:"4818","8d5201cb":"4912",bd6744df:"4938","5f0b1014":"5400",ed523a4b:"5655",aba21aa0:"5742",dadc47ff:"5882","287c65a9":"5922","1f391b9e":"6061","1cda0596":"6074",d2578f67:"6234",a4ef1660:"6498","7842fcd7":"6762","2cbb390d":"6786","085742ca":"7017",a7bd4aaa:"7098","5b6552f6":"7120","483f55fd":"7260","990870e6":"7329","91dfa211":"7408","4a46c1d6":"7410","8e33b65d":"7431",a0e89b48:"7478","7e459fdf":"7553","3d7bc76c":"7606","45670f71":"7905",dc91be4e:"7968","680d5359":"8735",ae987efd:"8900",a81fd1fb:"9036",a94703ab:"9048","50781d71":"9118","93020abc":"9265","5e95c892":"9647","10b977c0":"9716",a9c4a5b0:"9776",a6961166:"9849",c4b6dfb7:"9893"}[e]||e,r.p+r.u(e)},(()=>{var e={5354:0,1869:0};r.f.j=(a,f)=>{var d=r.o(e,a)?e[a]:void 0;if(0!==d)if(d)f.push(d[2]);else if(/^(1869|5354)$/.test(a))e[a]=0;else{var c=new Promise(((f,c)=>d=e[a]=[f,c]));f.push(d[2]=c);var b=r.p+r.u(a),t=new Error;r.l(b,(f=>{if(r.o(e,a)&&(0!==(d=e[a])&&(e[a]=void 0),d)){var c=f&&("load"===f.type?"missing":f.type),b=f&&f.target&&f.target.src;t.message="Loading chunk "+a+" failed.\n("+c+": "+b+")",t.name="ChunkLoadError",t.type=c,t.request=b,d[1](t)}}),"chunk-"+a,a)}},r.O.j=a=>0===e[a];var a=(a,f)=>{var d,c,b=f[0],t=f[1],o=f[2],n=0;if(b.some((a=>0!==e[a]))){for(d in t)r.o(t,d)&&(r.m[d]=t[d]);if(o)var i=o(r)}for(a&&a(f);n{"use strict";var e,a,f,c,d,b={},t={};function r(e){var a=t[e];if(void 0!==a)return a.exports;var f=t[e]={id:e,loaded:!1,exports:{}};return b[e].call(f.exports,f,f.exports,r),f.loaded=!0,f.exports}r.m=b,r.c=t,e=[],r.O=(a,f,c,d)=>{if(!f){var b=1/0;for(i=0;i=d)&&Object.keys(r.O).every((e=>r.O[e](f[o])))?f.splice(o--,1):(t=!1,d0&&e[i-1][2]>d;i--)e[i]=e[i-1];e[i]=[f,c,d]},r.n=e=>{var a=e&&e.__esModule?()=>e.default:()=>e;return r.d(a,{a:a}),a},f=Object.getPrototypeOf?e=>Object.getPrototypeOf(e):e=>e.__proto__,r.t=function(e,c){if(1&c&&(e=this(e)),8&c)return e;if("object"==typeof e&&e){if(4&c&&e.__esModule)return e;if(16&c&&"function"==typeof e.then)return e}var d=Object.create(null);r.r(d);var b={};a=a||[null,f({}),f([]),f(f)];for(var t=2&c&&e;"object"==typeof t&&!~a.indexOf(t);t=f(t))Object.getOwnPropertyNames(t).forEach((a=>b[a]=()=>e[a]));return b.default=()=>e,r.d(d,b),d},r.d=(e,a)=>{for(var f in a)r.o(a,f)&&!r.o(e,f)&&Object.defineProperty(e,f,{enumerable:!0,get:a[f]})},r.f={},r.e=e=>Promise.all(Object.keys(r.f).reduce(((a,f)=>(r.f[f](e,a),a)),[])),r.u=e=>"assets/js/"+({51:"c25f9d34",340:"552cf059",551:"3496df51",793:"5ef14c48",987:"0531aaa8",1235:"a7456010",1244:"8ac603f8",1321:"b2f714bf",1337:"2053dccf",1614:"229906a6",1639:"ddadeb1e",1673:"5e3e7c06",1814:"3c1fb8fb",1895:"0ca26a2c",2097:"cf2a862f",2191:"553d0fc4",2344:"ac7eac65",2493:"e59573dd",2600:"af166207",2699:"e70afa19",2759:"c24a5290",2970:"f1c6d0c4",3128:"425c06f9",3132:"445e7840",3169:"a7bf941b",3187:"93e1ff5a",3396:"965e8f06",3769:"33b26378",3873:"826679d4",4129:"577d7028",4238:"9aa17927",4312:"4c54cd24",4576:"928beb81",4583:"1df93b7f",4700:"4505c18c",4711:"ef07c418",4815:"bb909d62",4818:"dbe878d5",4912:"8d5201cb",4938:"bd6744df",5400:"5f0b1014",5655:"ed523a4b",5742:"aba21aa0",5882:"dadc47ff",5922:"287c65a9",6061:"1f391b9e",6074:"1cda0596",6234:"d2578f67",6498:"a4ef1660",6762:"7842fcd7",6786:"2cbb390d",7017:"085742ca",7098:"a7bd4aaa",7120:"5b6552f6",7260:"483f55fd",7329:"990870e6",7408:"91dfa211",7410:"4a46c1d6",7431:"8e33b65d",7478:"a0e89b48",7553:"7e459fdf",7606:"3d7bc76c",7905:"45670f71",7968:"dc91be4e",8228:"30221500",8401:"17896441",8508:"87121257",8735:"680d5359",8900:"ae987efd",9036:"a81fd1fb",9048:"a94703ab",9118:"50781d71",9265:"93020abc",9633:"45457832",9647:"5e95c892",9716:"10b977c0",9776:"a9c4a5b0",9849:"a6961166",9893:"c4b6dfb7"}[e]||e)+"."+{51:"feef1e72",340:"15e7d9e2",551:"f81b43cb",793:"47e29d4b",987:"dcb28509",1169:"d4d29cfb",1176:"c653568f",1235:"51a4a774",1244:"ac96a77e",1245:"50338f1c",1303:"346b01be",1321:"9c0929ab",1331:"ed7b009c",1337:"e7ccb1d2",1398:"e7416b13",1614:"6c18150e",1639:"1d4fc1d9",1673:"3fd1c85a",1814:"0afeb115",1895:"fe0f9f97",1946:"e3b91785",2097:"ab66bd00",2130:"fbdd4da3",2191:"5e9bd1e2",2237:"3ee39997",2344:"7897f117",2376:"315d26e4",2453:"ac68a1bb",2493:"f323d923",2548:"e1456249",2600:"4f38785d",2699:"d2b65815",2759:"bc4bc886",2843:"8379bc0a",2901:"da4be85b",2925:"5f697986",2970:"97d8a7b9",2983:"477447fa",3068:"105bfc02",3128:"ee06a06d",3132:"0f897e9f",3169:"7946f873",3187:"a870492d",3396:"77721ed8",3626:"62620731",3706:"49b78a8b",3769:"2dd68cf2",3873:"769ecae6",4129:"79ec8faf",4162:"a5ce8620",4238:"9f91f4e0",4312:"024ba15e",4576:"5ca54798",4583:"7ffaf244",4700:"71ee8d35",4711:"24ea9782",4741:"dd3174ba",4815:"79af6e05",4818:"68ab3c6f",4912:"8511c899",4938:"762ec22e",4943:"099574ac",5400:"93d07628",5655:"bcb82d39",5742:"49179dbc",5882:"32371789",5922:"869f871e",6061:"54ade6ce",6074:"38b53546",6234:"6dca11ec",6420:"f1689df3",6498:"f5d7c87e",6762:"850925ee",6786:"3feb9a0b",6788:"b342e239",6803:"2cb6a173",7017:"342a571b",7098:"d266fece",7120:"18163192",7260:"4b3f4191",7329:"67a9ee13",7408:"35fc5846",7410:"42c1e432",7426:"c26d27b7",7431:"fbd2dc3c",7478:"1e1dbecb",7553:"8ce5940e",7560:"e43b5889",7606:"3f5e3f1e",7905:"3c22e742",7968:"1b46a3d9",8055:"6ed4725c",8228:"470339fb",8401:"acc1fe46",8478:"003d6999",8508:"54725cf9",8635:"3bb1ea69",8735:"648b5eb6",8810:"b4fdfbc4",8869:"5da0ea44",8900:"9f8bc493",9036:"fafc1adc",9048:"b524f7df",9118:"9baab3fd",9265:"f7228867",9633:"f3cc8ad5",9647:"ad8f2bde",9689:"18f8b2ca",9716:"42671af8",9776:"5a6ac7f9",9849:"816d55dd",9893:"ea8d7b5a"}[e]+".js",r.miniCssF=e=>{},r.g=function(){if("object"==typeof globalThis)return globalThis;try{return this||new Function("return this")()}catch(e){if("object"==typeof window)return window}}(),r.o=(e,a)=>Object.prototype.hasOwnProperty.call(e,a),c={},d="documentation:",r.l=(e,a,f,b)=>{if(c[e])c[e].push(a);else{var t,o;if(void 0!==f)for(var n=document.getElementsByTagName("script"),i=0;i{t.onerror=t.onload=null,clearTimeout(s);var d=c[e];if(delete c[e],t.parentNode&&t.parentNode.removeChild(t),d&&d.forEach((e=>e(f))),a)return a(f)},s=setTimeout(l.bind(null,void 0,{type:"timeout",target:t}),12e4);t.onerror=l.bind(null,t.onerror),t.onload=l.bind(null,t.onload),o&&document.head.appendChild(t)}},r.r=e=>{"undefined"!=typeof Symbol&&Symbol.toStringTag&&Object.defineProperty(e,Symbol.toStringTag,{value:"Module"}),Object.defineProperty(e,"__esModule",{value:!0})},r.p="/tests-untp/",r.gca=function(e){return e={17896441:"8401",30221500:"8228",45457832:"9633",87121257:"8508",c25f9d34:"51","552cf059":"340","3496df51":"551","5ef14c48":"793","0531aaa8":"987",a7456010:"1235","8ac603f8":"1244",b2f714bf:"1321","2053dccf":"1337","229906a6":"1614",ddadeb1e:"1639","5e3e7c06":"1673","3c1fb8fb":"1814","0ca26a2c":"1895",cf2a862f:"2097","553d0fc4":"2191",ac7eac65:"2344",e59573dd:"2493",af166207:"2600",e70afa19:"2699",c24a5290:"2759",f1c6d0c4:"2970","425c06f9":"3128","445e7840":"3132",a7bf941b:"3169","93e1ff5a":"3187","965e8f06":"3396","33b26378":"3769","826679d4":"3873","577d7028":"4129","9aa17927":"4238","4c54cd24":"4312","928beb81":"4576","1df93b7f":"4583","4505c18c":"4700",ef07c418:"4711",bb909d62:"4815",dbe878d5:"4818","8d5201cb":"4912",bd6744df:"4938","5f0b1014":"5400",ed523a4b:"5655",aba21aa0:"5742",dadc47ff:"5882","287c65a9":"5922","1f391b9e":"6061","1cda0596":"6074",d2578f67:"6234",a4ef1660:"6498","7842fcd7":"6762","2cbb390d":"6786","085742ca":"7017",a7bd4aaa:"7098","5b6552f6":"7120","483f55fd":"7260","990870e6":"7329","91dfa211":"7408","4a46c1d6":"7410","8e33b65d":"7431",a0e89b48:"7478","7e459fdf":"7553","3d7bc76c":"7606","45670f71":"7905",dc91be4e:"7968","680d5359":"8735",ae987efd:"8900",a81fd1fb:"9036",a94703ab:"9048","50781d71":"9118","93020abc":"9265","5e95c892":"9647","10b977c0":"9716",a9c4a5b0:"9776",a6961166:"9849",c4b6dfb7:"9893"}[e]||e,r.p+r.u(e)},(()=>{var e={5354:0,1869:0};r.f.j=(a,f)=>{var c=r.o(e,a)?e[a]:void 0;if(0!==c)if(c)f.push(c[2]);else if(/^(1869|5354)$/.test(a))e[a]=0;else{var d=new Promise(((f,d)=>c=e[a]=[f,d]));f.push(c[2]=d);var b=r.p+r.u(a),t=new Error;r.l(b,(f=>{if(r.o(e,a)&&(0!==(c=e[a])&&(e[a]=void 0),c)){var d=f&&("load"===f.type?"missing":f.type),b=f&&f.target&&f.target.src;t.message="Loading chunk "+a+" failed.\n("+d+": "+b+")",t.name="ChunkLoadError",t.type=d,t.request=b,c[1](t)}}),"chunk-"+a,a)}},r.O.j=a=>0===e[a];var a=(a,f)=>{var c,d,b=f[0],t=f[1],o=f[2],n=0;if(b.some((a=>0!==e[a]))){for(c in t)r.o(t,c)&&(r.m[c]=t[c]);if(o)var i=o(r)}for(a&&a(f);n Introduction | UN Transparency Protocol Test Suite - + diff --git a/docs/mock-apps/common/asset/index.html b/docs/mock-apps/common/asset/index.html index f2c6fc22..bfde912a 100644 --- a/docs/mock-apps/common/asset/index.html +++ b/docs/mock-apps/common/asset/index.html @@ -4,7 +4,7 @@ Asset | UN Transparency Protocol Test Suite - + diff --git a/docs/mock-apps/common/component-type/index.html b/docs/mock-apps/common/component-type/index.html index 35db9eca..9d643532 100644 --- a/docs/mock-apps/common/component-type/index.html +++ b/docs/mock-apps/common/component-type/index.html @@ -4,7 +4,7 @@ Component Type | UN Transparency Protocol Test Suite - + diff --git a/docs/mock-apps/common/construct-data/index.html b/docs/mock-apps/common/construct-data/index.html index dc5526c4..cfddec50 100644 --- a/docs/mock-apps/common/construct-data/index.html +++ b/docs/mock-apps/common/construct-data/index.html @@ -4,7 +4,7 @@ Construct Data | UN Transparency Protocol Test Suite - + diff --git a/docs/mock-apps/common/credential/index.html b/docs/mock-apps/common/credential/index.html index 73d0cd39..e16185ee 100644 --- a/docs/mock-apps/common/credential/index.html +++ b/docs/mock-apps/common/credential/index.html @@ -4,7 +4,7 @@ Credential | UN Transparency Protocol Test Suite - + diff --git a/docs/mock-apps/common/default-verification-service-link/index.html b/docs/mock-apps/common/default-verification-service-link/index.html index c594f2e8..2b2fe8a7 100644 --- a/docs/mock-apps/common/default-verification-service-link/index.html +++ b/docs/mock-apps/common/default-verification-service-link/index.html @@ -4,7 +4,7 @@ Default Verification Service Link | UN Transparency Protocol Test Suite - + diff --git a/docs/mock-apps/common/identifier-key-path/index.html b/docs/mock-apps/common/identifier-key-path/index.html index 1a9f7120..a4ab266a 100644 --- a/docs/mock-apps/common/identifier-key-path/index.html +++ b/docs/mock-apps/common/identifier-key-path/index.html @@ -4,7 +4,7 @@ Identify Key Path | UN Transparency Protocol Test Suite - + diff --git a/docs/mock-apps/common/identify-provider/index.html b/docs/mock-apps/common/identify-provider/index.html index fd7623c7..bd15a9da 100644 --- a/docs/mock-apps/common/identify-provider/index.html +++ b/docs/mock-apps/common/identify-provider/index.html @@ -4,7 +4,7 @@ Identify Provider | UN Transparency Protocol Test Suite - + @@ -26,9 +26,9 @@

Description

The Mock App system can use multiple identify providers, each tailored to a specific identity registrar and service. This modular approach allows the system to work with a variety of identification standards and services.

Example​

-
{
"identifyProvider": {
"type": "gs1",
"url": "http://localhost:3333/products"
}
}
+
{
"identifyProvider": {
"type": "gs1",
"url": "http://localhost:3333",
"namespace": "gs1"
}
}

Definitions​

-
PropertyRequiredDescriptionType
typeYesThe type of identify provider, e.g., "gs1" for GS1 standards.ProviderType
urlYesThe URL endpoint for the identify provider service.String
+
PropertyRequiredDescriptionType
typeYesThe type of identify provider, e.g., "gs1" for GS1 standards.ProviderType
urlYesThe URL endpoint for the identify provider service.String
namespaceYesThe namespace for the identify provider.String

Provider Types​

TypeDescription
gs1Used for resolving (using the Mock Verified By GS1 Service)/understanding GS1-based identifiers (e.g., GTINs).

Note: The available types may be extended in the future to support additional identity providers.

diff --git a/docs/mock-apps/common/idr/index.html b/docs/mock-apps/common/idr/index.html index 849a96dd..33ded005 100644 --- a/docs/mock-apps/common/idr/index.html +++ b/docs/mock-apps/common/idr/index.html @@ -4,7 +4,7 @@ IDR | UN Transparency Protocol Test Suite - + @@ -12,6 +12,6 @@

Description​

The IDR object contains configuration for the Identity Resolver Service, which is used to create and manage resolvable links for the UNTP credentials.

Definition​

-
PropertyRequiredDescriptionType
dlrAPIUrlYesURL for the Identity Resolver APIString
dlrAPIKeyNoAPI key for the Identity ResolverString
+
PropertyRequiredDescriptionType
dlrAPIUrlYesURL for the Identity Resolver APIString
dlrAPIKeyNoAPI key for the Identity ResolverString
namespaceYesNamespace for the Identity ResolverString
linkRegisterPathNoPath to register a linkString
\ No newline at end of file diff --git a/docs/mock-apps/common/index.html b/docs/mock-apps/common/index.html index 0b500742..c66f5071 100644 --- a/docs/mock-apps/common/index.html +++ b/docs/mock-apps/common/index.html @@ -4,7 +4,7 @@ Common | UN Transparency Protocol Test Suite - + diff --git a/docs/mock-apps/common/local-storage/index.html b/docs/mock-apps/common/local-storage/index.html index 80627815..895c4cd4 100644 --- a/docs/mock-apps/common/local-storage/index.html +++ b/docs/mock-apps/common/local-storage/index.html @@ -4,7 +4,7 @@ Local Storage | UN Transparency Protocol Test Suite - + diff --git a/docs/mock-apps/common/render-template/index.html b/docs/mock-apps/common/render-template/index.html index fb11b41a..19f629a4 100644 --- a/docs/mock-apps/common/render-template/index.html +++ b/docs/mock-apps/common/render-template/index.html @@ -4,7 +4,7 @@ Render Template | UN Transparency Protocol Test Suite - + diff --git a/docs/mock-apps/common/storage/index.html b/docs/mock-apps/common/storage/index.html index f28a984f..c4702c8d 100644 --- a/docs/mock-apps/common/storage/index.html +++ b/docs/mock-apps/common/storage/index.html @@ -4,7 +4,7 @@ Storage | UN Transparency Protocol Test Suite - + diff --git a/docs/mock-apps/common/style/index.html b/docs/mock-apps/common/style/index.html index a27aded6..d5c7f8f2 100644 --- a/docs/mock-apps/common/style/index.html +++ b/docs/mock-apps/common/style/index.html @@ -4,7 +4,7 @@ Style | UN Transparency Protocol Test Suite - + diff --git a/docs/mock-apps/common/vckit/index.html b/docs/mock-apps/common/vckit/index.html index e52d9c6a..6622392a 100644 --- a/docs/mock-apps/common/vckit/index.html +++ b/docs/mock-apps/common/vckit/index.html @@ -4,7 +4,7 @@ VCkit | UN Transparency Protocol Test Suite - + diff --git a/docs/mock-apps/common/verify-link/index.html b/docs/mock-apps/common/verify-link/index.html index 91f34e42..c0b8a31d 100644 --- a/docs/mock-apps/common/verify-link/index.html +++ b/docs/mock-apps/common/verify-link/index.html @@ -4,7 +4,7 @@ Verify Link | UN Transparency Protocol Test Suite - + diff --git a/docs/mock-apps/components/barcode-generator/index.html b/docs/mock-apps/components/barcode-generator/index.html index 07de595a..5384c44f 100644 --- a/docs/mock-apps/components/barcode-generator/index.html +++ b/docs/mock-apps/components/barcode-generator/index.html @@ -4,7 +4,7 @@ Barcode Generator | UN Transparency Protocol Test Suite - + diff --git a/docs/mock-apps/components/conformity-credential-checkbox/index.html b/docs/mock-apps/components/conformity-credential-checkbox/index.html index dfb0d2f8..ac7afe4e 100644 --- a/docs/mock-apps/components/conformity-credential-checkbox/index.html +++ b/docs/mock-apps/components/conformity-credential-checkbox/index.html @@ -4,7 +4,7 @@ Conformity Credential Checkbox | UN Transparency Protocol Test Suite - + diff --git a/docs/mock-apps/components/conformity-credential/index.html b/docs/mock-apps/components/conformity-credential/index.html index b85b6caa..df026f48 100644 --- a/docs/mock-apps/components/conformity-credential/index.html +++ b/docs/mock-apps/components/conformity-credential/index.html @@ -4,7 +4,7 @@ Conformity Credential | UN Transparency Protocol Test Suite - + diff --git a/docs/mock-apps/components/custom-button/index.html b/docs/mock-apps/components/custom-button/index.html index 2da16cc1..6433ce34 100644 --- a/docs/mock-apps/components/custom-button/index.html +++ b/docs/mock-apps/components/custom-button/index.html @@ -4,7 +4,7 @@ Custom Button | UN Transparency Protocol Test Suite - + diff --git a/docs/mock-apps/components/index.html b/docs/mock-apps/components/index.html index d0999623..87b02c00 100644 --- a/docs/mock-apps/components/index.html +++ b/docs/mock-apps/components/index.html @@ -4,7 +4,7 @@ Components | UN Transparency Protocol Test Suite - + diff --git a/docs/mock-apps/components/json-form/index.html b/docs/mock-apps/components/json-form/index.html index 1f13c508..23461522 100644 --- a/docs/mock-apps/components/json-form/index.html +++ b/docs/mock-apps/components/json-form/index.html @@ -4,7 +4,7 @@ Json Form | UN Transparency Protocol Test Suite - + diff --git a/docs/mock-apps/components/local-storage-loader/index.html b/docs/mock-apps/components/local-storage-loader/index.html index 775c66da..fd7861d0 100644 --- a/docs/mock-apps/components/local-storage-loader/index.html +++ b/docs/mock-apps/components/local-storage-loader/index.html @@ -4,7 +4,7 @@ Local Storage Loader | UN Transparency Protocol Test Suite - + diff --git a/docs/mock-apps/configuration/app-config/index.html b/docs/mock-apps/configuration/app-config/index.html index 41081834..92e0da62 100644 --- a/docs/mock-apps/configuration/app-config/index.html +++ b/docs/mock-apps/configuration/app-config/index.html @@ -4,7 +4,7 @@ App | UN Transparency Protocol Test Suite - + diff --git a/docs/mock-apps/configuration/component-config/index.html b/docs/mock-apps/configuration/component-config/index.html index 8b83a1d8..f92bdf91 100644 --- a/docs/mock-apps/configuration/component-config/index.html +++ b/docs/mock-apps/configuration/component-config/index.html @@ -4,7 +4,7 @@ Component | UN Transparency Protocol Test Suite - + diff --git a/docs/mock-apps/configuration/feature-config/index.html b/docs/mock-apps/configuration/feature-config/index.html index f985a02d..c22fac3e 100644 --- a/docs/mock-apps/configuration/feature-config/index.html +++ b/docs/mock-apps/configuration/feature-config/index.html @@ -4,7 +4,7 @@ Feature | UN Transparency Protocol Test Suite - + diff --git a/docs/mock-apps/configuration/general-feature-config/index.html b/docs/mock-apps/configuration/general-feature-config/index.html index e1457839..d2e24af1 100644 --- a/docs/mock-apps/configuration/general-feature-config/index.html +++ b/docs/mock-apps/configuration/general-feature-config/index.html @@ -4,7 +4,7 @@ General Feature | UN Transparency Protocol Test Suite - + diff --git a/docs/mock-apps/configuration/index.html b/docs/mock-apps/configuration/index.html index ab548771..8b07ba11 100644 --- a/docs/mock-apps/configuration/index.html +++ b/docs/mock-apps/configuration/index.html @@ -4,7 +4,7 @@ Configuration | UN Transparency Protocol Test Suite - + diff --git a/docs/mock-apps/configuration/service-config/index.html b/docs/mock-apps/configuration/service-config/index.html index bfd82b71..ee8daf41 100644 --- a/docs/mock-apps/configuration/service-config/index.html +++ b/docs/mock-apps/configuration/service-config/index.html @@ -4,7 +4,7 @@ Service | UN Transparency Protocol Test Suite - + diff --git a/docs/mock-apps/configuration/system-config/index.html b/docs/mock-apps/configuration/system-config/index.html index ed31aebb..965db9dc 100644 --- a/docs/mock-apps/configuration/system-config/index.html +++ b/docs/mock-apps/configuration/system-config/index.html @@ -4,7 +4,7 @@ System | UN Transparency Protocol Test Suite - + diff --git a/docs/mock-apps/conformity-credential/index.html b/docs/mock-apps/conformity-credential/index.html index 4c8da641..c575de46 100644 --- a/docs/mock-apps/conformity-credential/index.html +++ b/docs/mock-apps/conformity-credential/index.html @@ -4,7 +4,7 @@ Conformity Credential | UN Transparency Protocol Test Suite - + diff --git a/docs/mock-apps/dependent-services/identity-resolution-service/index.html b/docs/mock-apps/dependent-services/identity-resolution-service/index.html index fdca9ccc..78eba444 100644 --- a/docs/mock-apps/dependent-services/identity-resolution-service/index.html +++ b/docs/mock-apps/dependent-services/identity-resolution-service/index.html @@ -4,7 +4,7 @@ Identity Resolver Service | UN Transparency Protocol Test Suite - + diff --git a/docs/mock-apps/dependent-services/index.html b/docs/mock-apps/dependent-services/index.html index 97b88fc4..d405e1ab 100644 --- a/docs/mock-apps/dependent-services/index.html +++ b/docs/mock-apps/dependent-services/index.html @@ -4,7 +4,7 @@ Dependent Services | UN Transparency Protocol Test Suite - + diff --git a/docs/mock-apps/dependent-services/storage-service/index.html b/docs/mock-apps/dependent-services/storage-service/index.html index c39f779e..ebaac840 100644 --- a/docs/mock-apps/dependent-services/storage-service/index.html +++ b/docs/mock-apps/dependent-services/storage-service/index.html @@ -4,7 +4,7 @@ Storage Service | UN Transparency Protocol Test Suite - + diff --git a/docs/mock-apps/dependent-services/verifiable-credential-service/index.html b/docs/mock-apps/dependent-services/verifiable-credential-service/index.html index f7d281a0..06892faa 100644 --- a/docs/mock-apps/dependent-services/verifiable-credential-service/index.html +++ b/docs/mock-apps/dependent-services/verifiable-credential-service/index.html @@ -4,7 +4,7 @@ Verifiable Credential Service | UN Transparency Protocol Test Suite - + diff --git a/docs/mock-apps/getting-started/index.html b/docs/mock-apps/getting-started/index.html index a4123a5b..e5e1cdd5 100644 --- a/docs/mock-apps/getting-started/index.html +++ b/docs/mock-apps/getting-started/index.html @@ -4,7 +4,7 @@ Getting Started | UN Transparency Protocol Test Suite - + diff --git a/docs/mock-apps/index.html b/docs/mock-apps/index.html index 9a12004c..033dc7a4 100644 --- a/docs/mock-apps/index.html +++ b/docs/mock-apps/index.html @@ -4,7 +4,7 @@ Mock Apps | UN Transparency Protocol Test Suite - + diff --git a/docs/mock-apps/installation/index.html b/docs/mock-apps/installation/index.html index 10f04d3d..3dc4ddda 100644 --- a/docs/mock-apps/installation/index.html +++ b/docs/mock-apps/installation/index.html @@ -4,7 +4,7 @@ Installation | UN Transparency Protocol Test Suite - + diff --git a/docs/mock-apps/scanning-app/index.html b/docs/mock-apps/scanning-app/index.html index 9a2f738f..849a04bc 100644 --- a/docs/mock-apps/scanning-app/index.html +++ b/docs/mock-apps/scanning-app/index.html @@ -4,7 +4,7 @@ Scanning App | UN Transparency Protocol Test Suite - + diff --git a/docs/mock-apps/services/index.html b/docs/mock-apps/services/index.html index 2d70351f..f0a4795a 100644 --- a/docs/mock-apps/services/index.html +++ b/docs/mock-apps/services/index.html @@ -4,7 +4,7 @@ Services | UN Transparency Protocol Test Suite - + diff --git a/docs/mock-apps/services/merge-to-local-storage/index.html b/docs/mock-apps/services/merge-to-local-storage/index.html index 546e377f..ad246395 100644 --- a/docs/mock-apps/services/merge-to-local-storage/index.html +++ b/docs/mock-apps/services/merge-to-local-storage/index.html @@ -4,7 +4,7 @@ Merge To Local Storage | UN Transparency Protocol Test Suite - + diff --git a/docs/mock-apps/services/process-aggregation-event/index.html b/docs/mock-apps/services/process-aggregation-event/index.html index 2e5685cb..3867f308 100644 --- a/docs/mock-apps/services/process-aggregation-event/index.html +++ b/docs/mock-apps/services/process-aggregation-event/index.html @@ -4,7 +4,7 @@ Process Aggregation Event | UN Transparency Protocol Test Suite - + @@ -14,7 +14,7 @@

DescriptionDiagram​

Example​

-
{
"name": "processAggregationEvent",
"parameters": [
{
"vckit": {
"vckitAPIUrl": "https://api.vckit.example.com",
"issuer": "did:example:123456789abcdefghi"
},
"epcisAggregationEvent": {
"context": ["https://www.w3.org/2018/credentials/v1", "https://gs1.org/voc/"],
"type": ["VerifiableCredential", "EPCISAggregationEvent"],
"renderTemplate": [
{
"type": "html",
"template": "<div><h2>Aggregation Event</h2><p>Parent: {{parentItem.epc}}</p></div>"
}
],
"dlrIdentificationKeyType": "sscc",
"dlrLinkTitle": "Aggregation Event",
"dlrVerificationPage": "https://verify.example.com"
},
"storage": {
"url": "https://storage.example.com/upload",
"params": {
"resultPath": "/url"
}
},
"dlr": {
"dlrAPIUrl": "https://dlr.example.com/api",
"dlrAPIKey": "dlr-api-key-12345"
},
"identifierKeyPath": "/parentItem/epc"
}
]
}
+
{
"name": "processAggregationEvent",
"parameters": [
{
"vckit": {
"vckitAPIUrl": "https://api.vckit.example.com",
"issuer": "did:example:123456789abcdefghi"
},
"epcisAggregationEvent": {
"context": ["https://www.w3.org/2018/credentials/v1", "https://gs1.org/voc/"],
"type": ["VerifiableCredential", "EPCISAggregationEvent"],
"renderTemplate": [
{
"type": "html",
"template": "<div><h2>Aggregation Event</h2><p>Parent: {{parentItem.epc}}</p></div>"
}
],
"dlrIdentificationKeyType": "sscc",
"dlrLinkTitle": "Aggregation Event",
"dlrVerificationPage": "https://verify.example.com"
},
"storage": {
"url": "https://storage.example.com/upload",
"params": {
"resultPath": "/url"
}
},
"dlr": {
"dlrAPIUrl": "https://dlr.example.com/api",
"dlrAPIKey": "dlr-api-key-12345",
"namespace": "gs1",
"linkRegisterPath": "/api/resolver"
},
"identifierKeyPath": "/parentItem/epc"
}
]
}

Definitions​

PropertyRequiredDescriptionType
vckitYesConfiguration for the VCKit serviceVCKit
epcisAggregationEventYesConfiguration for the EPCIS Aggregation EventCredential
storageYesConfiguration for storage serviceStorage
dlrYesConfiguration for the Digital Link ResolverIDR
identifierKeyPathYesJSON path to the identifier in the credential subject or the object for function and arguments of JSON path to construct identifierIdentifierKeyPath
diff --git a/docs/mock-apps/services/process-dpp/index.html b/docs/mock-apps/services/process-dpp/index.html index d7ec143c..528cc829 100644 --- a/docs/mock-apps/services/process-dpp/index.html +++ b/docs/mock-apps/services/process-dpp/index.html @@ -4,7 +4,7 @@ Process DPP | UN Transparency Protocol Test Suite - + @@ -14,7 +14,7 @@

DescriptionDiagram​

Example​

-
{
"name": "processDPP",
"parameters": [
{
"vckit": {
"vckitAPIUrl": "http://localhost:3332/v2",
"issuer": "did:web:example.com:steel-mill-1"
},
"dpp": {
"context": ["https://dpp-json-ld.s3.ap-southeast-2.amazonaws.com/dppld.json"],
"renderTemplate": [
{
"template": "<!DOCTYPE html>...",
"@type": "WebRenderingTemplate2022"
}
],
"type": ["VerifiableCredential", " DigitalProductPassport"],
"dlrLinkTitle": "Steel Passport",
"dlrIdentificationKeyType": "gtin",
"dlrVerificationPage": "http://localhost:3332/verify"
},
"dlr": {
"dlrAPIUrl": "https://dlr.example.com",
"dlrAPIKey": "5555555555555"
},
"storage": {
"url": "https://storage.example.com/v1/documents",
"params": {
"bucket": "verifiable-credentials",
"resultPath": "/uri"
},
"options": {
"method": "POST",
"headers": {
"Content-Type": "application/json"
}
}
},
"identifierKeyPath": "/product/itemIdentifiers/0/identifierValue"
}
]
}
+
{
"name": "processDPP",
"parameters": [
{
"vckit": {
"vckitAPIUrl": "http://localhost:3332/v2",
"issuer": "did:web:example.com:steel-mill-1"
},
"dpp": {
"context": ["https://dpp-json-ld.s3.ap-southeast-2.amazonaws.com/dppld.json"],
"renderTemplate": [
{
"template": "<!DOCTYPE html>...",
"@type": "WebRenderingTemplate2022"
}
],
"type": ["VerifiableCredential", " DigitalProductPassport"],
"dlrLinkTitle": "Steel Passport",
"dlrIdentificationKeyType": "gtin",
"dlrVerificationPage": "http://localhost:3332/verify"
},
"dlr": {
"dlrAPIUrl": "https://dlr.example.com",
"dlrAPIKey": "5555555555555",
"namespace": "gs1",
"linkRegisterPath": "/api/resolver"
},
"storage": {
"url": "https://storage.example.com/v1/documents",
"params": {
"bucket": "verifiable-credentials",
"resultPath": "/uri"
},
"options": {
"method": "POST",
"headers": {
"Content-Type": "application/json"
}
}
},
"identifierKeyPath": "/product/itemIdentifiers/0/identifierValue"
}
]
}

Definitions​

PropertyRequiredDescriptionType
vckitYesConfiguration for the VCKit serviceVCKit
dppYesConfiguration for the Digital Product PassportDPP
dlrYesConfiguration for the Digital Link ResolverIDR
storageYesConfiguration for storage serviceStorage
identifierKeyPathYesJSON path to the identifier in the credential subject or the object for function and arguments of JSON path to construct identifierIdentifierKeyPath
diff --git a/docs/mock-apps/services/process-transaction-event/index.html b/docs/mock-apps/services/process-transaction-event/index.html index e65b0b2a..52090c57 100644 --- a/docs/mock-apps/services/process-transaction-event/index.html +++ b/docs/mock-apps/services/process-transaction-event/index.html @@ -4,7 +4,7 @@ Process Transaction Event | UN Transparency Protocol Test Suite - + @@ -14,7 +14,7 @@

DescriptionDiagram​

Example​

-
{
"name": "processTransactionEvent",
"parameters": [
{
"vckit": {
"vckitAPIUrl": "https://api.vckit.example.com",
"issuer": "did:example:123456789abcdefghi"
},
"epcisTransactionEvent": {
"context": ["https://www.w3.org/2018/credentials/v1", "https://gs1.org/voc/"],
"type": ["VerifiableCredential", "EPCISTransactionEvent"],
"renderTemplate": [
{
"type": "html",
"template": "<div><h2>Transaction Event</h2><p>ID: {{transactionId}}</p></div>"
}
],
"dlrIdentificationKeyType": "gtin",
"dlrLinkTitle": "Transaction Event",
"dlrVerificationPage": "https://verify.example.com"
},
"storage": {
"url": "https://storage.example.com/upload",
"params": {
"resultPath": "/url"
}
},
"dlr": {
"dlrAPIUrl": "https://dlr.example.com/api",
"dlrAPIKey": "dlr-api-key-12345"
},
"identifierKeyPath": "/transactionId",
"localStorageParams": {
"storageKey": "transactionEvents",
"keyPath": "/transactionId"
}
}
]
}
+
{
"name": "processTransactionEvent",
"parameters": [
{
"vckit": {
"vckitAPIUrl": "https://api.vckit.example.com",
"issuer": "did:example:123456789abcdefghi"
},
"epcisTransactionEvent": {
"context": ["https://www.w3.org/2018/credentials/v1", "https://gs1.org/voc/"],
"type": ["VerifiableCredential", "EPCISTransactionEvent"],
"renderTemplate": [
{
"type": "html",
"template": "<div><h2>Transaction Event</h2><p>ID: {{transactionId}}</p></div>"
}
],
"dlrIdentificationKeyType": "gtin",
"dlrLinkTitle": "Transaction Event",
"dlrVerificationPage": "https://verify.example.com"
},
"storage": {
"url": "https://storage.example.com/upload",
"params": {
"resultPath": "/url"
}
},
"dlr": {
"dlrAPIUrl": "https://dlr.example.com/api",
"dlrAPIKey": "dlr-api-key-12345",
"namespace": "gs1",
"linkRegisterPath": "/api/resolver"
},
"identifierKeyPath": "/transactionId",
"localStorageParams": {
"storageKey": "transactionEvents",
"keyPath": "/transactionId"
}
}
]
}

Definitions​

PropertyRequiredDescriptionType
vckitYesConfiguration for the VCKit serviceVCKit
epcisTransactionEventYesConfiguration for the EPCIS Transaction EventCredential
storageYesConfiguration for storage serviceStorage
dlrYesConfiguration for the Digital Link ResolverIDR
identifierKeyPathYesJSON path to the identifier in the credential subject or the object for function and arguments of JSON path to construct identifierIdentifierKeyPath
localStorageParamsYesConfiguration for local storage managementLocalStorage
diff --git a/docs/mock-apps/services/process-transformation-event/index.html b/docs/mock-apps/services/process-transformation-event/index.html index fcc585e4..81392774 100644 --- a/docs/mock-apps/services/process-transformation-event/index.html +++ b/docs/mock-apps/services/process-transformation-event/index.html @@ -4,7 +4,7 @@ Process Transformation Event | UN Transparency Protocol Test Suite - + @@ -14,7 +14,7 @@

DescriptionDiagram​

Example​

-
{
"name": "processTransformationEvent",
"parameters": [
{
"vckit": {
"vckitAPIUrl": "https://api.vckit.example.com",
"issuer": "did:example:123456789abcdefghi"
},
"epcisTransformationEvent": {
"context": ["https://www.w3.org/2018/credentials/v1", "https://gs1.org/voc/"],
"type": ["VerifiableCredential", "EPCISTransformationEvent"],
"renderTemplate": [
{
"type": "html",
"template": "<div><h2>Transformation Event</h2><p>Output: {{outputItems.0.epc}}</p></div>"
}
],
"dlrIdentificationKeyType": "gtin",
"dlrLinkTitle": "Transformation Event",
"dlrVerificationPage": "https://verify.example.com"
},
"dlr": {
"dlrAPIUrl": "https://dlr.example.com/api",
"dlrAPIKey": "dlr-api-key-12345"
},
"storage": {
"url": "https://storage.example.com/upload",
"params": {
"resultPath": "/url"
}
},
"dpp": {
"context": ["https://www.w3.org/2018/credentials/v1", "https://schema.org/"],
"type": ["VerifiableCredential", "DigitalProductPassport"],
"renderTemplate": [
{
"type": "html",
"template": "<div><h2>Product DPP</h2><p>EPC: {{epc}}</p></div>"
}
],
"dlrIdentificationKeyType": "gtin",
"dlrLinkTitle": "Product DPP",
"dlrVerificationPage": "https://verify.example.com"
},
"dppCredentials": [
{
"mappingFields": [
{
"sourcePath": "/vc/credentialSubject/outputItems/0/epc",
"destinationPath": "/epc"
}
]
}
],
"identifierKeyPath": "/outputItems/0/epc",
"transformationEventCredential": {
"mappingFields": [
{
"sourcePath": "/inputItems",
"destinationPath": "/inputQuantityList"
},
{
"sourcePath": "/outputItems",
"destinationPath": "/outputQuantityList"
}
],
"generationFields": [
{
"path": "/eventTime",
"handler": "generateCurrentDatetime"
},
{
"path": "/eventID",
"handler": "generateUUID"
}
]
}
}
]
}
+
{
"name": "processTransformationEvent",
"parameters": [
{
"vckit": {
"vckitAPIUrl": "https://api.vckit.example.com",
"issuer": "did:example:123456789abcdefghi"
},
"epcisTransformationEvent": {
"context": ["https://www.w3.org/2018/credentials/v1", "https://gs1.org/voc/"],
"type": ["VerifiableCredential", "EPCISTransformationEvent"],
"renderTemplate": [
{
"type": "html",
"template": "<div><h2>Transformation Event</h2><p>Output: {{outputItems.0.epc}}</p></div>"
}
],
"dlrIdentificationKeyType": "gtin",
"dlrLinkTitle": "Transformation Event",
"dlrVerificationPage": "https://verify.example.com"
},
"dlr": {
"dlrAPIUrl": "https://dlr.example.com/api",
"dlrAPIKey": "dlr-api-key-12345",
"namespace": "gs1",
"linkRegisterPath": "/api/resolver"
},
"storage": {
"url": "https://storage.example.com/upload",
"params": {
"resultPath": "/url"
}
},
"dpp": {
"context": ["https://www.w3.org/2018/credentials/v1", "https://schema.org/"],
"type": ["VerifiableCredential", "DigitalProductPassport"],
"renderTemplate": [
{
"type": "html",
"template": "<div><h2>Product DPP</h2><p>EPC: {{epc}}</p></div>"
}
],
"dlrIdentificationKeyType": "gtin",
"dlrLinkTitle": "Product DPP",
"dlrVerificationPage": "https://verify.example.com"
},
"dppCredentials": [
{
"mappingFields": [
{
"sourcePath": "/vc/credentialSubject/outputItems/0/epc",
"destinationPath": "/epc"
}
]
}
],
"identifierKeyPath": "/outputItems/0/epc",
"transformationEventCredential": {
"mappingFields": [
{
"sourcePath": "/inputItems",
"destinationPath": "/inputQuantityList"
},
{
"sourcePath": "/outputItems",
"destinationPath": "/outputQuantityList"
}
],
"generationFields": [
{
"path": "/eventTime",
"handler": "generateCurrentDatetime"
},
{
"path": "/eventID",
"handler": "generateUUID"
}
]
}
}
]
}

Definitions​

PropertyRequiredDescriptionType
vckitYesConfiguration for the VCKit serviceVCKit
epcisTransformationEventYesConfiguration for the EPCIS Transformation EventCredential
dlrYesConfiguration for the Digital Link ResolverIDR
storageYesConfiguration for storage serviceStorage
dppYesConfiguration for the Digital Product PassportCredential
dppCredentialsYesMapping configuration for DPP credentialsConstruct Data[]
identifierKeyPathYesJSON path to the identifier in the credential subject or the object for function and arguments of JSON path to construct identifierIdentifierKeyPath
transformationEventCredentialYesMapping and generation configuration for the transformation event credentialConstruct Data
diff --git a/docs/mock-apps/verify-app/index.html b/docs/mock-apps/verify-app/index.html index 017a49b4..89323794 100644 --- a/docs/mock-apps/verify-app/index.html +++ b/docs/mock-apps/verify-app/index.html @@ -4,7 +4,7 @@ Verify App | UN Transparency Protocol Test Suite - + diff --git a/docs/test-suites/index.html b/docs/test-suites/index.html index 9b836c7e..72734195 100644 --- a/docs/test-suites/index.html +++ b/docs/test-suites/index.html @@ -4,7 +4,7 @@ Test Suites | UN Transparency Protocol Test Suite - + diff --git a/docs/test-suites/semantic-interoperability/cli/configuration/index.html b/docs/test-suites/semantic-interoperability/cli/configuration/index.html index c91c05bc..dfdcfc0e 100644 --- a/docs/test-suites/semantic-interoperability/cli/configuration/index.html +++ b/docs/test-suites/semantic-interoperability/cli/configuration/index.html @@ -4,7 +4,7 @@ Configuration | UN Transparency Protocol Test Suite - + diff --git a/docs/test-suites/semantic-interoperability/cli/extensions/index.html b/docs/test-suites/semantic-interoperability/cli/extensions/index.html index 44f91e2d..00318fae 100644 --- a/docs/test-suites/semantic-interoperability/cli/extensions/index.html +++ b/docs/test-suites/semantic-interoperability/cli/extensions/index.html @@ -4,7 +4,7 @@ Extensions | UN Transparency Protocol Test Suite - + diff --git a/docs/test-suites/semantic-interoperability/cli/index.html b/docs/test-suites/semantic-interoperability/cli/index.html index 2a6f7e61..f1f761c7 100644 --- a/docs/test-suites/semantic-interoperability/cli/index.html +++ b/docs/test-suites/semantic-interoperability/cli/index.html @@ -4,7 +4,7 @@ CLI | UN Transparency Protocol Test Suite - + diff --git a/docs/test-suites/semantic-interoperability/cli/installation/index.html b/docs/test-suites/semantic-interoperability/cli/installation/index.html index 8c0b8b25..89e80e75 100644 --- a/docs/test-suites/semantic-interoperability/cli/installation/index.html +++ b/docs/test-suites/semantic-interoperability/cli/installation/index.html @@ -4,7 +4,7 @@ Installation | UN Transparency Protocol Test Suite - + diff --git a/docs/test-suites/semantic-interoperability/cli/usage/index.html b/docs/test-suites/semantic-interoperability/cli/usage/index.html index a36ef90d..779dc34e 100644 --- a/docs/test-suites/semantic-interoperability/cli/usage/index.html +++ b/docs/test-suites/semantic-interoperability/cli/usage/index.html @@ -4,7 +4,7 @@ Usage | UN Transparency Protocol Test Suite - + diff --git a/docs/test-suites/semantic-interoperability/getting-started/index.html b/docs/test-suites/semantic-interoperability/getting-started/index.html index 37a8d1b4..3e131e72 100644 --- a/docs/test-suites/semantic-interoperability/getting-started/index.html +++ b/docs/test-suites/semantic-interoperability/getting-started/index.html @@ -4,7 +4,7 @@ Getting Started | UN Transparency Protocol Test Suite - + diff --git a/docs/test-suites/semantic-interoperability/index.html b/docs/test-suites/semantic-interoperability/index.html index 0511032d..f207dbbd 100644 --- a/docs/test-suites/semantic-interoperability/index.html +++ b/docs/test-suites/semantic-interoperability/index.html @@ -4,7 +4,7 @@ Semantic Interoperability | UN Transparency Protocol Test Suite - + diff --git a/docs/test-suites/technical-interoperability/getting-started/index.html b/docs/test-suites/technical-interoperability/getting-started/index.html index 8a3157b1..4c3a4c38 100644 --- a/docs/test-suites/technical-interoperability/getting-started/index.html +++ b/docs/test-suites/technical-interoperability/getting-started/index.html @@ -4,7 +4,7 @@ Getting Started | UN Transparency Protocol Test Suite - + diff --git a/docs/test-suites/technical-interoperability/identity-resolution/index.html b/docs/test-suites/technical-interoperability/identity-resolution/index.html index 95ec0f14..5d8254d3 100644 --- a/docs/test-suites/technical-interoperability/identity-resolution/index.html +++ b/docs/test-suites/technical-interoperability/identity-resolution/index.html @@ -4,7 +4,7 @@ Identity Resolution (IDR) | UN Transparency Protocol Test Suite - + diff --git a/docs/test-suites/technical-interoperability/identity-resolution/testing/index.html b/docs/test-suites/technical-interoperability/identity-resolution/testing/index.html index 753e5dde..693228a8 100644 --- a/docs/test-suites/technical-interoperability/identity-resolution/testing/index.html +++ b/docs/test-suites/technical-interoperability/identity-resolution/testing/index.html @@ -4,7 +4,7 @@ Testing Identity Resolution | UN Transparency Protocol Test Suite - + diff --git a/docs/test-suites/technical-interoperability/index.html b/docs/test-suites/technical-interoperability/index.html index b477459d..d53b8395 100644 --- a/docs/test-suites/technical-interoperability/index.html +++ b/docs/test-suites/technical-interoperability/index.html @@ -4,7 +4,7 @@ Technical Interoperability | UN Transparency Protocol Test Suite - + diff --git a/docs/test-suites/technical-interoperability/installation/index.html b/docs/test-suites/technical-interoperability/installation/index.html index 2a0d3297..3644f21f 100644 --- a/docs/test-suites/technical-interoperability/installation/index.html +++ b/docs/test-suites/technical-interoperability/installation/index.html @@ -4,7 +4,7 @@ Installation | UN Transparency Protocol Test Suite - + diff --git a/docs/test-suites/technical-interoperability/storage/index.html b/docs/test-suites/technical-interoperability/storage/index.html index 5b86c793..308fe2db 100644 --- a/docs/test-suites/technical-interoperability/storage/index.html +++ b/docs/test-suites/technical-interoperability/storage/index.html @@ -4,7 +4,7 @@ Storage | UN Transparency Protocol Test Suite - + diff --git a/docs/test-suites/technical-interoperability/storage/testing/index.html b/docs/test-suites/technical-interoperability/storage/testing/index.html index 16002a15..f0b9c4ba 100644 --- a/docs/test-suites/technical-interoperability/storage/testing/index.html +++ b/docs/test-suites/technical-interoperability/storage/testing/index.html @@ -4,7 +4,7 @@ Testing Storage | UN Transparency Protocol Test Suite - + diff --git a/docs/test-suites/technical-interoperability/transparency-graphs/index.html b/docs/test-suites/technical-interoperability/transparency-graphs/index.html index 74cc1be2..e0c98fdb 100644 --- a/docs/test-suites/technical-interoperability/transparency-graphs/index.html +++ b/docs/test-suites/technical-interoperability/transparency-graphs/index.html @@ -4,7 +4,7 @@ Transparency Graphs | UN Transparency Protocol Test Suite - + diff --git a/docs/test-suites/technical-interoperability/transparency-graphs/testing/index.html b/docs/test-suites/technical-interoperability/transparency-graphs/testing/index.html index bb8e8501..247e3dd5 100644 --- a/docs/test-suites/technical-interoperability/transparency-graphs/testing/index.html +++ b/docs/test-suites/technical-interoperability/transparency-graphs/testing/index.html @@ -4,7 +4,7 @@ Testing Transparency Graphs | UN Transparency Protocol Test Suite - + diff --git a/docs/test-suites/technical-interoperability/untp-extensions/index.html b/docs/test-suites/technical-interoperability/untp-extensions/index.html index b2dca58f..a463825c 100644 --- a/docs/test-suites/technical-interoperability/untp-extensions/index.html +++ b/docs/test-suites/technical-interoperability/untp-extensions/index.html @@ -4,7 +4,7 @@ UNTP Extensions | UN Transparency Protocol Test Suite - + diff --git a/docs/test-suites/technical-interoperability/untp-extensions/qr-link-encryption/index.html b/docs/test-suites/technical-interoperability/untp-extensions/qr-link-encryption/index.html index fd51c2b6..af2c8b01 100644 --- a/docs/test-suites/technical-interoperability/untp-extensions/qr-link-encryption/index.html +++ b/docs/test-suites/technical-interoperability/untp-extensions/qr-link-encryption/index.html @@ -4,7 +4,7 @@ QR Link / Encryption | UN Transparency Protocol Test Suite - + diff --git a/docs/test-suites/technical-interoperability/untp-extensions/rendering/index.html b/docs/test-suites/technical-interoperability/untp-extensions/rendering/index.html index 6878d096..3b92f2e1 100644 --- a/docs/test-suites/technical-interoperability/untp-extensions/rendering/index.html +++ b/docs/test-suites/technical-interoperability/untp-extensions/rendering/index.html @@ -4,7 +4,7 @@ Rendering | UN Transparency Protocol Test Suite - + diff --git a/docs/test-suites/technical-interoperability/verifiable-credentials/index.html b/docs/test-suites/technical-interoperability/verifiable-credentials/index.html index 67aa5cf6..db33ad27 100644 --- a/docs/test-suites/technical-interoperability/verifiable-credentials/index.html +++ b/docs/test-suites/technical-interoperability/verifiable-credentials/index.html @@ -4,7 +4,7 @@ Verifiable Credentials | UN Transparency Protocol Test Suite - + diff --git a/docs/test-suites/technical-interoperability/verifiable-credentials/testing/index.html b/docs/test-suites/technical-interoperability/verifiable-credentials/testing/index.html index ea922167..91124f4a 100644 --- a/docs/test-suites/technical-interoperability/verifiable-credentials/testing/index.html +++ b/docs/test-suites/technical-interoperability/verifiable-credentials/testing/index.html @@ -4,7 +4,7 @@ Testing Verifiable Credentials | UN Transparency Protocol Test Suite - + diff --git a/index.html b/index.html index cba6772c..6cb23de3 100644 --- a/index.html +++ b/index.html @@ -4,7 +4,7 @@ UN Transparency Protocol | UN Transparency Protocol Test Suite - + diff --git a/privacy/index.html b/privacy/index.html index efde305d..fd76ec2f 100644 --- a/privacy/index.html +++ b/privacy/index.html @@ -4,7 +4,7 @@ Privacy | UN Transparency Protocol Test Suite - + diff --git a/terms/index.html b/terms/index.html index 8cd3d99e..f726a979 100644 --- a/terms/index.html +++ b/terms/index.html @@ -4,7 +4,7 @@ Terms and Conditions | UN Transparency Protocol Test Suite - +