The purpose of this test suite is to demonstrate a path to interoperability for the VC JSON Schema specification. The technologies explored in this test suite are experimental. This document contains the most recent interoperability report for a VC JSON Schema using both `JsonSchema` and `JsonSchemaCredential` types. This report is auto-generated.

Conformance Testing Results

Tests passed 2/50 4%

Tests failed 48/50 96%

Failures 48

Tests skipped 4

Total tests 54

These tests were run on

Key

The results of the tests are shown below:

JsonSchema – JSON Schema 2019-09

Implementation ⇒
Test Name
tbd
2.1 ID - The value MUST be a URL that identifies the schema associated with the verifiable credential.
{
                      "name": "AssertionError",
                      "message": "expected 'error' to equal 'success'",
                      "stack": "AssertionError: expected 'error' to equal 'success'\n    at should.equal (node_modules/chai/lib/chai/interface/should.js:98:35)\n    at Context. (file:///home/runner/work/vc-json-schema-test-suite/vc-json-schema-test-suite/tests/jsonschema.js:31:18)"
                    }
2.1 The type property MUST be JsonSchema.
{
                      "name": "AssertionError",
                      "message": "expected 'error' to equal 'success'",
                      "stack": "AssertionError: expected 'error' to equal 'success'\n    at should.equal (node_modules/chai/lib/chai/interface/should.js:98:35)\n    at Context. (file:///home/runner/work/vc-json-schema-test-suite/vc-json-schema-test-suite/tests/jsonschema.js:38:18)"
                    }
3 Implementers MUST provide support for JSON Schema specifications where, in the following table, the required column's value is yes
🛑
3.1.1 The $id MUST be present and its value MUST represent a valid URI-reference
{
                      "name": "AssertionError",
                      "message": "expected 'error' to equal 'success'",
                      "stack": "AssertionError: expected 'error' to equal 'success'\n    at should.equal (node_modules/chai/lib/chai/interface/should.js:98:35)\n    at Context. (file:///home/runner/work/vc-json-schema-test-suite/vc-json-schema-test-suite/tests/jsonschema.js:54:18)"
                    }
3.1.2, 4 The $schema property MUST be present in each schema
{
                      "name": "AssertionError",
                      "message": "expected 'error' to equal 'success'",
                      "stack": "AssertionError: expected 'error' to equal 'success'\n    at should.equal (node_modules/chai/lib/chai/interface/should.js:98:35)\n    at Context. (file:///home/runner/work/vc-json-schema-test-suite/vc-json-schema-test-suite/tests/jsonschema.js:62:18)"
                    }
4.2 (Success) Validation MUST result in one of the following three possible outcomes: success, failure, or indeterminate.
{
                      "name": "AssertionError",
                      "message": "expected 'error' to equal 'success'",
                      "stack": "AssertionError: expected 'error' to equal 'success'\n    at should.equal (node_modules/chai/lib/chai/interface/should.js:98:35)\n    at Context. (file:///home/runner/work/vc-json-schema-test-suite/vc-json-schema-test-suite/tests/jsonschema.js:69:18)"
                    }
4.2 (Failure) Validation MUST result in one of the following three possible outcomes: success, failure, or indeterminate.
{
                      "name": "AssertionError",
                      "message": "expected 'error' to equal 'success'",
                      "stack": "AssertionError: expected 'error' to equal 'success'\n    at should.equal (node_modules/chai/lib/chai/interface/should.js:98:35)\n    at Context. (file:///home/runner/work/vc-json-schema-test-suite/vc-json-schema-test-suite/tests/jsonschema.js:76:18)"
                    }
4.2 (Indeterminate) Validation MUST result in one of the following three possible outcomes: success, failure, or indeterminate.
{
                      "name": "AssertionError",
                      "message": "expected 'error' to equal 'success'",
                      "stack": "AssertionError: expected 'error' to equal 'success'\n    at should.equal (node_modules/chai/lib/chai/interface/should.js:98:35)\n    at Context. (file:///home/runner/work/vc-json-schema-test-suite/vc-json-schema-test-suite/tests/jsonschema.js:83:18)"
                    }

JsonSchema – JSON Schema 2020-12

