This document describes the Verifiable Credentials Vocabulary v2.0, i.e., the RDFS [[RDF-SCHEMA]] vocabulary used by the Verifiable Credentials [[VC-DATA-MODEL-2.0]].

Alternate versions of the vocabulary definition exist in Turtle and JSON-LD.

Published:
Version Info:
2.0
See Also: https://www.w3.org/TR/vc-data-model-2.0/

This vocabulary has been defined by the W3C Verifiable Credentials Working Group and provides the official RDFS vocabulary for Verifiable Credentials. Comments regarding this document are welcome. Please file issues directly on GitHub, or send them to public-vc-comments@w3.org (subscribe, archives).

Specification of terms

In general, the terms — i.e., the properties and classes — used in the VCDM are formally specified in Recommendation Track documents published by the W3C Verifiable Credentials Working Group or, for some deprecated or reserved terms, in Reports published by the W3C Credentials Community Group. In each case of such external definition, the term's description in this document contains a link to the relevant specification. Additionally, the `rdfs:definedBy` property in the RDFS representation(s) refers to the formal specification.

In some cases, a local explanation is necessary to complement, or to replace, the definition found in an external specification. For instance, this is so when the term is needed to provide a consistent structure to the RDFS vocabulary, such as when the term defines a common supertype for class instances that are used as objects of specific properties, or when RDF Graphs are involved. For such cases, the extra definition is included in the current document (and the `rdfs:comment` property is used to include them in the RDFS representations).

Overview diagram of the vocabulary (without the deprecated items).
A separate, stand-alone SVG version of the diagram, as well as a textual description, are also available.

Namespaces

This specification makes use of the following namespaces:

cred
https://www.w3.org/2018/credentials#
dc
http://purl.org/dc/terms/
owl
http://www.w3.org/2002/07/owl#
rdf
http://www.w3.org/1999/02/22-rdf-syntax-ns#
rdfs
http://www.w3.org/2000/01/rdf-schema#
xsd
http://www.w3.org/2001/XMLSchema#
vs
http://www.w3.org/2003/06/sw-vocab-status/ns#
schema
http://schema.org/
jsonld
http://www.w3.org/ns/json-ld#

@context files

The following @context files make use of the terms defined in this specification:

Regular terms

Property definitions

The following are property definitions in the cred namespace.

credentialSchema

Credential schema

See the formal definition of the term.

stable
Range:
CredentialSchema
Domain:
VerifiableCredential
Relevant @context:
https://www.w3.org/ns/credentials/v2

credentialStatus

Credential status

See the formal definition of the term.

stable
Range:
CredentialStatus
Domain:
VerifiableCredential
Relevant @context:
https://www.w3.org/ns/credentials/v2

credentialSubject

Credential subject

See the formal definition of the term.

The property's value should be a URL, i.e., not a literal.

stable
Domain:
VerifiableCredential
Relevant @context:
https://www.w3.org/ns/credentials/v2

digestSRI

Subresource integrity digest

See the formal definition of the term.

See also:
Subresource Integrity Metadata
stable
Range:
sriString
Relevant @context:
https://www.w3.org/ns/credentials/v2

holder

Holder

See the formal definition of the term.

The property's value should be a URL, i.e., not a literal.

stable
Domain:
VerifiablePresentation
Relevant @context:
https://www.w3.org/ns/credentials/v2

jsonSchema

Referring to a Json Schema

See the formal definition of the term.

stable
Range:
rdf:JSON
Domain:
JsonSchema
Relevant @context:
https://www.w3.org/ns/credentials/v2

issuer

Issuer

See the formal definition of the term.

The property's value should be a URL, i.e., not a literal.

stable
Domain:
VerifiableCredential
Relevant @context:
https://www.w3.org/ns/credentials/v2

relatedResource

Related resource

See the formal definition of the term.

The property's value should be a URL, i.e., not a literal.

stable
Domain:
VerifiableCredential
Relevant @context:
https://www.w3.org/ns/credentials/v2

termsOfUse

Terms of use

See the formal definition of the term.

stable
Range:
TermsOfUse
Domain:
Union of:
VerifiableCredential
VerifiablePresentation
Relevant @context:
https://www.w3.org/ns/credentials/v2

