@cef-ebsi/vcdm1.1-e-origin-power-of-attorney-schema
v1.0.0
Published
A credential used to issue a power of attorney (POA).
Downloads
2
Keywords
Readme
@cef-ebsi/vcdm1.1-e-origin-power-of-attorney-schema
Power of Attorney
A credential used to issue a power of attorney (POA).
The schema is published to the Trusted Schemas Registry with the IDs:
0x5337b2726b3d0b5e32809302cc27f604899bc1c98a1706d07bd3dcbfd0e564e3
(hexadecimal)z6br6faZV1as1cm65p7VK64yKEM63c5utLYJC4WRPB7wY
(multibase base58btc)
Table of Contents
JSON Schema
{
"$schema": "https://json-schema.org/draft/2020-12/schema",
"title": "Power of Attorney",
"description": "A credential used to issue a power of attorney (POA).",
"allOf": [
{
"$ref": "./node_modules/@cef-ebsi/vcdm1.1-attestation-schema/schema.json"
},
{
"properties": {
"credentialSubject": {
"description": "Power of Attorney credential.",
"properties": {
"startingDate": {
"title": "Starting Date",
"description": "The POA mandate takes effect from this date",
"type": "string",
"format": "date"
},
"expirationDate": {
"title": "Expiration Date",
"description": "Date of expiration of the POA",
"type": "string",
"format": "date"
},
"customsRepresentative": {
"title": "Customs Representative",
"description": "Customs representative information.",
"type": "object",
"properties": {
"companyRegistrationNumber": {
"title": "Company RegistrationNumber",
"description": "Company registration Number .",
"type": "string"
},
"vatNumber": {
"title": "VAT Number",
"description": "Company vat Number .",
"type": "string"
},
"customsRegistrationNumber": {
"title": "customs RegistrationNumber",
"description": "Customs Registration Number of the customs representative.",
"type": "string"
},
"address": {
"title": "Address of the custosm representative",
"description": "(Optional) The address of the customs representative.",
"type": "object",
"properties": {
"street": {
"title": "Street",
"description": "(Optional) Street address",
"type": "string"
},
"streetNr": {
"title": "Street Number",
"description": "(Optional) Street number",
"type": "integer"
},
"zipCode": {
"title": "Zip Code",
"description": "(Optional) Postal code",
"type": "string"
},
"city": {
"title": "City",
"description": "(Optional) City name",
"type": "string"
},
"country": {
"title": "Country",
"description": "(Optional) Country name",
"type": "string"
}
}
}
},
"required": [
"companyRegistrationNumber",
"customsRegistrationNumber"
]
},
"relatedResource": {
"title": "Related Resource",
"description": "The issuer provides the verifier with additional details.",
"type": "array",
"items": {
"type": "object",
"properties": {
"id": {
"title": "Resource ID",
"description": "The identifier for the resource. Unique URL.",
"type": "string"
},
"fileName": {
"title": "File Name",
"description": "(Optional) file name",
"type": "string"
},
"mediaType": {
"title": "Media Type",
"description": "A valid media type as listed in the IANA Media Types registry.",
"type": "string"
},
"digestMultibase": {
"title": "Digest Multibase",
"description": "One or more cryptographic digests, as defined in the Multibase specification.",
"type": "string"
}
},
"required": ["id", "fileName", "mediaType", "digestMultibase"]
}
},
"idCard": {
"description": "Government-issued ID for the importer or business representative",
"type": "object",
"properties": {
"ownerName": {
"title": "Importer or business representative name",
"description": "The legal representative of the company.",
"type": "string"
},
"expirationDate": {
"title": "Expiration Date",
"description": "Date of expiration of the id card",
"type": "string",
"format": "date"
},
"title": {
"title": "title",
"description": "Title/ Function of the person in the company",
"type": "string"
},
"registrationNumber": {
"title": "Registration Number",
"description": "Registration number of the ID card",
"type": "string"
},
"email": {
"title": "Email",
"description": "(Optional) contact email",
"type": "string"
},
"phoneNumber": {
"title": "Phone Number",
"description": "(Optional) contact phone number",
"type": "string"
}
},
"required": ["ownerName", "expirationDate", "title"]
},
"businessLicense": {
"description": "The business license of the importer",
"type": "object",
"properties": {
"nameEN": {
"title": "Name in English",
"description": "The legal name of the importer in English (individual or business entity)",
"type": "string"
},
"nameCN": {
"title": "Name in Chinese",
"description": "The legal name of the importer in Chinese (individual or business entity)",
"type": "string"
},
"registrationNumber": {
"title": "Registration Number",
"description": "A number assigned to the business by the government.",
"type": "string"
},
"bankAccount": {
"title": "Bank Account",
"description": "(Optional) Necessary for financial transactions.",
"type": "string"
},
"address": {
"title": "Address",
"description": "(Optional) The physical location of the importer.",
"type": "object",
"properties": {
"street": {
"title": "Street",
"description": "(Optional) Street address",
"type": "string"
},
"streetNr": {
"title": "Street Number",
"description": "(Optional) Street number",
"type": "integer"
},
"zipCode": {
"title": "Zip Code",
"description": "(Optional) Postal code",
"type": "string"
},
"city": {
"title": "City",
"description": "(Optional) City name",
"type": "string"
},
"country": {
"title": "Country",
"description": "(Optional) Country name",
"type": "string"
}
}
}
},
"required": ["nameEN", "registrationNumber", "address"]
},
"eori": {
"description": "Economic Operators Registration and Identification number.",
"type": "object",
"properties": {
"number": {
"title": "EORI Number",
"description": "Economic Operators Registration and Identification number.",
"type": "string"
},
"address": {
"title": "Address",
"description": "(Optional) The physical location of the importer.",
"type": "object",
"properties": {
"street": {
"title": "Street",
"description": "(Optional) Street address",
"type": "string"
},
"streetNr": {
"title": "Street Number",
"description": "(Optional) Street number",
"type": "integer"
},
"zipCode": {
"title": "Zip Code",
"description": "(Optional) Postal code",
"type": "string"
},
"city": {
"title": "City",
"description": "(Optional) City name",
"type": "string"
},
"country": {
"title": "Country",
"description": "(Optional) Country name",
"type": "string"
}
}
}
},
"required": ["number", "address"]
}
},
"required": [
"startingDate",
"customsRepresentative",
"relatedResource",
"idCard",
"businessLicense",
"eori"
],
"title": "Importer",
"type": "object"
},
"proof": {
"description": "A JSON Web Signature proof for a credential as defined by the VC data model",
"properties": {
"created": {
"description": "Creation timestamp for the proof in the form of an XML datestring",
"type": "string"
},
"jws": {
"description": "The JSON Web Signature for the proof",
"type": "string"
},
"proofPurpose": {
"const": "assertionMethod",
"description": "In the case of credentials, the proof should be the constant, 'assertionMethod'"
},
"type": {
"description": "Signature suite for the proof",
"enum": ["Ed25519Signature2018"],
"type": "string"
},
"verificationMethod": {
"description": "The fragment from which the public key can be de-referenced, in the form of a URI",
"type": "string"
}
},
"title": "proof",
"type": "object"
}
},
"title": "Power of Attorney",
"type": "object"
}
]
}
Installation
# with npm
npm add @cef-ebsi/[email protected]
# with Yarn
yarn add @cef-ebsi/[email protected]
# with pnpm
pnpm add @cef-ebsi/[email protected]
Usage
The package exports the schema and its metadata as JavaScript objects:
import {
schema,
metadata,
} from "@cef-ebsi/vcdm1.1-e-origin-power-of-attorney-schema";
// you can now use the schema and metadata
In addition, the package exports a TypeScript type corresponding to the schema:
import type { PowerOfAttorney } from "@cef-ebsi/vcdm1.1-e-origin-power-of-attorney-schema";
License
Copyright (c) 2019 European Commission Licensed under the EUPL, Version 1.2 or - as soon they will be approved by the European Commission - subsequent versions of the EUPL (the "Licence"); You may not use this work except in compliance with the Licence. You may obtain a copy of the Licence at:
Unless required by applicable law or agreed to in writing, software distributed under the Licence is distributed on an "AS IS" basis, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the Licence for the specific language governing permissions and limitations under the Licence.