Implementation ⇒
Test Name
tbd
2.1 ID - The value MUST be a URL that identifies the schema associated with the verifiable credential.
{
                      "name": "AssertionError",
                      "message": "expected 'error' to equal 'success'",
                      "stack": "AssertionError: expected 'error' to equal 'success'\n    at should.equal (node_modules/chai/lib/chai/interface/should.js:98:35)\n    at Context. (file:///home/runner/work/vc-json-schema-test-suite/vc-json-schema-test-suite/tests/jsonschema.js:31:18)"
                    }
2.1 The type property MUST be JsonSchema.
{
                      "name": "AssertionError",
                      "message": "expected 'error' to equal 'success'",
                      "stack": "AssertionError: expected 'error' to equal 'success'\n    at should.equal (node_modules/chai/lib/chai/interface/should.js:98:35)\n    at Context. (file:///home/runner/work/vc-json-schema-test-suite/vc-json-schema-test-suite/tests/jsonschema.js:38:18)"
                    }
3 Implementers MUST provide support for JSON Schema specifications where, in the following table, the required column's value is yes
3.1.1 The $id MUST be present and its value MUST represent a valid URI-reference
{
                      "name": "AssertionError",
                      "message": "expected 'error' to equal 'success'",
                      "stack": "AssertionError: expected 'error' to equal 'success'\n    at should.equal (node_modules/chai/lib/chai/interface/should.js:98:35)\n    at Context. (file:///home/runner/work/vc-json-schema-test-suite/vc-json-schema-test-suite/tests/jsonschema.js:54:18)"
                    }
3.1.2, 4 The $schema property MUST be present in each schema
{
                      "name": "AssertionError",
                      "message": "expected 'error' to equal 'success'",
                      "stack": "AssertionError: expected 'error' to equal 'success'\n    at should.equal (node_modules/chai/lib/chai/interface/should.js:98:35)\n    at Context. (file:///home/runner/work/vc-json-schema-test-suite/vc-json-schema-test-suite/tests/jsonschema.js:62:18)"
                    }
4.2 (Success) Validation MUST result in one of the following three possible outcomes: success, failure, or indeterminate.
{
                      "name": "AssertionError",
                      "message": "expected 'error' to equal 'success'",
                      "stack": "AssertionError: expected 'error' to equal 'success'\n    at should.equal (node_modules/chai/lib/chai/interface/should.js:98:35)\n    at Context. (file:///home/runner/work/vc-json-schema-test-suite/vc-json-schema-test-suite/tests/jsonschema.js:69:18)"
                    }
4.2 (Failure) Validation MUST result in one of the following three possible outcomes: success, failure, or indeterminate.
{
                      "name": "AssertionError",
                      "message": "expected 'error' to equal 'success'",
                      "stack": "AssertionError: expected 'error' to equal 'success'\n    at should.equal (node_modules/chai/lib/chai/interface/should.js:98:35)\n    at Context. (file:///home/runner/work/vc-json-schema-test-suite/vc-json-schema-test-suite/tests/jsonschema.js:76:18)"
                    }
4.2 (Indeterminate) Validation MUST result in one of the following three possible outcomes: success, failure, or indeterminate.
{
                      "name": "AssertionError",
                      "message": "expected 'error' to equal 'success'",
                      "stack": "AssertionError: expected 'error' to equal 'success'\n    at should.equal (node_modules/chai/lib/chai/interface/should.js:98:35)\n    at Context. (file:///home/runner/work/vc-json-schema-test-suite/vc-json-schema-test-suite/tests/jsonschema.js:83:18)"
                    }

JsonSchema – JSON Schema Draft-7

Implementation ⇒
Test Name
tbd
2.1 ID - The value MUST be a URL that identifies the schema associated with the verifiable credential.
{
                      "name": "AssertionError",
                      "message": "expected 'error' to equal 'success'",
                      "stack": "AssertionError: expected 'error' to equal 'success'\n    at should.equal (node_modules/chai/lib/chai/interface/should.js:98:35)\n    at Context. (file:///home/runner/work/vc-json-schema-test-suite/vc-json-schema-test-suite/tests/jsonschema.js:31:18)"
                    }
