new credential membership
This commit is contained in:
parent
8ee3f561a4
commit
45f30f3664
|
@ -1,2 +1,2 @@
|
||||||
name surnames email typeOfPerson membershipType organisation affiliatedSince
|
firstName lastName email membershipType membershipId affiliatedUntil affiliatedSince typeOfPerson identityDocType identityNumber
|
||||||
Pepe Gómez user1@example.org individual Member Pangea 01-01-2023
|
Pepe Gómez user1@example.org individual 123456 2024-01-01T00:00:00Z 2023-01-01T00:00:00Z natural DNI 12345678A
|
||||||
|
|
|
|
@ -1,105 +1,67 @@
|
||||||
{
|
{
|
||||||
"@context": [
|
"@context": [
|
||||||
"https://www.w3.org/2018/credentials/v1",
|
"https://www.w3.org/2018/credentials/v1",
|
||||||
{
|
"https://idhub.pangea.org/credentials/base/v1",
|
||||||
"individual": "https://schema.org/Person",
|
"https://idhub.pangea.org/credentials/membership-card/v1"
|
||||||
"Member": "https://schema.org/Member",
|
],
|
||||||
"startDate": "https://schema.org/startDate",
|
"type": [
|
||||||
"jsonSchema": "https://schema.org/jsonSchema",
|
"VerifiableCredential",
|
||||||
"$ref": "https://schema.org/jsonSchemaRef",
|
"VerifiableAttestation",
|
||||||
"credentialSchema": "https://gitea.pangea.org/trustchain-oc1-orchestral/schemas/contexts/vocab#credentialSchema",
|
"MembershipCard"
|
||||||
"organisation": "https://gitea.pangea.org/trustchain-oc1-orchestral/schemas/contexts/vocab#organisation",
|
],
|
||||||
"membershipType": "https://gitea.pangea.org/trustchain-oc1-orchestral/schemas/contexts/vocab#membershipType",
|
"id": "https://idhub.pangea.org/credentials/987654321",
|
||||||
"membershipId": "https://gitea.pangea.org/trustchain-oc1-orchestral/schemas/contexts/vocab#membershipId",
|
"issuer": {
|
||||||
"typeOfPerson": "https://gitea.pangea.org/trustchain-oc1-orchestral/schemas/contexts/vocab#typeOfPerson",
|
"id": "did:example:5678",
|
||||||
"identityDocType": "https://gitea.pangea.org/trustchain-oc1-orchestral/schemas/contexts/vocab#identityDocType",
|
"name": "Pangea Internet Solidari"
|
||||||
"identityNumber": "https://gitea.pangea.org/trustchain-oc1-orchestral/schemas/contexts/vocab#identityNumber",
|
},
|
||||||
"name": "https://gitea.pangea.org/trustchain-oc1-orchestral/schemas/contexts/vocab#name",
|
"issuanceDate": "2023-12-06T19:23:24Z",
|
||||||
"description": "https://gitea.pangea.org/trustchain-oc1-orchestral/schemas/contexts/vocab#description",
|
"issued": "2023-12-06T19:23:24Z",
|
||||||
"value": "https://gitea.pangea.org/trustchain-oc1-orchestral/schemas/contexts/vocab#value",
|
"validFrom": "2023-12-06T19:23:24Z",
|
||||||
"lang": "https://gitea.pangea.org/trustchain-oc1-orchestral/schemas/contexts/vocab#lang",
|
"validUntil": "2024-12-06T19:23:24Z",
|
||||||
"surnames": "https://gitea.pangea.org/trustchain-oc1-orchestral/schemas/contexts/vocab#surnames",
|
"name": [
|
||||||
"email": "https://gitea.pangea.org/trustchain-oc1-orchestral/schemas/contexts/vocab#email",
|
{
|
||||||
"affiliatedSince": "https://gitea.pangea.org/trustchain-oc1-orchestral/schemas/contexts/vocab#affiliatedSince",
|
"value": "Membership Card",
|
||||||
"affiliatedUntil": "https://gitea.pangea.org/trustchain-oc1-orchestral/schemas/contexts/vocab#affiliatedUntil",
|
"lang": "en"
|
||||||
"issued": "https://ec.europa.eu/digital-building-blocks/wikis/display/EBSIDOC/Verifiable+Attestation#issued",
|
},
|
||||||
"validFrom": "https://ec.europa.eu/digital-building-blocks/wikis/display/EBSIDOC/Verifiable+Attestation#validFrom",
|
{
|
||||||
"validUntil": "https://ec.europa.eu/digital-building-blocks/wikis/display/EBSIDOC/Verifiable+Attestation#validUntil"
|
"value": "Carnet de soci/a",
|
||||||
}
|
"lang": "ca_ES"
|
||||||
],
|
},
|
||||||
"type": [
|
{
|
||||||
"VerifiableCredential",
|
"value": "Carnet de socio/a",
|
||||||
"VerifiableAttestation",
|
"lang": "es"
|
||||||
"MembershipCard"
|
}
|
||||||
],
|
],
|
||||||
"id": "{{ vc_id }}",
|
|
||||||
"issuer": {
|
|
||||||
"id": "{{ issuer_did }}",
|
|
||||||
"name": "Pangea",
|
|
||||||
"description": [
|
"description": [
|
||||||
{
|
{
|
||||||
"value": "Pangea.org is a service provider leveraging open-source technologies to provide affordable and accessible solutions for social enterprises and solidarity organisations.",
|
"value": "The membership card specifies an individual's subscription or enrollment in specific services or benefits issued by an organization.",
|
||||||
"lang": "en"
|
"lang": "en"
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
"value": "Pangea.org és un proveïdor de serveis que aprofita les tecnologies de codi obert per oferir solucions assequibles i accessibles per a empreses socials i organitzacions solidàries.",
|
"value": "El carnet de soci especifica la subscripció o la inscripció d'un individu en serveis o beneficis específics emesos per una organització.",
|
||||||
"lang": "ca_ES"
|
"lang": "ca_ES"
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
"value": "Pangea.org es un proveedor de servicios que aprovecha tecnologías de código abierto para proporcionar soluciones asequibles y accesibles para empresas sociales y organizaciones solidarias.",
|
"value": "El carnet de socio especifica la suscripción o inscripción de un individuo en servicios o beneficios específicos emitidos por uns organización.",
|
||||||
"lang": "es"
|
"lang": "es"
|
||||||
}
|
}
|
||||||
|
],
|
||||||
]
|
"credentialSubject": {
|
||||||
},
|
"id": "did:example:1234",
|
||||||
"issuanceDate": "{{ issuance_date }}",
|
"firstName": "Joan",
|
||||||
"issued": "{{ issuance_date }}",
|
"lastName": "Pera",
|
||||||
"validFrom": "{{ issuance_date }}",
|
"email": "joan.pera@pangea.org",
|
||||||
"validUntil": "{{ validUntil }}",
|
"typeOfPerson": "natural",
|
||||||
"name": [
|
"identityDocType": "DNI",
|
||||||
{
|
"identityNumber": "12345678A",
|
||||||
"value": "Membership Card",
|
"organisation": "Pangea",
|
||||||
"lang": "en"
|
"membershipType": "individual",
|
||||||
|
"membershipId": "123456",
|
||||||
|
"affiliatedSince": "2023-01-01T00:00:00Z",
|
||||||
|
"affiliatedUntil": "2024-01-01T00:00:00Z"
|
||||||
},
|
},
|
||||||
{
|
|
||||||
"value": "Carnet de soci/a",
|
|
||||||
"lang": "ca_ES"
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"value": "Carnet de socio/a",
|
|
||||||
"lang": "es"
|
|
||||||
}
|
|
||||||
],
|
|
||||||
"description": [
|
|
||||||
{
|
|
||||||
"value": "The membership card specifies an individual's subscription or enrollment in specific services or benefits issued by an organization.",
|
|
||||||
"lang": "en"
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"value": "El carnet de soci especifica la subscripció o la inscripció d'un individu en serveis o beneficis específics emesos per una organització.",
|
|
||||||
"lang": "ca_ES"
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"value": "El carnet de socio especifica la suscripción o inscripción de un individuo en servicios o beneficios específicos emitidos por uns organización.",
|
|
||||||
"lang": "es"
|
|
||||||
}
|
|
||||||
],
|
|
||||||
"credentialSubject": {
|
|
||||||
"id": "{{ subject_did }}",
|
|
||||||
"organisation": "Pangea",
|
|
||||||
"membershipType": "{{ membershipType }}",
|
|
||||||
"membershipId": "{{ vc_id }}",
|
|
||||||
"affiliatedSince": "{{ affiliatedSince }}",
|
|
||||||
"affiliatedUntil": "{{ affiliatedUntil }}",
|
|
||||||
"typeOfPerson": "{{ typeOfPerson }}",
|
|
||||||
"identityDocType": "{{ identityDocType }}",
|
|
||||||
"identityNumber": "{{ identityNumber }}",
|
|
||||||
"name": "{{ first_name }}",
|
|
||||||
"surnames": "{{ last_name }}",
|
|
||||||
"email": "{{ email }}",
|
|
||||||
"credentialSchema": {
|
"credentialSchema": {
|
||||||
"id": "https://gitea.pangea.org/trustchain-oc1-orchestral/schemas/membership-card-schema.json",
|
"id": "https://idhub.pangea.org/vc_schemas/membership-card.json",
|
||||||
"type": "JsonSchema"
|
"type": "FullJsonSchemaValidator2021"
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
|
||||||
|
|
|
@ -1,65 +1,94 @@
|
||||||
{
|
{
|
||||||
"$id": "https://gitea.pangea.org/trustchain-oc1-orchestral/schemas/membership-card-schema.json",
|
"$id": "https://idhub.pangea.org/vc_schemas/membership-card.json",
|
||||||
"$schema": "https://json-schema.org/draft/2020-12/schema",
|
"$schema": "https://json-schema.org/draft/2020-12/schema",
|
||||||
"name": "MembershipCard",
|
"title": "Membership Card",
|
||||||
"description": "MembershipCard credential using JsonSchema",
|
"description": "The membership card specifies an individual's subscription or enrollment in specific services or benefits issued by an organization.",
|
||||||
"type": "object",
|
"name": [
|
||||||
"properties": {
|
{
|
||||||
"credentialSubject": {
|
"value": "Membership Card",
|
||||||
"type": "object",
|
"lang": "en"
|
||||||
"properties": {
|
},
|
||||||
"organisation": {
|
{
|
||||||
"type": "string"
|
"value": "Carnet de soci/a",
|
||||||
},
|
"lang": "ca_ES"
|
||||||
"membershipType": {
|
},
|
||||||
"type": "string"
|
{
|
||||||
},
|
"value": "Carnet de socio/a",
|
||||||
"affiliatedSince": {
|
"lang": "es"
|
||||||
"type": "string",
|
|
||||||
"format": "date-time"
|
|
||||||
},
|
|
||||||
"affiliatedUntil": {
|
|
||||||
"type": "string",
|
|
||||||
"format": "date-time"
|
|
||||||
},
|
|
||||||
"typeOfPerson": {
|
|
||||||
"type": "string",
|
|
||||||
"enum": [
|
|
||||||
"individual",
|
|
||||||
"org"
|
|
||||||
]
|
|
||||||
},
|
|
||||||
"identityDocType": {
|
|
||||||
"type": "string",
|
|
||||||
"enum": [
|
|
||||||
"DNI",
|
|
||||||
"NIF",
|
|
||||||
"NIE",
|
|
||||||
"PASSPORT"
|
|
||||||
]
|
|
||||||
},
|
|
||||||
"identityNumber": {
|
|
||||||
"type": "string"
|
|
||||||
},
|
|
||||||
"name": {
|
|
||||||
"type": "string"
|
|
||||||
},
|
|
||||||
"surnames": {
|
|
||||||
"type": "string"
|
|
||||||
},
|
|
||||||
"email": {
|
|
||||||
"type": "string",
|
|
||||||
"format": "email"
|
|
||||||
}
|
|
||||||
},
|
|
||||||
"required": [
|
|
||||||
"organisation",
|
|
||||||
"affiliatedSince",
|
|
||||||
"typeOfPerson",
|
|
||||||
"name",
|
|
||||||
"surnames",
|
|
||||||
"email"
|
|
||||||
]
|
|
||||||
}
|
}
|
||||||
}
|
],
|
||||||
|
"type": "object",
|
||||||
|
"allOf": [
|
||||||
|
{
|
||||||
|
"$ref": "https://idhub.pangea.org/vc_schemas/ebsi/attestation.json"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"properties": {
|
||||||
|
"credentialSubject": {
|
||||||
|
"description": "Defines additional properties on credentialSubject",
|
||||||
|
"type": "object",
|
||||||
|
"properties": {
|
||||||
|
"id": {
|
||||||
|
"description": "Defines a unique identifier of the credential subject",
|
||||||
|
"type": "string"
|
||||||
|
},
|
||||||
|
"organisation": {
|
||||||
|
"description": "Organisation the credential subject is affiliated with",
|
||||||
|
"type": "string"
|
||||||
|
},
|
||||||
|
"membershipType": {
|
||||||
|
"description": "Type of membership",
|
||||||
|
"type": "string"
|
||||||
|
},
|
||||||
|
"membershipId": {
|
||||||
|
"description": "Membership identifier",
|
||||||
|
"type": "string"
|
||||||
|
},
|
||||||
|
"affiliatedSince": {
|
||||||
|
"type": "string",
|
||||||
|
"format": "date-time"
|
||||||
|
},
|
||||||
|
"affiliatedUntil": {
|
||||||
|
"type": "string",
|
||||||
|
"format": "date-time"
|
||||||
|
},
|
||||||
|
"typeOfPerson": {
|
||||||
|
"type": "string",
|
||||||
|
"enum": [
|
||||||
|
"natural",
|
||||||
|
"legal"
|
||||||
|
]
|
||||||
|
},
|
||||||
|
"identityDocType": {
|
||||||
|
"description": "Type of the Identity Document of the credential subject",
|
||||||
|
"type": "string"
|
||||||
|
},
|
||||||
|
"identityNumber": {
|
||||||
|
"description": "Number of the Identity Document of the credential subject",
|
||||||
|
"type": "string"
|
||||||
|
},
|
||||||
|
"firstName": {
|
||||||
|
"description": "Name of the natural person or name of the legal person (organisation)",
|
||||||
|
"type": "string"
|
||||||
|
},
|
||||||
|
"lastName": {
|
||||||
|
"type": "string"
|
||||||
|
},
|
||||||
|
"email": {
|
||||||
|
"type": "string",
|
||||||
|
"format": "email"
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"required": [
|
||||||
|
"id",
|
||||||
|
"organisation",
|
||||||
|
"affiliatedSince",
|
||||||
|
"typeOfPerson",
|
||||||
|
"firstName",
|
||||||
|
"email"
|
||||||
|
]
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
]
|
||||||
}
|
}
|
Loading…
Reference in New Issue