@cef-ebsi/vcdm1.1-multi-uni-pilot-my-academic-id-schema
v1.3.0
Published
MyAcademicId Verifiable Credential (VCDM 1.1)
Downloads
10
Keywords
Readme
@cef-ebsi/vcdm1.1-multi-uni-pilot-my-academic-id-schema
MyAcademicId
Schema of an MyAcademicId Verifiable Credential
The schema is published to the Trusted Schemas Registry with the IDs:
0x257539c110cd4f6050bbe6fbb805eea6099305fb0f03668616cf3165822b7b17
(hexadecimal)z3XDm4kDtztE8DzLsVdhfshYvx2upnfLmqHtyVjkaXM1g
(multibase base58btc)
Table of Contents
JSON Schema
{
"$schema": "https://json-schema.org/draft/2020-12/schema",
"title": "MyAcademicId",
"description": "Schema of an MyAcademicId Verifiable Credential",
"type": "object",
"allOf": [
{
"$ref": "./node_modules/@cef-ebsi/vcdm1.1-attestation-schema/schema.json"
},
{
"properties": {
"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. DID of the user",
"type": "string"
},
"communityUserIdentifier": {
"description": "User’s Community Identifier is an opaque and non-revocable identifier (i.e. it cannot change over time) that follows the syntax of eduPersonUniqueId attribute of eduPerson. It consists of “uniqueID” part and fixed scope “erasmus.eduteams.org”, separated by at sign. The uniqueID part contains up to 64 hexadecimal digits (a-f, 0-9). The identifier is unique and persistent within the MyAcademicId namespace. The identifier can be used for identity matching, etc. OID: 1.3.6.1.4.1.5923.1.1.1.13 Definition: https: //wiki.refeds.org/display/STAN/eduPerson+2021-11#eduPerson202111-eduPersonUniqueId",
"type": "string"
},
"europeanStudentIdentifier": {
"description": "The European Student Identifier (ESI) of the user. ESI ensures mobility. Lifetime is limited to the period of student's mobility. ESI structure is defined in the document referenced below. ESI SHOULD NOT be parsed to extract information about the originating organisation of the student since the identifier structure is subject to a change. OID: 1.3.6.1.4.1.25178.1.2.14 Definition: https: //wiki.geant.org/display/SM/European+Student+Identifier",
"type": "array",
"items": {
"type": "string"
}
},
"externalAffiliation": {
"description": "Affiliation within Home Organization. One or more home organisations (such as, universities, research institutions or private companies) this user is affiliated with. The syntax and semantics follows eduPersonScopedAffiliation attribute. Affiliation is external to the MyAcademicId. OID: 1.3.6.1.4.1.25178.4.1.11 Definition: https: //wiki.refeds.org/display/STAN/eduPerson+2021-11#eduPerson202111-eduPersonScopedAffiliation",
"type": "array",
"items": {
"type": "string"
}
},
"organization": {
"description": "This attribute describes the organization of this user. OID: 1.3.6.1.4.1.25178.1.2.9",
"type": "string"
},
"displayName": {
"description": "User’s name (firstname lastname). For more complex names. OID: 2.16.840.1.113730.3.1.241 Definition: https: //wiki.refeds.org/display/STAN/eduPerson+2021-11#eduPerson202111-displayName",
"type": "string"
},
"givenName": {
"description": "strings that are the part of a person's name that is not their surname (see RFC4519). OID: 2.5.4.Definition: https: //wiki.refeds.org/display/STAN/eduPerson+2021-11#eduPerson202111-givenName",
"type": "string"
},
"familyName": {
"description": "strings that are a person's surname (see RFC4519). OID: 2.5.4.4 Definition: https: //wiki.refeds.org/display/STAN/eduPerson+2021-11#eduPerson202111-sn",
"type": "string"
},
"emailAddress": {
"description": "address of the user. OID: 0.9.2342.19200300.100.1.3 Definition: https: //wiki.refeds.org/display/STAN/eduPerson+2021-11#eduPerson202111-homePostalAddress",
"type": "string",
"format": "email"
},
"entitlements": {
"description": "This attribute describes the entitlements of this user. OID: 1.3.6.1.4.1.5923.1.1.1.7 Definition: https: //wiki.refeds.org/display/STAN/eduPerson+2021-11#eduPerson202111-eduPersonEntitlement",
"type": "array",
"items": {
"type": "string"
}
},
"assurance": {
"description": "Assurance of the identity of the user, following REFEDS Assurance Framework (RAF). OID: 1.3.6.1.4.1.5923.1.1.1.11 Definition: https: //wiki.refeds.org/display/STAN/eduPerson+2021-11#eduPerson202111-eduPersonAssurance",
"type": "array",
"items": {
"type": "string",
"format": "uri"
}
}
},
"required": [
"id",
"communityUserIdentifier",
"displayName",
"givenName",
"familyName",
"emailAddress",
"assurance"
]
}
}
}
]
}
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-multi-uni-pilot-my-academic-id-schema";
// you can now use the schema and metadata
In addition, the package exports a TypeScript type corresponding to the schema:
import type { MyAcademicId } from "@cef-ebsi/vcdm1.1-multi-uni-pilot-my-academic-id-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.