2.1 The type property MUST be JsonSchema.
{
                      "name": "AssertionError",
                      "message": "expected 'error' to equal 'success'",
                      "stack": "AssertionError: expected 'error' to equal 'success'\n    at should.equal (node_modules/chai/lib/chai/interface/should.js:98:35)\n    at Context. (file:///home/runner/work/vc-json-schema-test-suite/vc-json-schema-test-suite/tests/jsonschema.js:38:18)"
                    }
3 Implementers MUST provide support for JSON Schema specifications where, in the following table, the required column's value is yes
🛑
3.1.1 The $id MUST be present and its value MUST represent a valid URI-reference
{
                      "name": "AssertionError",
                      "message": "expected 'error' to equal 'success'",
                      "stack": "AssertionError: expected 'error' to equal 'success'\n    at should.equal (node_modules/chai/lib/chai/interface/should.js:98:35)\n    at Context. (file:///home/runner/work/vc-json-schema-test-suite/vc-json-schema-test-suite/tests/jsonschema.js:54:18)"
                    }
3.1.2, 4 The $schema property MUST be present in each schema
{
                      "name": "AssertionError",
                      "message": "expected 'error' to equal 'success'",
                      "stack": "AssertionError: expected 'error' to equal 'success'\n    at should.equal (node_modules/chai/lib/chai/interface/should.js:98:35)\n    at Context. (file:///home/runner/work/vc-json-schema-test-suite/vc-json-schema-test-suite/tests/jsonschema.js:62:18)"
                    }
4.2 (Success) Validation MUST result in one of the following three possible outcomes: success, failure, or indeterminate.
{
                      "name": "AssertionError",
                      "message": "expected 'error' to equal 'success'",
                      "stack": "AssertionError: expected 'error' to equal 'success'\n    at should.equal (node_modules/chai/lib/chai/interface/should.js:98:35)\n    at Context. (file:///home/runner/work/vc-json-schema-test-suite/vc-json-schema-test-suite/tests/jsonschema.js:69:18)"
                    }
4.2 (Failure) Validation MUST result in one of the following three possible outcomes: success, failure, or indeterminate.
{
                      "name": "AssertionError",
                      "message": "expected 'error' to equal 'success'",
                      "stack": "AssertionError: expected 'error' to equal 'success'\n    at should.equal (node_modules/chai/lib/chai/interface/should.js:98:35)\n    at Context. (file:///home/runner/work/vc-json-schema-test-suite/vc-json-schema-test-suite/tests/jsonschema.js:76:18)"
                    }
4.2 (Indeterminate) Validation MUST result in one of the following three possible outcomes: success, failure, or indeterminate.
{
                      "name": "AssertionError",
                      "message": "expected 'error' to equal 'success'",
                      "stack": "AssertionError: expected 'error' to equal 'success'\n    at should.equal (node_modules/chai/lib/chai/interface/should.js:98:35)\n    at Context. (file:///home/runner/work/vc-json-schema-test-suite/vc-json-schema-test-suite/tests/jsonschema.js:83:18)"
                    }

JsonSchemaCredential – JSON Schema 2019-09

Implementation ⇒
Test Name
tbd
2.1 ID - The value MUST be a URL that identifies the schema associated with the verifiable credential.
{
                      "name": "AssertionError",
                      "message": "expected 'error' to equal 'success'",
                      "stack": "AssertionError: expected 'error' to equal 'success'\n    at should.equal (node_modules/chai/lib/chai/interface/should.js:98:35)\n    at Context. (file:///home/runner/work/vc-json-schema-test-suite/vc-json-schema-test-suite/tests/jsonschemacredential.js:31:18)"
                    }
2.1 The type property MUST be JsonSchemaCredential.
{
                      "name": "AssertionError",
                      "message": "expected 'error' to equal 'success'",
                      "stack": "AssertionError: expected 'error' to equal 'success'\n    at should.equal (node_modules/chai/lib/chai/interface/should.js:98:35)\n    at Context. (file:///home/runner/work/vc-json-schema-test-suite/vc-json-schema-test-suite/tests/jsonschemacredential.js:38:18)"
                    }
2.2 The credentialSubject property MUST contain two properties: type - the value of which MUST be JsonSchema; jsonSchema - an object which contains a valid JSON Schema
{
                      "name": "AssertionError",
                      "message": "expected 'error' to equal 'success'",
                      "stack": "AssertionError: expected 'error' to equal 'success'\n    at should.equal (node_modules/chai/lib/chai/interface/should.js:98:35)\n    at Context. (file:///home/runner/work/vc-json-schema-test-suite/vc-json-schema-test-suite/tests/jsonschemacredential.js:45:18)"
                    }
