{ "$schema": "http://json-schema.org/draft-07/schema#", "title": "Drivers Licence", "description": "Drivers Licence Credential", "type": "object", "$metadata": { "uris": { "jsonLdContext": "https://raw.githubusercontent.com/redbellynetwork/receptor-schema/refs/heads/main/schemas/json-ld/DriversLicenceCredential.jsonld", "jsonSchema": "https://raw.githubusercontent.com/redbellynetwork/receptor-schema/refs/heads/main/schemas/json/DriversLicenceCredential.json" }, "type": "DriversLicenceCredential" }, "required": [ "@context", "id", "type", "issuanceDate", "credentialSubject", "credentialSchema", "credentialStatus", "issuer" ], "properties": { "@context": { "type": ["string", "array", "object"] }, "id": { "type": "string" }, "type": { "type": ["string", "array"], "items": { "type": "string" } }, "issuer": { "type": ["string", "object"], "format": "uri", "required": ["id"], "properties": { "id": { "type": "string", "format": "uri" } } }, "issuanceDate": { "type": "string", "format": "date-time" }, "expirationDate": { "type": "string", "format": "date-time" }, "credentialSchema": { "type": "object", "required": ["id", "type"], "properties": { "id": { "type": "string", "format": "uri" }, "type": { "type": "string" } } }, "subjectPosition": { "type": "string", "enum": ["none", "index", "value"] }, "merklizationRootPosition": { "type": "string", "enum": ["none", "index", "value"] }, "revNonce": { "type": "integer" }, "version": { "type": "integer" }, "updatable": { "type": "boolean" }, "credentialSubject": { "type": "object", "required": [ "id", "name", "licenceNumber", "country", "birthDate", "expiryDate", "publicAddress" ], "properties": { "id": { "title": "Credential Subject ID", "type": "string", "format": "uri", "description": "Identifier for the subject of the credential." }, "name": { "type": "string", "pattern": "^\\S.*\\S$|^\\S$", "description": "Full name as per DL" }, "licenceNumber": { "type": "string", "pattern": "^[^\\s]+$", "description": "Licence number as per DL." }, "country": { "type": "string", "pattern": "^[A-Za-z]+(?: [A-Za-z]+)*$", "description": "Country of issuance." }, "birthDate": { "type": "integer", "minimum": 19000101, "maximum": 22251231, "description": "Date of birth as per DL, in YYYYMMDD format ." }, "expiryDate": { "type": "integer", "minimum": 19000101, "maximum": 22251231, "description": "Expiration date of DL, in YYYYMMDD format ." }, "publicAddress": { "type": "string", "pattern": "^0x[a-fA-F0-9]{40}$", "description": "Public address of the owner of DL." } } } } }