validFrom

Valid from

See the formal definition of the term.

stable
Range:
xsd:dateTime
Domain:
Union of:
VerifiableCredential
VerifiablePresentation
Relevant @context:
https://www.w3.org/ns/credentials/v2

validUntil

Valid until

See the formal definition of the term.

stable
Range:
xsd:dateTime
Domain:
Union of:
VerifiableCredential
VerifiablePresentation
Relevant @context:
https://www.w3.org/ns/credentials/v2

verifiableCredential

Verifiable credential graph

See the formal definition of the term.

stable
Range:
VerifiableCredentialGraph
Domain:
VerifiablePresentation
Relevant @context:
https://www.w3.org/ns/credentials/v2

Class definitions

The following are class definitions in the cred namespace.

CredentialSchema

Credential schema

See the formal definition of the term.

stable
Range of:
credentialSchema

CredentialStatus

Credential status

See the formal definition of the term.

stable
Range of:
credentialStatus

EnvelopedVerifiableCredential

Enveloped verifiable credential

See the formal definition of the term.

stable
Relevant @context:
https://www.w3.org/ns/credentials/v2

EnvelopedVerifiablePresentation

Enveloped verifiable presentation

See the formal definition of the term.

stable
Relevant @context:
https://www.w3.org/ns/credentials/v2

JsonSchema

JSON schema validator

See the formal definition of the term.

stable
Subclass of:
CredentialSchema
Domain of:
jsonSchema
Relevant @context:
https://www.w3.org/ns/credentials/v2

JsonSchemaCredential

JSON schema validator with schema contained in a credential

See the formal definition of the term.

stable
Subclass of:
VerifiableCredential
Relevant @context:
https://www.w3.org/ns/credentials/v2

TermsOfUse

Terms of use

See the formal definition of the term.

stable
Range of:
termsOfUse

VerifiableCredential

Verifiable credential

See the formal definition of the term.

stable
Domain of:
credentialSchema, credentialStatus, credentialSubject, evidence, issuer, refreshService, renderMethod, relatedResource
In the domain of:
termsOfUse, validFrom, validUntil
Relevant @context:
https://www.w3.org/ns/credentials/v2

VerifiableCredentialGraph

Verifiable credential graph

See the formal definition of the term.

Instances of this class are RDF Graphs [[RDF12-CONCEPTS]].
stable
Range of:
verifiableCredential

VerifiablePresentation

Verifiable presentation

See the formal definition of the term.

stable
Domain of:
holder, verifiableCredential
In the domain of:
termsOfUse, validFrom, validUntil
Relevant @context:
https://www.w3.org/ns/credentials/v2

Datatype definitions

The following are datatype definitions in the cred namespace.

sriString

Datatype for digest SRI values

See the formal definition of the term.

See also:
Subresource Integrity Metadata
stable
Derived from:
xsd:string
Range of:
digestSRI
Relevant @context:
https://www.w3.org/ns/credentials/v2

Reserved terms

All terms in this section are reserved. Implementers may use these properties, but should expect them and/or their meanings to change during the process to normatively specify them.

Reserved properties

The following are reserved property definitions in the cred namespace.

confidenceMethod

Confidence method (reserved)

See the formal definition of the term.

reserved
Range:
ConfidenceMethod
Relevant @context:
https://www.w3.org/ns/credentials/v2

evidence

Evidence (reserved)

See the formal definition of the term.

reserved
Range:
CredentialEvidence
Domain:
VerifiableCredential
Relevant @context:
https://www.w3.org/ns/credentials/v2

refreshService

Refresh service (reserved)

See the formal definition of the term.

reserved
Range:
RefreshService
Domain:
VerifiableCredential
Relevant @context:
https://www.w3.org/ns/credentials/v2

renderMethod

Render method (reserved)

See the formal definition of the term.

reserved
Range:
RenderMethod
Domain:
VerifiableCredential

Reserved classes

The following are reserved class definitions in the cred namespace.

CredentialEvidence

Credential evidence (reserved)

See the formal definition of the term.

reserved
Range of:
evidence

ConfidenceMethod

Confidence method (reserved)

See the formal definition of the term.

reserved
Range of:
confidenceMethod

RefreshService