2.2 The value of the credentialSchema property MUST always be set to [known json schema]
{
                      "name": "AssertionError",
                      "message": "expected 'error' to equal 'success'",
                      "stack": "AssertionError: expected 'error' to equal 'success'\n    at should.equal (node_modules/chai/lib/chai/interface/should.js:98:35)\n    at Context. (file:///home/runner/work/vc-json-schema-test-suite/vc-json-schema-test-suite/tests/jsonschemacredential.js:52:18)"
                    }
3 Implementers MUST provide support for JSON Schema specifications where, in the following table, the required column's value is yes
🛑
3.1.1 The $id MUST be present and its value MUST represent a valid URI-reference
{
                      "name": "AssertionError",
                      "message": "expected 'error' to equal 'success'",
                      "stack": "AssertionError: expected 'error' to equal 'success'\n    at should.equal (node_modules/chai/lib/chai/interface/should.js:98:35)\n    at Context. (file:///home/runner/work/vc-json-schema-test-suite/vc-json-schema-test-suite/tests/jsonschemacredential.js:68:18)"
                    }
3.1.2, 4 The $schema property MUST be present in each schema
{
                      "name": "AssertionError",
                      "message": "expected 'error' to equal 'success'",
                      "stack": "AssertionError: expected 'error' to equal 'success'\n    at should.equal (node_modules/chai/lib/chai/interface/should.js:98:35)\n    at Context. (file:///home/runner/work/vc-json-schema-test-suite/vc-json-schema-test-suite/tests/jsonschemacredential.js:76:18)"
                    }
4.2 (Success) Validation MUST result in one of the following three possible outcomes: success, failure, or indeterminate.
{
                      "name": "AssertionError",
                      "message": "expected 'error' to equal 'success'",
                      "stack": "AssertionError: expected 'error' to equal 'success'\n    at should.equal (node_modules/chai/lib/chai/interface/should.js:98:35)\n    at Context. (file:///home/runner/work/vc-json-schema-test-suite/vc-json-schema-test-suite/tests/jsonschemacredential.js:83:18)"
                    }
4.2 (Failure) Validation MUST result in one of the following three possible outcomes: success, failure, or indeterminate.
{
                      "name": "AssertionError",
                      "message": "expected 'error' to equal 'success'",
                      "stack": "AssertionError: expected 'error' to equal 'success'\n    at should.equal (node_modules/chai/lib/chai/interface/should.js:98:35)\n    at Context. (file:///home/runner/work/vc-json-schema-test-suite/vc-json-schema-test-suite/tests/jsonschemacredential.js:90:18)"
                    }
4.2 (Indeterminate) Validation MUST result in one of the following three possible outcomes: success, failure, or indeterminate.
{
                      "name": "AssertionError",
                      "message": "expected 'error' to equal 'success'",
                      "stack": "AssertionError: expected 'error' to equal 'success'\n    at should.equal (node_modules/chai/lib/chai/interface/should.js:98:35)\n    at Context. (file:///home/runner/work/vc-json-schema-test-suite/vc-json-schema-test-suite/tests/jsonschemacredential.js:97:18)"
                    }

JsonSchemaCredential – JSON Schema 2020-12

Implementation ⇒
Test Name
tbd
2.1 ID - The value MUST be a URL that identifies the schema associated with the verifiable credential.
{
                      "name": "AssertionError",
                      "message": "expected 'error' to equal 'success'",
                      "stack": "AssertionError: expected 'error' to equal 'success'\n    at should.equal (node_modules/chai/lib/chai/interface/should.js:98:35)\n    at Context. (file:///home/runner/work/vc-json-schema-test-suite/vc-json-schema-test-suite/tests/jsonschemacredential.js:31:18)"
                    }
2.1 The type property MUST be JsonSchemaCredential.
{
                      "name": "AssertionError",
                      "message": "expected 'error' to equal 'success'",
                      "stack": "AssertionError: expected 'error' to equal 'success'\n    at should.equal (node_modules/chai/lib/chai/interface/should.js:98:35)\n    at Context. (file:///home/runner/work/vc-json-schema-test-suite/vc-json-schema-test-suite/tests/jsonschemacredential.js:38:18)"
                    }
