@cef-ebsi/vcdm2.0-pm2-credential-schema
TypeScript icon, indicating that this package has built-in type declarations

1.1.0 • Public • Published

EBSI Logo

@cef-ebsi/vcdm2.0-pm2-credential-schema

PM2 Credential

Schema of a PM2 Verifiable Credential

The schema is published to the Trusted Schemas Registry with the IDs:

  • 0xeefbee2ba0ed55cd3be13e860e55c034ec0469bd878113a6e483d214e870cc1c (hexadecimal)
  • zH5tqkc8x6M38kA8t2HntK2KkCZDnw35gf68Dm1RMEwAs (multibase base58btc)

Table of Contents

JSON Schema

{
  "$schema": "https://json-schema.org/draft/2020-12/schema",
  "title": "PM2 Credential",
  "description": "Schema of a PM2 Verifiable Credential",
  "type": "object",
  "allOf": [
    {
      "$ref": "./node_modules/@cef-ebsi/vcdm2.0-attestation-schema/schema.json"
    },
    {
      "properties": {
        "type": {
          "description": "Defines the Verifiable Credential type.",
          "type": "array",
          "contains": {
            "type": "string",
            "const": "PM2Credential"
          }
        },
        "credentialSubject": {
          "description": "Defines additional properties on credentialSubject to describe IDs that do not have a substantial level of assurance.",
          "type": "object",
          "properties": {
            "id": {
              "description": "Defines a unique identifier of the credential subject",
              "type": "string"
            },
            "givenName": {
              "description": "Name strings that are the part of a person's name that is not their surname (see RFC4519).",
              "type": "string"
            },
            "familyName": {
              "description": "Name strings that are a person's surname (see RFC4519).",
              "type": "string"
            },
            "emailAddress": {
              "description": "Email address of the user.",
              "type": "string",
              "format": "email"
            },
            "courses": {
              "description": "Courses in this credential",
              "type": "array",
              "items": {
                "type": "object",
                "properties": {
                  "name": {
                    "description": "Name of course",
                    "type": "string"
                  }
                },
                "required": ["name"]
              }
            },
            "credentialDescription": {
              "description": "Description for this credential",
              "type": "string"
            },
            "credentialId": {
              "description": "Id for this credential",
              "type": "string"
            }
          },
          "required": [
            "id",
            "givenName",
            "familyName",
            "emailAddress",
            "courses",
            "credentialDescription",
            "credentialId"
          ]
        }
      }
    }
  ]
}

Installation

# with npm
npm add @cef-ebsi/vcdm2.0-pm2-credential-schema@1.1.0

# with Yarn
yarn add @cef-ebsi/vcdm2.0-pm2-credential-schema@1.1.0

# with pnpm
pnpm add @cef-ebsi/vcdm2.0-pm2-credential-schema@1.1.0

Usage

The package exports the schema and its metadata as JavaScript objects:

import { schema, metadata } from "@cef-ebsi/vcdm2.0-pm2-credential-schema";

// you can now use the schema and metadata

In addition, the package exports a TypeScript type corresponding to the schema:

import type { PM2Credential } from "@cef-ebsi/vcdm2.0-pm2-credential-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.

Readme

Keywords

none

Package Sidebar

Install

npm i @cef-ebsi/vcdm2.0-pm2-credential-schema

Weekly Downloads

16

Version

1.1.0

License

EUPL-1.2

Unpacked Size

50.2 kB

Total Files

8

Last publish

Collaborators

  • iamtxena
  • yhuard
  • joticajulian
  • zgorizzo
  • maurolucc