Refresh service (reserved)

See the formal definition of the term.

reserved
Range of:
refreshService

RenderMethod

Render method (reserved)

See the formal definition of the term.

reserved
Range of:
renderMethod

Deprecated terms

All terms in this section are deprecated, and are only kept in this vocabulary for backward compatibility.
New applications should not use them.

Deprecated properties

The following are deprecated property definitions in the cred namespace.

expirationDate

Expiration date (deprecated)

See the formal definition of the term.

The value of this property was used in the past to express the date and time the credential ceased to be valid. It has been deprecated in favor of validUntil
deprecatedtrue
Range:
xsd:dateTime
Relevant @context:
https://www.w3.org/ns/credentials/v2

issuanceDate

Issuance date (deprecated)

See the formal definition of the term.

The value of this property was used in the past to represent the earliest date when the information associated with the credentialSubject property became valid. This property has been deprecated in favor of validFrom.
deprecatedtrue
Range:
xsd:dateTime
Relevant @context:
https://www.w3.org/ns/credentials/v2

Deprecated properties

Diagram description

Overview diagram of the vocabulary (without the deprecated items).

The diagram uses boxes, ellipses, and connecting lines with different "styles" (border color, end marker, line type) to differentiate their semantic meaning; these styles identify Property, Class, or Datatype, via the shapes used for the graph nodes, and Superclass, Domain Of, Range, or Contains, via the styles of the connecting lines. These style names are used in the explanation text in what follows.

In the middle of the diagram there is a column of labeled boxes, all styled as Property. The labels, from top to bottom, are: "credentialSchema", "credentialStatus", "credentialSubject", "issuer", "evidence", "refreshService", "renderMethod", "confidenceMethod", "termsOfUse", "validFrom", "validUntil", and "holder". On the left side of this column, there are five labeled ellipses, styled as Class. These are, from top to bottom, "VerifiableCredential", "JsonSchemaCredential", "EnvelopedVerifiableCredential", "VerifiableCredentialGraph", and "VerifiablePresentation". There is also a small, unlabeled circle, which serves as an intersection point for connector lines, with two pointing in, and four pointing out.

The "VerifiableCredential" ellipse is connected to the "credentialSchema", "credentialStatus", "credentialSubject", "issuer", "relatedResource", "evidence", "refreshService", "renderMethod", and "confidenceMethod" boxes, through connecting lines styled as Domain Of. It is also connected to the crossing point circle with a similar connecting line, styled as Domain Of. The "VerifiablePresentation" ellipse is connected to the crossing point circle, as well as the "holder" and "verifiableCredential" boxes, with a similar connecting line styled as Domain Of. The crossing point circle is connected to the "termsOfUse", "validFrom", and "validUntil" boxes with a connecting line styled as Domain Of. The "verifiableCredential" box is connected to the "VerifiableCredentialGraph" ellipse with a connecting line styled as Range. The "JsonSchemaCredential" ellipse is connected to the "VerifiableCredential" ellipse with a connecting line styled as Superclass. Finally, the "VerifiableCredentialGraph" ellipse is connected to the "VerifiableCredential" and "EnvelopedVerifiableCredential" ellipses with connector lines styled as Contains.

On the right side of the column, there is another column of ellipses, styled as "Class", and labeled as "CredentialSchema", "CredentialStatus", "CredentialEvidence", "RefreshService", "RenderMethod", "ConfidenceMethod", and "TermsOfUse". The Property boxes labeled as "credentialSchema", "credentialStatus", "credentialEvidence, "refreshService", "renderMethod", "confidenceMethod", and "termsOfUse" are respectively connected to those Class ellipses, with connecting lines styled as Range.

The "CredentialSchema" ellipse is connected to one more ellipse, on the far right side of the diagram, styled as Class and labeled as "JsonSchema", with a connecting line styled as Superclass. This "JsonSchema" ellipse is also connected to a Property box labeled as "jsonSchema", through a connector line styled as Domain Of, and to a Datatype shape labeled as "rdf:JSON", through a connecting line styled as Range.

Finally, on the lower far right side of the diagram, there is a separate Property box labeled as "digestSRI", connected to a Datatype shape labeled as "sriString", with a connecting line styled as Range.