2.2 The credentialSubject property MUST contain two properties: type - the value of which MUST be JsonSchema; jsonSchema - an object which contains a valid JSON Schema
{
                      "name": "AssertionError",
                      "message": "expected 'error' to equal 'success'",
                      "stack": "AssertionError: expected 'error' to equal 'success'\n    at should.equal (node_modules/chai/lib/chai/interface/should.js:98:35)\n    at Context. (file:///home/runner/work/vc-json-schema-test-suite/vc-json-schema-test-suite/tests/jsonschemacredential.js:45:18)"
                    }
2.2 The value of the credentialSchema property MUST always be set to [known json schema]
{
                      "name": "AssertionError",
                      "message": "expected 'error' to equal 'success'",
                      "stack": "AssertionError: expected 'error' to equal 'success'\n    at should.equal (node_modules/chai/lib/chai/interface/should.js:98:35)\n    at Context. (file:///home/runner/work/vc-json-schema-test-suite/vc-json-schema-test-suite/tests/jsonschemacredential.js:52:18)"
                    }
3 Implementers MUST provide support for JSON Schema specifications where, in the following table, the required column's value is yes
3.1.1 The $id MUST be present and its value MUST represent a valid URI-reference
{
                      "name": "AssertionError",
                      "message": "expected 'error' to equal 'success'",
                      "stack": "AssertionError: expected 'error' to equal 'success'\n    at should.equal (node_modules/chai/lib/chai/interface/should.js:98:35)\n    at Context. (file:///home/runner/work/vc-json-schema-test-suite/vc-json-schema-test-suite/tests/jsonschemacredential.js:68:18)"
                    }
3.1.2, 4 The $schema property MUST be present in each schema
{
                      "name": "AssertionError",
                      "message": "expected 'error' to equal 'success'",
                      "stack": "AssertionError: expected 'error' to equal 'success'\n    at should.equal (node_modules/chai/lib/chai/interface/should.js:98:35)\n    at Context. (file:///home/runner/work/vc-json-schema-test-suite/vc-json-schema-test-suite/tests/jsonschemacredential.js:76:18)"
                    }
4.2 (Success) Validation MUST result in one of the following three possible outcomes: success, failure, or indeterminate.
{
                      "name": "AssertionError",
                      "message": "expected 'error' to equal 'success'",
                      "stack": "AssertionError: expected 'error' to equal 'success'\n    at should.equal (node_modules/chai/lib/chai/interface/should.js:98:35)\n    at Context. (file:///home/runner/work/vc-json-schema-test-suite/vc-json-schema-test-suite/tests/jsonschemacredential.js:83:18)"
                    }
4.2 (Failure) Validation MUST result in one of the following three possible outcomes: success, failure, or indeterminate.
{
                      "name": "AssertionError",
                      "message": "expected 'error' to equal 'success'",
                      "stack": "AssertionError: expected 'error' to equal 'success'\n    at should.equal (node_modules/chai/lib/chai/interface/should.js:98:35)\n    at Context. (file:///home/runner/work/vc-json-schema-test-suite/vc-json-schema-test-suite/tests/jsonschemacredential.js:90:18)"
                    }
4.2 (Indeterminate) Validation MUST result in one of the following three possible outcomes: success, failure, or indeterminate.
{
                      "name": "AssertionError",
                      "message": "expected 'error' to equal 'success'",
                      "stack": "AssertionError: expected 'error' to equal 'success'\n    at should.equal (node_modules/chai/lib/chai/interface/should.js:98:35)\n    at Context. (file:///home/runner/work/vc-json-schema-test-suite/vc-json-schema-test-suite/tests/jsonschemacredential.js:97:18)"
                    }

JsonSchemaCredential – JSON Schema Draft-7

Implementation ⇒
Test Name
tbd
2.1 ID - The value MUST be a URL that identifies the schema associated with the verifiable credential.
{
                      "name": "AssertionError",
                      "message": "expected 'error' to equal 'success'",
                      "stack": "AssertionError: expected 'error' to equal 'success'\n    at should.equal (node_modules/chai/lib/chai/interface/should.js:98:35)\n    at Context. (file:///home/runner/work/vc-json-schema-test-suite/vc-json-schema-test-suite/tests/jsonschemacredential.js:31:18)"
                    }
