diff --git a/docs/openapi/components/schemas/credentials/DigitalProductPassportCredential.yml b/docs/openapi/components/schemas/credentials/DigitalProductPassportCredential.yml new file mode 100644 index 000000000..efd0b64f7 --- /dev/null +++ b/docs/openapi/components/schemas/credentials/DigitalProductPassportCredential.yml @@ -0,0 +1,224 @@ +$linkedData: + term: DigitalProductPassportCredential + '@id': https://w3id.org/traceability#DigitalProductPassportCredential +title: Digital Product Passport Data Carrier Credential +tags: + - eCommerce + - Other +description: European Commission Digital Product Passport. +type: object +properties: + '@context': + type: array + readOnly: true + const: + - https://www.w3.org/2018/credentials/v1 + - https://w3id.org/traceability/v1 + default: + - https://www.w3.org/2018/credentials/v1 + - https://w3id.org/traceability/v1 + items: + type: string + enum: + - https://www.w3.org/2018/credentials/v1 + - https://w3id.org/traceability/v1 + type: + type: array + readOnly: true + const: + - VerifiableCredential + - DigitalProductPassportCredential + default: + - VerifiableCredential + - DigitalProductPassportCredential + items: + type: string + enum: + - VerifiableCredential + - DigitalProductPassportCredential + id: + type: string + issuanceDate: + type: string + expirationDate: + type: string + issuer: + title: Issuer Organization + description: Commercial invoice issuing organization. + type: object + properties: + type: + type: array + readOnly: true + const: + - Organization + default: + - Organization + items: + type: string + enum: + - Organization + id: + title: Issuer's Identifier + description: Issuing organization identifier, typically a Decentralized Identifier (DID). + type: string + format: uri + name: + title: Organization Name + description: Issuing organization name. + type: string + additionalProperties: true + required: + - type + - id + - name + credentialSchema: + type: object + properties: + id: + title: Id + description: The URL of the schema file with which to validate the shape of the JSON object. + type: string + format: uri + example: https://w3id.org/traceability/openapi/components/schemas/credentials/DigitalProductPassportCredential.yml + type: + title: Type + description: The type of validation to be run against the defined schema. + const: OpenApiSpecificationValidator2022 + credentialSubject: + title: Digital Product Passport + type: object + properties: + type: + type: array + readOnly: true + const: + - DigitalProductPassport + default: + - DigitalProductPassport + items: + type: string + enum: + - DigitalProductPassport + product: + title: Product + description: Basic product data. + type: object + properties: + type: + type: array + readOnly: true + const: + - Product + default: + - Product + items: + type: string + enum: + - Product + image: + title: Product Image + type: string + name: + title: Product Name + type: string + description: + title: Product Description + type: string + id: + title: Product Identifier + type: string + format: uri + url: + title: Product Website + type: string + format: uri + brand: + title: Brand + description: Brand Owner + type: object + properties: + type: + type: array + readOnly: true + const: + - Organization + default: + - Organization + items: + type: string + enum: + - Organization + name: + title: Product Name + type: string + id: + title: Product Identifier + type: string + format: uri + url: + title: Product Website + type: string + format: uri + required: + - type + - name + - id + required: + - type + - name + - id + required: + - type + - product +additionalProperties: true +required: + - '@context' + - type + - id + - issuanceDate + - issuer + - credentialSubject +example: |- + { + "@context": [ + "https://www.w3.org/2018/credentials/v1", + "https://w3id.org/traceability/v1" + ], + "type": [ + "VerifiableCredential", + "DigitalProductPassportCredential" + ], + "id": "urn:uuid:e6adbeb6-2n1s-4662-bd84-322d903ae735", + "issuer": { + "type": [ + "Organization" + ], + "id": "did:web:byacre.com", + "name": "byACRE" + }, + "issuanceDate": "2023-06-23T10:00:00.000Z", + "credentialSubject": { + "type": [ + "DigitalProductPassport" + ], + "product": { + "type": [ + "Product" + ], + "image": "data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAEAAAABCAYAAAAfFcSJAAAADUlEQVR42mP8z8BQDwAEhQGAhKmMIQAAAABJRU5ErkJggg==, + "name": "Nordic Pioneer", + "description": "Versatile, light weight and eco-friendly rollator", + "id": "https://www.byacre.com/nordic-pioneer/", + "gtin": "https://id.gs1.org/01/012345678901112", + "brand": { + "type": [ + "Organization" + ], + "name": "byACRE", + "id": "did:web:byacre.com", + "url": "https://byacre.com" + } + } + } + } \ No newline at end of file diff --git a/docs/openapi/components/schemas/credentials/DigitalProductPassportDataCarrierCredential.yml b/docs/openapi/components/schemas/credentials/DigitalProductPassportDataCarrierCredential.yml new file mode 100644 index 000000000..aafadae31 --- /dev/null +++ b/docs/openapi/components/schemas/credentials/DigitalProductPassportDataCarrierCredential.yml @@ -0,0 +1,252 @@ +$linkedData: + term: DigitalProductPassportDataCarrierCredential + '@id': https://w3id.org/traceability#DigitalProductPassportDataCarrierCredential +title: Digital Product Passport Data Carrier Credential +tags: + - eCommerce + - Other +description: The European Commission's Digital Product Passport Data Carrier is used to carry basic product data, links to its corresponding online Digital Product Passport Credential, and product verification material. It must support offline use cases and therefore be lightweight enough to be encoded by value along with the product itself. +type: object +properties: + '@context': + type: array + readOnly: true + const: + - https://www.w3.org/2018/credentials/v1 + - https://w3id.org/traceability/v1 + default: + - https://www.w3.org/2018/credentials/v1 + - https://w3id.org/traceability/v1 + items: + type: string + enum: + - https://www.w3.org/2018/credentials/v1 + - https://w3id.org/traceability/v1 + type: + type: array + readOnly: true + const: + - VerifiableCredential + - DigitalProductPassportDataCarrierCredential + default: + - VerifiableCredential + - DigitalProductPassportDataCarrierCredential + items: + type: string + enum: + - VerifiableCredential + - DigitalProductPassportDataCarrierCredential + id: + type: string + issuanceDate: + type: string + expirationDate: + type: string + issuer: + title: Issuer Organization + description: Commercial invoice issuing organization. + type: object + properties: + type: + type: array + readOnly: true + const: + - Organization + default: + - Organization + items: + type: string + enum: + - Organization + id: + title: Issuer's Identifier + description: Issuing organization identifier, typically a Decentralized Identifier (DID). + type: string + format: uri + name: + title: Organization Name + description: Issuing organization name. + type: string + additionalProperties: true + required: + - type + - id + - name + credentialSchema: + type: object + properties: + id: + title: Id + description: The URL of the schema file with which to validate the shape of the JSON object. + type: string + format: uri + example: https://w3id.org/traceability/openapi/components/schemas/credentials/DigitalProductPassportDataCarrierCredential.yml + type: + title: Type + description: The type of validation to be run against the defined schema. + const: OpenApiSpecificationValidator2022 + credentialSubject: + title: Digital Product Passport Data Carrier + description: Contains basic product data and links to the online Digital Procuct Passport and verification material. + type: object + properties: + type: + type: array + readOnly: true + const: + - DigitalProductPassportDataCarrier + default: + - DigitalProductPassportDataCarrier + items: + type: string + enum: + - DigitalProductPassportDataCarrier + product: + title: Product + description: Basic product data. + type: object + properties: + type: + type: array + readOnly: true + const: + - Product + default: + - Product + items: + type: string + enum: + - Product + name: + title: Product Name + type: string + id: + title: Product Identifier + type: string + format: uri + url: + title: Product Website + type: string + format: uri + brand: + title: Brand + description: Brand Owner + type: object + properties: + type: + type: array + readOnly: true + const: + - Organization + default: + - Organization + items: + type: string + enum: + - Organization + name: + title: Product Name + type: string + id: + title: Product Identifier + type: string + format: uri + url: + title: Product Website + type: string + format: uri + required: + - type + - name + - id + required: + - type + - name + - id + relatedLinks: + title: Relted links + description: Links to online material including the Digital Product Passport and Control data. + type: array + items: + type: object + properties: + type: + type: array + readOnly: true + const: + - LinkRole + default: + - LinkRole + items: + type: string + enum: + - LinkRole + target: + title: Link Target + type: string + format: uri + linkRelationship: + title: Link Relationship + type: string + required: + - type + - product +additionalProperties: true +required: + - '@context' + - type + - id + - issuanceDate + - issuer + - credentialSubject + - relatedLinks +example: |- + { + "@context": [ + "https://www.w3.org/2018/credentials/v1", + "https://w3id.org/traceability/v1" + ], + "type": [ + "VerifiableCredential", + "DigitalProductPassportDataCarrierCredential" + ], + "id": "urn:uuid:n15687f9-8e5d-41ad-af80-e2fcd52744aa", + "issuer": { + "type": [ + "Organization" + ], + "id": "did:web:byacre.com", + "name": "byACRE" + }, + "issuanceDate": "2023-06-23T10:00:00.000Z", + "credentialSubject": { + "type": [ + "DigitalProductPassportDataCarrier" + ], + "product": { + "type": [ + "Product" + ], + "name": "Nordic Pioneer", + "id": "https://www.byacre.com/nordic-pioneer/", + "gtin": "https://id.gs1.org/01/012345678901112", + "brand": { + "type": [ + "Organization" + ], + "name": "byACRE", + "id": "did:web:byacre.com", + "url": "https://byacre.com" + } + } + }, + "relatedLinks": [ + { + "type": [ + "LinkRole" + ], + "target": "https://byacre.com/dpp/nordic-pioneer.jsonld", + "linkRelationship": "digitalProductPassport" + } + ] + } \ No newline at end of file