Skip to content

DDO Schema

OE Verifiable Presentation

classDiagram
    class `W3C Verifiable Presentation` {
    }
    class `OE Service Credential` {
    }
    class `W3C Verifiable Credential` {
    }
    class CredentialSubject {
    }
 
    `W3C Verifiable Presentation` "1" --> "1..*" `OE Service Credential` : contains
    `OE Service Credential` "1" --> "1" CredentialSubject : defines
    `W3C Verifiable Credential` <|-- `OE Service Credential` : is a type of

Verifiable Presentation (off-chain metadata object)

AttributeTypeDescriptionRequired
@contextArray of stringThe value of the @context property MUST be an ordered set where the first item is a URL with the value https://www.w3.org/ns/credentials/v2. Subsequent items in the ordered set MUST be composed of any combination of URLs and/or objects, where each is processable as a JSON-LD Context.✅
typeArray of string["VerifiablePresentation", "OceanEnterpriseServicePresentation"]✅
verifiableCredentialArray of VerifiableCredentialContains Verifiable credentials in enveloped format (EnvelopedVerifiableCredential) .✅

OE Service Credential (DDO)

This is a W3C verifiable credential.

AttributeTypeDescriptionRequired
@contextArray of stringThe value of the @context property MUST be an ordered set where the first item is a URL with the value https://www.w3.org/ns/credentials/v2. Subsequent items in the ordered set MUST be composed of any combination of URLs and/or objects, where each is processable as a JSON-LD Context.✅
idstring (URL)If present, the value of the id property MUST be a single URL, which MAY be dereferenceable. It is RECOMMENDED that the URL in the id be one which, if dereferenceable, results in a document containing machine-readable information about the id.The id property is OPTIONAL.
typeArray of string["VerifiableCredential", "OceanEnterpriseServiceCredential"]✅
credentialSubjectcredentialSubjectA verifiable credential MUST have a credentialSubject property.✅
issuerstring (URL)A verifiable credential MUST have an issuer property. The value of the issuer property MUST be either a URL, or an object containing an id property whose value is a URL; in either case, the issuer selects this URL to identify itself in a globally unambiguous way. It is RECOMMENDED that the URL be one which, if dereferenced, results in a controller document, as defined in [VC-DATA-INTEGRITY] or [VC-JOSE-COSE], about the issuer that can be used to verify the information expressed in the credential. More info here.✅
versionstringVersion number of "OE Service Credential" standard in SemVer notation referring to this DDO spec version, like 1.0.0.

credentialSubject

CredentialSubject

---
title: CredentialSubject
---
classDiagram
 
    class CredentialSubject {
    }
 
    class Metadata {
    }
    class Credentials {
    }
 
    class AlgorithmMetadata["AlgorithmMetadata\n(for algorithm type)"] {
    }
 
    class Container {
    }
    class Service {
    }
    class ConsumerParameters["Consumer\nParameters"] {
    }
    class Compute {
    }
 
    CredentialSubject "1" --> "1" Metadata
    CredentialSubject "1" --> "0..*" Credentials
    CredentialSubject "1" --> "1..*" Service
 
    Metadata "1" --> "0..1" AlgorithmMetadata
    AlgorithmMetadata "1" --> "1" Container
    AlgorithmMetadata "1" --> "0..*" ConsumerParameters
 
    Service "1" --> "0..1" Compute
    Service "1" --> "0..*" ConsumerParameters
 
 
AttributeTypeDescriptionRequired
idIf present, the value of the id property MUST be a single URL, which MAY be dereferenceable. It is RECOMMENDED that the URL in the id be one which, if dereferenceable, results in a document containing machine-readable information about the id.The id property is OPTIONAL.
metadatametadata✅
servicesArray of service✅
credentialscredentials✅ TODO discuss new secure default
chainIdnumberStores the chainId of the network the DDO was published to.✅
nftAddressstringNFT contract linked to this asset✅