2.1 The type property MUST be JsonSchemaCredential.
{
                      "name": "AssertionError",
                      "message": "expected 'error' to equal 'success'",
                      "stack": "AssertionError: expected 'error' to equal 'success'\n    at should.equal (node_modules/chai/lib/chai/interface/should.js:98:35)\n    at Context. (file:///home/runner/work/vc-json-schema-test-suite/vc-json-schema-test-suite/tests/jsonschemacredential.js:38:18)"
                    }
2.2 The credentialSubject property MUST contain two properties: type - the value of which MUST be JsonSchema; jsonSchema - an object which contains a valid JSON Schema
{
                      "name": "AssertionError",
                      "message": "expected 'error' to equal 'success'",
                      "stack": "AssertionError: expected 'error' to equal 'success'\n    at should.equal (node_modules/chai/lib/chai/interface/should.js:98:35)\n    at Context. (file:///home/runner/work/vc-json-schema-test-suite/vc-json-schema-test-suite/tests/jsonschemacredential.js:45:18)"
                    }
2.2 The value of the credentialSchema property MUST always be set to [known json schema]
{
                      "name": "AssertionError",
                      "message": "expected 'error' to equal 'success'",
                      "stack": "AssertionError: expected 'error' to equal 'success'\n    at should.equal (node_modules/chai/lib/chai/interface/should.js:98:35)\n    at Context. (file:///home/runner/work/vc-json-schema-test-suite/vc-json-schema-test-suite/tests/jsonschemacredential.js:52:18)"
                    }
3 Implementers MUST provide support for JSON Schema specifications where, in the following table, the required column's value is yes
🛑
3.1.1 The $id MUST be present and its value MUST represent a valid URI-reference
{
                      "name": "AssertionError",
                      "message": "expected 'error' to equal 'success'",
                      "stack": "AssertionError: expected 'error' to equal 'success'\n    at should.equal (node_modules/chai/lib/chai/interface/should.js:98:35)\n    at Context. (file:///home/runner/work/vc-json-schema-test-suite/vc-json-schema-test-suite/tests/jsonschemacredential.js:68:18)"
                    }
3.1.2, 4 The $schema property MUST be present in each schema
{
                      "name": "AssertionError",
                      "message": "expected 'error' to equal 'success'",
                      "stack": "AssertionError: expected 'error' to equal 'success'\n    at should.equal (node_modules/chai/lib/chai/interface/should.js:98:35)\n    at Context. (file:///home/runner/work/vc-json-schema-test-suite/vc-json-schema-test-suite/tests/jsonschemacredential.js:76:18)"
                    }
4.2 (Success) Validation MUST result in one of the following three possible outcomes: success, failure, or indeterminate.
{
                      "name": "AssertionError",
                      "message": "expected 'error' to equal 'success'",
                      "stack": "AssertionError: expected 'error' to equal 'success'\n    at should.equal (node_modules/chai/lib/chai/interface/should.js:98:35)\n    at Context. (file:///home/runner/work/vc-json-schema-test-suite/vc-json-schema-test-suite/tests/jsonschemacredential.js:83:18)"
                    }
4.2 (Failure) Validation MUST result in one of the following three possible outcomes: success, failure, or indeterminate.
{
                      "name": "AssertionError",
                      "message": "expected 'error' to equal 'success'",
                      "stack": "AssertionError: expected 'error' to equal 'success'\n    at should.equal (node_modules/chai/lib/chai/interface/should.js:98:35)\n    at Context. (file:///home/runner/work/vc-json-schema-test-suite/vc-json-schema-test-suite/tests/jsonschemacredential.js:90:18)"
                    }
4.2 (Indeterminate) Validation MUST result in one of the following three possible outcomes: success, failure, or indeterminate.
{
                      "name": "AssertionError",
                      "message": "expected 'error' to equal 'success'",
                      "stack": "AssertionError: expected 'error' to equal 'success'\n    at should.equal (node_modules/chai/lib/chai/interface/should.js:98:35)\n    at Context. (file:///home/runner/work/vc-json-schema-test-suite/vc-json-schema-test-suite/tests/jsonschemacredential.js:97:18)"
                    }