Abstract

This document report test subject conformance for and related specifications for Streaming JSON-LD 1.1 Test Suite according to the requirements of the Evaluation and Report Language (EARL) 1.0 Schema [EARL10-SCHEMA].

This report is also available in alternate formats: JSON-LD

Status of This Document

This document is merely a W3C-internal document. It has no official standing of any kind and does not represent consensus of the W3C Membership.

This report describes the state of implementation conformance at the time of publication.

Table of Contents

Introduction

This implementation report covers the implementations of the JSON-LD specifications which have submitted test results. It is intended to be maintained by the JSON for Linking Data Community Group, or a JSON-LD Working Group if one is active. The implementation report serves two purposes:

  1. To demonstrate that there are multiple, independent implementations of the specifications. This is a prerequisite for progression of any standard to Recommendation.

  2. To catalog the known, conforming implementations and which features each supports.

There are other JSON-LD implementations which are not listed in this report, either due to not submitting tests or by not being intended as direct implementations of the specification, but instead layering on top of such libraries. For a broader list of implementations, please see the JSON-LD Website.

Instructions for submitting implementation reports

Reports should be submitted in Turtle format to Public JSON-LD WG or via a Pull Request to the w3c/json-ld-api.

Tests should be run using the test manifests defined in the Test Manifests Section.

The assumed base URI for the tests is <http://example/base/> if needed.

Include an earl:Assertion for each test, referencing the test resource from the associated manifest and the test subject being reported upon. See the example below:

  [ a earl:Assertion;
    earl:assertedBy <--your-developer-identifier-->;
    earl:subject <--your-software-identifier-->;
    earl:test <--uri-of-test-from-manifest>;
    earl:result [
      a earl:TestResult;
      earl:outcome earl:passed;
      dc:date "2016-12-26T10:18:04-08:00"^^xsd:dateTime];
    earl:mode earl:automatic ] .

The Test Subject should be defined as a doap:Project, including the name, homepage and developer(s) of the software (see DOAP). Optionally, including the project description and programming language. An example test subject description is the following:

  <> foaf:primaryTopic <--your-software-identifier--> ;
    dc:issued "2016-12-26T10:18:04-08:00"^^xsd:dateTime ;
    foaf:maker <--your-developer-identifier--> .

  <--your-software-identifier--> a doap:Project, earl:TestSubject, earl:Software ;
    doap:name          "My Cool JSON-LD Parser" ;
    doap:release [
      doap:name     "--short name wih version number--";
      doap:revision "--Software version number--" ;
      doap:created  "2020-02-19"^^xsd:date;
    ] ;
    doap:developer     <--your-developer-identifier--> ;
    doap:homepage      <--your-software-homepace--> ;
    doap:description   "--your-project-description--"@en ;
    doap:programming-language "--your-implementation-language--" .

The software developer, either an organization or one or more individuals SHOULD be referenced from doap:developer using FOAF. For example:

  <--your-developer-identifier--> a foaf:Person, earl:Assertor;
    foaf:name "--My Name--";
    foaf:homepage <--my homepage--> .

3. Test Manifests

3.1 Streaming Transform JSON-LD to RDF

JSON-LD Streaming To RDF tests.

Test JSON::LD
(Ruby)
jsonld-streaming-parser
(JavaScript)
Test t0001: Plain literal with URIs PASS PASS
Test t0002: Plain literal with CURIE from default context PASS PASS
Test t0003: Default subject is BNode PASS PASS
Test t0004: Literal with language tag PASS PASS
Test t0005: Extended character set literal PASS PASS
Test t0006: Typed literal PASS PASS
Test t0007: Tests 'a' generates rdf:type and object is implicit IRI PASS PASS
Test t0008: Test prefix defined in @context PASS PASS
Test t0009: Test using an empty suffix PASS PASS
Test t0010: Test object processing defines object PASS PASS
Test t0011: Test object processing defines object with implicit BNode PASS PASS
Test t0012: Multiple Objects for a Single Property PASS PASS
Test t0013: Creation of an empty list PASS PASS
Test t0014: Creation of a list with single element PASS PASS
Test t0015: Creation of a list with multiple elements PASS PASS
Test t0016: Empty IRI expands to resource location PASS PASS
Test t0017: Relative IRI expands relative resource location PASS PASS
Test t0018: Frag ID expands relative resource location PASS PASS
Test t0019: Test type coercion to anyURI PASS PASS
Test t0020: Test type coercion to typed literal PASS PASS
Test t0022: Test coercion of double value PASS PASS
Test t0023: Test coercion of integer value PASS PASS
Test t0024: Test coercion of boolean value PASS PASS
Test t0025: Test list coercion with single element PASS PASS
Test t0026: Test creation of multiple types PASS PASS
Test t0027: Simple named graph (Wikidata) PASS PASS
Test t0028: Simple named graph PASS PASS
Test t0029: named graph with embedded named graph FAIL PASS
Test t0030: top-level graph with string subject reference PASS PASS
Test t0031: Reverse property PASS PASS
Test t0032: @context reordering PASS PASS
Test t0033: @id reordering PASS PASS
Test t0034: context properties reordering PASS PASS
Test t0035: non-fractional numbers converted to xsd:double PASS PASS
Test t0036: Use nodeMapGeneration bnode labels PASS PASS
Test t0113: Dataset with a IRI named graph PASS PASS
Test t0114: Dataset with a IRI named graph PASS PASS
Test t0115: Dataset with a default and two named graphs PASS PASS
Test t0116: Dataset from node with embedded named graph PASS PASS
Test t0117: Dataset from node with embedded named graph (bnode) PASS PASS
Test t0119: Blank nodes with reverse properties PASS PASS
Test t0120: IRI Resolution (0) PASS PASS
Test t0121: IRI Resolution (1) PASS PASS
Test t0122: IRI Resolution (2) PASS PASS
Test t0123: IRI Resolution (3) PASS PASS
Test t0124: compact IRI as @vocab (new in JSON-LD 1.1) PASS PASS
Test t0125: IRI Resolution (5) (new in JSON-LD 1.1) PASS PASS
Test t0126: IRI Resolution (6) PASS PASS
Test t0127: IRI Resolution (7) PASS PASS
Test t0128: IRI Resolution (8) PASS PASS
Test t0129: IRI Resolution (9) PASS PASS
Test t0130: IRI Resolution (10) PASS PASS
Test t0131: IRI Resolution (11) PASS PASS
Test t0132: IRI Resolution (12) PASS PASS
Test tc001: adding new term (new in JSON-LD 1.1) PASS PASS
Test tc002: overriding a term (new in JSON-LD 1.1) PASS PASS
Test tc003: property and value with different terms mapping to the same expanded property (new in JSON-LD 1.1) PASS PASS
Test tc004: deep @context affects nested nodes (new in JSON-LD 1.1) PASS PASS
Test tc005: scoped context layers on intemediate contexts (new in JSON-LD 1.1) PASS PASS
Test tc006: adding new term (new in JSON-LD 1.1) PASS PASS
Test tc007: overriding a term (new in JSON-LD 1.1) PASS PASS
Test tc008: alias of @type (new in JSON-LD 1.1) PASS PASS
Test tc009: deep @type-scoped @context does NOT affect nested nodes (new in JSON-LD 1.1) PASS PASS
Test tc010: scoped context layers on intemediate contexts (new in JSON-LD 1.1) PASS PASS
Test tc011: orders @type terms when applying scoped contexts (new in JSON-LD 1.1) PASS PASS
Test tc012: deep property-term scoped @context in @type-scoped @context affects nested nodes (new in JSON-LD 1.1) PASS PASS
Test tc013: type maps use scoped context from type index and not scoped context from containing (new in JSON-LD 1.1) PASS PASS
Test tc014: type-scoped context nullification (new in JSON-LD 1.1) PASS PASS
Test tc015: type-scoped base (new in JSON-LD 1.1) PASS PASS
Test tc016: type-scoped vocab (new in JSON-LD 1.1) PASS PASS
Test tc017: multiple type-scoped contexts are properly reverted (new in JSON-LD 1.1) PASS PASS
Test tc018: multiple type-scoped types resolved against previous context (new in JSON-LD 1.1) PASS PASS
Test tc019: type-scoped context with multiple property scoped terms (new in JSON-LD 1.1) PASS PASS
Test tc020: type-scoped value (new in JSON-LD 1.1) PASS PASS
Test tc021: type-scoped value mix (new in JSON-LD 1.1) PASS PASS
Test tc022: type-scoped property-scoped contexts including @type:@vocab (new in JSON-LD 1.1) PASS PASS
Test tc023: composed type-scoped property-scoped contexts including @type:@vocab (new in JSON-LD 1.1) PASS PASS
Test tc024: type-scoped + property-scoped + values evaluates against previous context (new in JSON-LD 1.1) PASS PASS
Test tc025: type-scoped + graph container (new in JSON-LD 1.1) PASS PASS
Test tc026: @propagate: true on type-scoped context (new in JSON-LD 1.1) PASS PASS
Test tc027: @propagate: false on property-scoped context (new in JSON-LD 1.1) PASS PASS
Test tc028: @propagate: false on embedded context (new in JSON-LD 1.1) PASS PASS
Test tc029: @propagate is invalid in 1.0 (new in JSON-LD 1.1) PASS PASS
Test tc030: @propagate must be boolean valued (new in JSON-LD 1.1) PASS PASS
Test tc031: @context resolutions respects relative URLs. (new in JSON-LD 1.1) PASS PASS
Test tc032: Unused embedded context with error. (new in JSON-LD 1.1) PASS PASS
Test tc033: Unused context with an embedded context error. (new in JSON-LD 1.1) PASS PASS
Test tc034: Remote scoped context. (new in JSON-LD 1.1) PASS PASS
Test tc035: Term scoping with embedded contexts. (new in JSON-LD 1.1) PASS PASS
Test tdi01: Expand string using default and term directions (new in JSON-LD 1.1) PASS PASS
Test tdi02: Expand string using default and term directions and languages (new in JSON-LD 1.1) PASS PASS
Test tdi03: expand list values with @direction (new in JSON-LD 1.1) PASS PASS
Test tdi04: simple language map with term direction (new in JSON-LD 1.1) PASS PASS
Test tdi05: simple language mapwith overriding term direction (new in JSON-LD 1.1) PASS PASS
Test tdi06: simple language mapwith overriding null direction (new in JSON-LD 1.1) PASS PASS
Test tdi07: simple language map with mismatching term direction (new in JSON-LD 1.1) PASS PASS
Test tdi08: @direction must be one of ltr or rtl (new in JSON-LD 1.1) PASS PASS
Test tdi09: rdfDirection: i18n-datatype with direction and no language (new in JSON-LD 1.1, non-normative) PASS PASS
Test tdi10: rdfDirection: i18n-datatype with direction and language (new in JSON-LD 1.1, non-normative) PASS PASS
Test tdi11: rdfDirection: compound-literal with direction and no language (new in JSON-LD 1.1, non-normative) PASS PASS
Test tdi12: rdfDirection: compound-literal with direction and language (new in JSON-LD 1.1, non-normative) PASS PASS
Test te001: drop free-floating nodes PASS PASS
Test te002: basic PASS PASS
Test te003: drop null and unmapped properties PASS PASS
Test te004: optimize @set, keep empty arrays PASS PASS
Test te005: do not expand aliased @id/@type PASS PASS
Test te006: alias keywords PASS PASS
Test te007: date type-coercion PASS PASS
Test te008: @value with @language PASS PASS
Test te009: @graph with terms PASS PASS
Test te010: native types PASS PASS
Test te011: coerced @id PASS PASS
Test te012: @graph with embed PASS PASS
Test te013: expand already expanded PASS PASS
Test te015: collapse set of sets, keep empty lists PASS PASS
Test te016: context reset PASS PASS
Test te017: @graph and @id aliased PASS PASS
Test te018: override default @language PASS PASS
Test te019: remove @value = null PASS PASS
Test te020: do not remove @graph if not at top-level PASS PASS
Test te021: do not remove @graph at top-level if not only property FAIL PASS
Test te022: expand value with default language PASS PASS
Test te023: Lists and sets of properties with list/set coercion PASS PASS
Test te024: Multiple contexts PASS PASS
Test te025: Problematic IRI expansion tests PASS PASS
Test te027: Keep duplicate values in @list and @set PASS PASS
Test te028: Use @vocab in properties and @type but not in @id PASS PASS
Test te029: Relative IRIs PASS PASS
Test te030: Language maps PASS PASS
Test te031: type-coercion of native types PASS PASS
Test te032: Mapping a term to null decouples it from @vocab PASS PASS
Test te033: Using @vocab with with type-coercion PASS PASS
Test te034: Multiple properties expanding to the same IRI PASS PASS
Test te035: Language maps with @vocab, default language, and colliding property PASS PASS
Test te036: Expanding @index PASS PASS
Test te037: Expanding @reverse PASS PASS
Test te039: Using terms in a reverse-maps PASS PASS
Test te040: language and index expansion on non-objects PASS PASS
Test te041: Reset the default language PASS PASS
Test te042: Expanding reverse properties PASS PASS
Test te043: Using reverse properties inside a @reverse-container FAIL PASS
Test te044: Ensure index maps use language mapping PASS PASS
Test te045: Top-level value objects are removed PASS PASS
Test te046: Free-floating nodes are removed PASS PASS
Test te047: Remove free-floating set values and lists PASS PASS
Test te048: Terms are ignored in @id PASS PASS
Test te049: Using strings as value of a reverse property PASS PASS
Test te050: Term definitions with prefix separate from prefix definitions PASS PASS
Test te051: Expansion of keyword aliases in term definitions PASS PASS
Test te052: @vocab-relative IRIs in term definitions PASS PASS
Test te053: Expand absolute IRI with @type: @vocab PASS PASS
Test te054: Expand term with @type: @vocab PASS PASS
Test te055: Expand @vocab-relative term with @type: @vocab PASS PASS
Test te056: Use terms with @type: @vocab but not with @type: @id PASS PASS
Test te057: Expand relative IRI with @type: @vocab PASS PASS
Test te058: Expand compact IRI with @type: @vocab PASS PASS
Test te059: Reset @vocab by setting it to null PASS PASS
Test te060: Overwrite document base with @base and reset it again PASS PASS
Test te061: Coercing native types to arbitrary datatypes PASS PASS
Test te062: Various relative IRIs with with @base PASS PASS
Test te063: Expand a reverse property with an index-container PASS PASS
Test te064: Expand reverse property whose values are unlabeled blank nodes PASS PASS
Test te065: Keys that are not mapped to an IRI in a reverse-map are dropped PASS PASS
Test te066: Use @vocab to expand keys in reverse-maps PASS PASS
Test te067: prefix:://sufffix not a compact IRI PASS PASS
Test te068: _::sufffix not a compact IRI PASS PASS
Test te069: Compact IRI as term with type mapping PASS PASS
Test te070: Redefine compact IRI with itself PASS PASS
Test te072: Redefine term using @vocab, not itself PASS PASS
Test te073: @context not first property PASS PASS
Test te074: @id not first property PASS PASS
Test te075: @vocab as blank node identifier PASS PASS
Test te076: base option overrides document location PASS PASS
Test te077: expandContext option PASS PASS
Test te078: multiple reverse properties PASS PASS
Test te079: expand @graph container (new in JSON-LD 1.1) PASS PASS
Test te080: expand [@graph, @set] container (new in JSON-LD 1.1) PASS PASS
Test te081: Creates an @graph container if value is a graph (new in JSON-LD 1.1) PASS PASS
Test te082: expand [@graph, @index] container (new in JSON-LD 1.1) PASS PASS
Test te083: expand [@graph, @index, @set] container (new in JSON-LD 1.1) PASS PASS
Test te084: Do not expand [@graph, @index] container if value is a graph (new in JSON-LD 1.1) FAIL PASS
Test te085: expand [@graph, @id] container (new in JSON-LD 1.1) PASS PASS
Test te086: expand [@graph, @id, @set] container (new in JSON-LD 1.1) PASS PASS
Test te087: Do not expand [@graph, @id] container if value is a graph (new in JSON-LD 1.1) FAIL PASS
Test te088: Do not expand native values to IRIs PASS PASS
Test te089: empty @base applied to the base option PASS PASS
Test te090: relative @base overrides base option and document location PASS PASS
Test te091: relative and absolute @base overrides base option and document location PASS PASS
Test te092: Various relative IRIs as properties with with @vocab: '' (new in JSON-LD 1.1) PASS PASS
Test te093: expand @graph container (multiple objects) (new in JSON-LD 1.1) PASS PASS
Test te094: expand [@graph, @set] container (multiple objects) (new in JSON-LD 1.1) PASS PASS
Test te095: Creates an @graph container if value is a graph (multiple objects) (new in JSON-LD 1.1) PASS PASS
Test te096: expand [@graph, @index] container (multiple indexed objects) (new in JSON-LD 1.1) PASS PASS
Test te097: expand [@graph, @index, @set] container (multiple objects) (new in JSON-LD 1.1) PASS PASS
Test te098: Do not expand [@graph, @index] container if value is a graph (multiple objects) (new in JSON-LD 1.1) FAIL PASS
Test te099: expand [@graph, @id] container (multiple objects) (new in JSON-LD 1.1) PASS PASS
Test te100: expand [@graph, @id, @set] container (multiple objects) (new in JSON-LD 1.1) PASS PASS
Test te101: Do not expand [@graph, @id] container if value is a graph (multiple objects) (new in JSON-LD 1.1) FAIL PASS
Test te102: Expand @graph container if value is a graph (multiple objects) (new in JSON-LD 1.1) PASS PASS
Test te103: Expand @graph container if value is a graph (multiple graphs) (new in JSON-LD 1.1) PASS PASS
Test te104: Creates an @graph container if value is a graph (mixed graph and object) (new in JSON-LD 1.1) PASS PASS
Test te105: Do not expand [@graph, @index] container if value is a graph (mixed graph and object) (new in JSON-LD 1.1) FAIL PASS
Test te106: Do not expand [@graph, @id] container if value is a graph (mixed graph and object) (new in JSON-LD 1.1) FAIL PASS
Test te107: expand [@graph, @index] container (indexes with multiple objects) (new in JSON-LD 1.1) PASS PASS
Test te108: expand [@graph, @id] container (multiple ids and objects) (new in JSON-LD 1.1) PASS PASS
Test te109: IRI expansion of fragments including ':' PASS PASS
Test te110: Various relative IRIs as properties with with relative @vocab (new in JSON-LD 1.1) PASS PASS
Test te111: Various relative IRIs as properties with with relative @vocab itself relative to an existing vocabulary base (new in JSON-LD 1.1) PASS PASS
Test te112: Various relative IRIs as properties with with relative @vocab relative to another relative vocabulary base (new in JSON-LD 1.1) PASS PASS
Test te113: context with JavaScript Object property names PASS PASS
Test te114: Expansion allows multiple properties expanding to @type (new in JSON-LD 1.1) PASS PASS
Test te117: A term starting with a colon can expand to a different IRI (new in JSON-LD 1.1) PASS PASS
Test te118: Expanding a value staring with a colon does not treat that value as an IRI (new in JSON-LD 1.1) PASS PASS
Test te119: Ignore some terms with @, allow others. (new in JSON-LD 1.1) PASS PASS
Test te120: Ignore some values of @id with @, allow others. (new in JSON-LD 1.1) PASS PASS
Test te121: Ignore some values of @reverse with @, allow others. (new in JSON-LD 1.1) PASS PASS
Test te122: Ignore some IRIs when that start with @ when expanding. (new in JSON-LD 1.1) PASS PASS
Test te123: Value objects including invalid literal datatype IRIs are rejected (new in JSON-LD 1.1) PASS PASS
Test t0124: compact IRI as @vocab (new in JSON-LD 1.1) PASS PASS
Test t0125: IRI Resolution (5) (new in JSON-LD 1.1) PASS PASS
Test te126: A scoped context may include itself recursively (direct) (new in JSON-LD 1.1) PASS PASS
Test te127: A scoped context may include itself recursively (indirect) (new in JSON-LD 1.1) PASS PASS
Test te128: Two scoped context may include a shared context (new in JSON-LD 1.1) PASS PASS
Test te129: Base without trailing slash, without path (new in JSON-LD 1.1) PASS PASS
Test te130: Base without trailing slash, with path (new in JSON-LD 1.1) PASS PASS
Test tec01: Invalid keyword in term definition (new in JSON-LD 1.1) PASS PASS
Test tec02: Term definition on @type with empty map (new in JSON-LD 1.1) PASS PASS
Test tem01: Invalid container mapping (new in JSON-LD 1.1) PASS PASS
Test ten01: @nest MUST NOT have a string value (new in JSON-LD 1.1) PASS PASS
Test ten02: @nest MUST NOT have a boolen value (new in JSON-LD 1.1) PASS PASS
Test ten03: @nest MUST NOT have a numeric value (new in JSON-LD 1.1) PASS PASS
Test ten04: @nest MUST NOT have a value object value (new in JSON-LD 1.1) PASS PASS
Test ten05: does not allow a keyword other than @nest for the value of @nest (new in JSON-LD 1.1) PASS PASS
Test ten06: does not allow @nest with @reverse (new in JSON-LD 1.1) PASS PASS
Test tep02: processingMode json-ld-1.0 conflicts with @version: 1.1 (new in JSON-LD 1.1) PASS PASS
Test tep03: @version must be 1.1 (new in JSON-LD 1.1) PASS PASS
Test ter01: Keywords cannot be aliased to other keywords PASS PASS
Test ter04: Error dereferencing a remote context PASS PASS
Test ter05: Invalid remote context (new in JSON-LD 1.1) PASS PASS
Test ter06: Invalid local context PASS PASS
Test ter07: Invalid base IRI PASS PASS
Test ter08: Invalid vocab mapping PASS PASS
Test ter09: Invalid default language PASS PASS
Test ter10: Cyclic IRI mapping PASS PASS
Test ter11: Invalid term definition PASS PASS
Test ter12: Invalid type mapping (not a string) PASS PASS
Test ter13: Invalid type mapping (not absolute IRI) PASS PASS
Test ter14: Invalid reverse property (contains @id) PASS PASS
Test ter15: Invalid IRI mapping (@reverse not a string) PASS PASS
Test ter17: Invalid reverse property (invalid @container) PASS PASS
Test ter18: Invalid IRI mapping (@id not a string) PASS PASS
Test ter19: Invalid keyword alias (@context) PASS PASS
Test ter20: Invalid IRI mapping (no vocab mapping) PASS PASS
Test ter21: Invalid container mapping (new in JSON-LD 1.1) PASS PASS
Test ter22: Invalid language mapping PASS PASS
Test ter23: Invalid IRI mapping (relative IRI in @type) PASS PASS
Test ter25: Invalid reverse property map PASS PASS
Test ter26: Colliding keywords PASS PASS
Test ter27: Invalid @id value PASS PASS
Test ter28: Invalid type value PASS PASS
Test ter29: Invalid value object value PASS PASS
Test ter30: Invalid language-tagged string PASS PASS
Test ter31: Invalid @index value PASS PASS
Test ter33: Invalid @reverse value PASS PASS
Test ter34: Invalid reverse property value (in @reverse) PASS PASS
Test ter35: Invalid language map value PASS PASS
Test ter36: Invalid reverse property value (through coercion) PASS PASS
Test ter37: Invalid value object (unexpected keyword) PASS PASS
Test ter38: Invalid value object (@type and @language) PASS PASS
Test ter39: Invalid language-tagged value PASS PASS
Test ter40: Invalid typed value PASS PASS
Test ter41: Invalid set or list object PASS PASS
Test ter42: Keywords may not be redefined in 1.0 (new in JSON-LD 1.1) PASS PASS
Test ter43: Term definition with @id: @type (new in JSON-LD 1.1) PASS PASS
Test ter44: Redefine terms looking like compact IRIs (new in JSON-LD 1.1) PASS PASS
Test ter48: Invalid term as relative IRI (new in JSON-LD 1.1) PASS PASS
Test ter49: A relative IRI cannot be used as a prefix (new in JSON-LD 1.1) PASS PASS
Test ter50: Invalid reverse id PASS PASS
Test ter51: Invalid value object value using a value alias PASS PASS
Test ter52: Definition for the empty term PASS PASS
Test ter53: Invalid prefix value PASS PASS
Test tin01: Basic Included array (new in JSON-LD 1.1) PASS PASS
Test tin02: Basic Included object (new in JSON-LD 1.1) PASS PASS
Test tin03: Multiple properties mapping to @included are folded together (new in JSON-LD 1.1) PASS PASS
Test tin04: Included containing @included (new in JSON-LD 1.1) PASS PASS
Test tin05: Property value with @included (new in JSON-LD 1.1) PASS PASS
Test tin06: json.api example (new in JSON-LD 1.1) FAIL PASS
Test tin07: Error if @included value is a string (new in JSON-LD 1.1) PASS PASS
Test tin08: Error if @included value is a value object (new in JSON-LD 1.1) PASS PASS
Test tin09: Error if @included value is a list object (new in JSON-LD 1.1) PASS PASS
Test tjs01: Transform JSON literal (boolean true) (new in JSON-LD 1.1) PASS PASS
Test tjs02: Transform JSON literal (boolean false) (new in JSON-LD 1.1) PASS PASS
Test tjs03: Transform JSON literal (double) (new in JSON-LD 1.1) PASS PASS
Test tjs04: Transform JSON literal (double-zero) (new in JSON-LD 1.1) PASS PASS
Test tjs05: Transform JSON literal (integer) (new in JSON-LD 1.1) PASS PASS
Test tjs06: Transform JSON literal (object) (new in JSON-LD 1.1) PASS PASS
Test tjs07: Transform JSON literal (array) (new in JSON-LD 1.1) PASS PASS
Test tjs08: Transform JSON literal with array canonicalization (new in JSON-LD 1.1) PASS PASS
Test tjs09: Transform JSON literal with string canonicalization (new in JSON-LD 1.1) PASS PASS
Test tjs10: Transform JSON literal with structural canonicalization (new in JSON-LD 1.1) PASS PASS
Test tjs11: Transform JSON literal with unicode canonicalization (new in JSON-LD 1.1) PASS PASS
Test tjs12: Transform JSON literal with value canonicalization (new in JSON-LD 1.1) PASS PASS
Test tjs13: Transform JSON literal with wierd canonicalization (new in JSON-LD 1.1) PASS PASS
Test tjs14: Transform JSON literal without expanding contents (new in JSON-LD 1.1) PASS PASS
Test tjs15: Transform JSON literal aleady in expanded form (new in JSON-LD 1.1) PASS PASS
Test tjs16: Transform JSON literal aleady in expanded form with aliased keys (new in JSON-LD 1.1) PASS PASS
Test tjs17: Transform JSON literal (string) (new in JSON-LD 1.1) PASS PASS
Test tjs18: Transform JSON literal (null) (new in JSON-LD 1.1) PASS PASS
Test tjs19: Transform JSON literal with aliased @type (new in JSON-LD 1.1) PASS PASS
Test tjs20: Transform JSON literal with aliased @value (new in JSON-LD 1.1) PASS PASS
Test tjs21: Transform JSON literal with @context (new in JSON-LD 1.1) PASS PASS
Test tjs22: Transform JSON literal (null) aleady in expanded form. (new in JSON-LD 1.1) PASS PASS
Test tjs23: Transform JSON literal (empty array). (new in JSON-LD 1.1) PASS PASS
Test tli01: @list containing @list (new in JSON-LD 1.1) PASS PASS
Test tli02: @list containing empty @list (new in JSON-LD 1.1) PASS PASS
Test tli03: @list containing @list (with coercion) (new in JSON-LD 1.1) PASS PASS
Test tli04: @list containing empty @list (with coercion) (new in JSON-LD 1.1) PASS PASS
Test tli05: coerced @list containing an array (new in JSON-LD 1.1) PASS PASS
Test tli06: coerced @list containing an empty array (new in JSON-LD 1.1) PASS PASS
Test tli07: coerced @list containing deep arrays (new in JSON-LD 1.1) PASS PASS
Test tli08: coerced @list containing deep empty arrays (new in JSON-LD 1.1) PASS PASS
Test tli09: coerced @list containing multiple lists (new in JSON-LD 1.1) PASS PASS
Test tli10: coerced @list containing mixed list values (new in JSON-LD 1.1) PASS PASS
Test tm001: Adds @id to object not having an @id (new in JSON-LD 1.1) PASS PASS
Test tm002: Retains @id in object already having an @id (new in JSON-LD 1.1) PASS PASS
Test tm003: Adds @type to object not having an @type (new in JSON-LD 1.1) PASS PASS
Test tm004: Prepends @type in object already having an @type (new in JSON-LD 1.1) PASS PASS
Test tm005: Adds expanded @id to object (new in JSON-LD 1.1) PASS PASS
Test tm006: Adds vocabulary expanded @type to object (new in JSON-LD 1.1) PASS PASS
Test tm007: Adds document expanded @type to object (new in JSON-LD 1.1) PASS PASS
Test tm008: When type is in a type map (new in JSON-LD 1.1) PASS PASS
Test tm009: language map with @none (new in JSON-LD 1.1) PASS PASS
Test tm010: language map with alias of @none (new in JSON-LD 1.1) PASS PASS
Test tm011: id map with @none (new in JSON-LD 1.1) PASS PASS
Test tm012: type map with alias of @none (new in JSON-LD 1.1) PASS PASS
Test tm013: graph index map with @none (new in JSON-LD 1.1) PASS PASS
Test tm014: graph index map with alias @none (new in JSON-LD 1.1) PASS PASS
Test tm015: graph id index map with aliased @none (new in JSON-LD 1.1) PASS PASS
Test tm016: graph id index map with aliased @none (new in JSON-LD 1.1) PASS PASS
Test tm017: string value of type map expands to node reference (new in JSON-LD 1.1) PASS PASS
Test tm018: string value of type map expands to node reference with @type: @id (new in JSON-LD 1.1) PASS PASS
Test tm019: string value of type map expands to node reference with @type: @vocab (new in JSON-LD 1.1) PASS PASS
Test tm020: string value of type map must not be a literal (new in JSON-LD 1.1) PASS PASS
Test tn001: Expands input using @nest (new in JSON-LD 1.1) PASS PASS
Test tn002: Expands input using aliased @nest (new in JSON-LD 1.1) PASS PASS
Test tn003: Appends nested values when property at base and nested (new in JSON-LD 1.1) PASS PASS
Test tn004: Appends nested values from all @nest aliases in term order (new in JSON-LD 1.1) PASS PASS
Test tn005: Nested nested containers (new in JSON-LD 1.1) PASS PASS
Test tn006: Arrays of nested values (new in JSON-LD 1.1) PASS PASS
Test tn007: A nest of arrays (new in JSON-LD 1.1) PASS PASS
Test tn008: Multiple keys may mapping to @type when nesting (new in JSON-LD 1.1) PASS PASS
Test tnt01: literal_ascii_boundaries PASS PASS
Test tnt02: literal_with_UTF8_boundaries PASS PASS
Test tnt03: literal_all_controls PASS PASS
Test tnt04: literal_all_punctuation PASS PASS
Test tnt05: literal_with_squote PASS PASS
Test tnt06: literal_with_2_squotes PASS PASS
Test tnt07: literal_with_dquote PASS PASS
Test tnt08: literal_with_2_dquotes PASS PASS
Test tnt09: literal_with_REVERSE_SOLIDUS2 PASS PASS
Test tnt10: literal_with_CHARACTER_TABULATION PASS PASS
Test tnt11: literal_with_BACKSPACE PASS PASS
Test tnt12: literal_with_LINE_FEED PASS PASS
Test tnt13: literal_with_CARRIAGE_RETURN PASS PASS
Test tnt14: literal_with_FORM_FEED PASS PASS
Test tnt15: literal_with_REVERSE_SOLIDUS PASS PASS
Test tnt16: literal_with_numeric_escape4 PASS PASS
Test tp001: @version may be specified after first context (new in JSON-LD 1.1) PASS PASS
Test tp002: @version setting [1.0, 1.1, 1.0] (new in JSON-LD 1.1) PASS PASS
Test tp003: @version setting [1.1, 1.0] (new in JSON-LD 1.1) PASS PASS
Test tp004: @version setting [1.1, 1.0, 1.1] (new in JSON-LD 1.1) PASS PASS
Test tpi01: error if @version is json-ld-1.0 for property-valued index (new in JSON-LD 1.1) PASS PASS
Test tpi02: error if @container does not include @index for property-valued index (new in JSON-LD 1.1) PASS PASS
Test tpi03: error if @index is a keyword for property-valued index (new in JSON-LD 1.1) PASS PASS
Test tpi04: error if @index is not a string for property-valued index (new in JSON-LD 1.1) PASS PASS
Test tpi05: error if attempting to add property to value object for property-valued index (new in JSON-LD 1.1) PASS PASS
Test tpi06: property-valued index expands to property value, instead of @index (value) (new in JSON-LD 1.1) PASS PASS
Test tpi07: property-valued index appends to property value, instead of @index (value) (new in JSON-LD 1.1) PASS PASS
Test tpi08: property-valued index expands to property value, instead of @index (node) (new in JSON-LD 1.1) PASS PASS
Test tpi09: property-valued index appends to property value, instead of @index (node) (new in JSON-LD 1.1) PASS PASS
Test tpi10: property-valued index does not output property for @none (new in JSON-LD 1.1) PASS PASS
Test tpi11: property-valued index adds property to graph object (new in JSON-LD 1.1) PASS PASS
Test tpr01: Protect a term (new in JSON-LD 1.1) PASS PASS
Test tpr02: Set a term to not be protected (new in JSON-LD 1.1) PASS PASS
Test tpr03: Protect all terms in context (new in JSON-LD 1.1) PASS PASS
Test tpr04: Do not protect term with @protected: false (new in JSON-LD 1.1) PASS PASS
Test tpr05: Clear active context with protected terms from an embedded context (new in JSON-LD 1.1) PASS PASS
Test tpr06: Clear active context of protected terms from a term. (new in JSON-LD 1.1) PASS PASS
Test tpr08: Term with protected scoped context. (new in JSON-LD 1.1) PASS PASS
Test tpr09: Attempt to redefine term in other protected context. (new in JSON-LD 1.1) PASS PASS
Test tpr10: Simple protected and unprotected terms. (new in JSON-LD 1.1) PASS PASS
Test tpr11: Fail to override protected term. (new in JSON-LD 1.1) PASS PASS
Test tpr12: Scoped context fail to override protected term. (new in JSON-LD 1.1) PASS PASS
Test tpr13: Override unprotected term. (new in JSON-LD 1.1) PASS PASS
Test tpr14: Clear protection with null context. (new in JSON-LD 1.1) PASS PASS
Test tpr15: Clear protection with array with null context (new in JSON-LD 1.1) PASS PASS
Test tpr16: Override protected terms after null. (new in JSON-LD 1.1) PASS PASS
Test tpr17: Fail to override protected terms with type. (new in JSON-LD 1.1) PASS PASS
Test tpr18: Fail to override protected terms with type+null+ctx. (new in JSON-LD 1.1) PASS PASS
Test tpr19: Mix of protected and unprotected terms. (new in JSON-LD 1.1) PASS PASS
Test tpr20: Fail with mix of protected and unprotected terms with type+null+ctx. (new in JSON-LD 1.1) PASS PASS
Test tpr21: Fail with mix of protected and unprotected terms with type+null. (new in JSON-LD 1.1) PASS PASS
Test tpr22: Check legal overriding of type-scoped protected term from nested node. (new in JSON-LD 1.1) PASS PASS
Test tpr23: Allows redefinition of protected alias term with same definition. (new in JSON-LD 1.1) PASS PASS
Test tpr24: Allows redefinition of protected prefix term with same definition. (new in JSON-LD 1.1) PASS PASS
Test tpr25: Allows redefinition of terms with scoped contexts using same definitions. (new in JSON-LD 1.1) PASS PASS
Test tpr26: Fails on redefinition of terms with scoped contexts using different definitions. (new in JSON-LD 1.1) PASS PASS
Test tpr27: Allows redefinition of protected alias term with same definition modulo protected flag. (new in JSON-LD 1.1) PASS PASS
Test tpr28: Fails if trying to redefine a protected null term. (new in JSON-LD 1.1) PASS PASS
Test tpr29: Does not expand a Compact IRI using a non-prefix term. (new in JSON-LD 1.1) PASS PASS
Test tpr30: Keywords may be protected. (new in JSON-LD 1.1) PASS PASS
Test tpr31: Protected keyword aliases cannot be overridden. (new in JSON-LD 1.1) PASS PASS
Test tpr32: Protected @type cannot be overridden. (new in JSON-LD 1.1) PASS PASS
Test tpr33: Fails if trying to declare a keyword alias as prefix. (new in JSON-LD 1.1) PASS PASS
Test tpr34: Ignores a non-keyword term starting with '@' (new in JSON-LD 1.1) PASS PASS
Test tpr35: Ignores a non-keyword term starting with '@' (with @vocab) (new in JSON-LD 1.1) PASS PASS
Test tpr36: Ignores a term mapping to a value in the form of a keyword. (new in JSON-LD 1.1) PASS PASS
Test tpr37: Ignores a term mapping to a value in the form of a keyword (with @vocab). (new in JSON-LD 1.1) PASS PASS
Test tpr38: Ignores a term mapping to a value in the form of a keyword (@reverse). (new in JSON-LD 1.1) PASS PASS
Test tpr39: Ignores a term mapping to a value in the form of a keyword (@reverse with @vocab). (new in JSON-LD 1.1) PASS PASS
Test tpr40: Protected terms and property-scoped contexts (new in JSON-LD 1.1) PASS PASS
Test trt01: Representing numbers >= 1e21 (new in JSON-LD 1.1) PASS PASS
Test tse01: @context must come before @id PASS PASS
Test tse02: @context must come before properties PASS PASS
Test tse03: @context must come before @type with context PASS PASS
Test tse04: @type with context must come before @id PASS PASS
Test tse05: @type with context must come before properties PASS PASS
Test tse06: Embedded @context must come before @id PASS PASS
Test tse07: Embedded @context must come before properties PASS PASS
Test tse08: @type must come before @id PASS PASS
Test tse09: @type must come before properties PASS PASS
Test tso01: @import is invalid in 1.0. (new in JSON-LD 1.1) PASS PASS
Test tso02: @import must be a string (new in JSON-LD 1.1) PASS PASS
Test tso03: @import overflow (new in JSON-LD 1.1) PASS PASS
Test tso05: @propagate: true on type-scoped context with @import (new in JSON-LD 1.1) PASS PASS
Test tso06: @propagate: false on property-scoped context with @import (new in JSON-LD 1.1) PASS PASS
Test tso07: Protect all terms in sourced context (new in JSON-LD 1.1) PASS PASS
Test tso08: Override term defined in sourced context (new in JSON-LD 1.1) PASS PASS
Test tso09: Override @vocab defined in sourced context (new in JSON-LD 1.1) PASS PASS
Test tso10: Protect terms in sourced context (new in JSON-LD 1.1) PASS PASS
Test tso11: Override protected terms in sourced context (new in JSON-LD 1.1) PASS PASS
Test tso12: @import may not be used in an imported context. (new in JSON-LD 1.1) PASS PASS
Test tso13: @import can only reference a single context (new in JSON-LD 1.1) PASS PASS
Test ttn01: @type: @none is illegal in 1.0. (new in JSON-LD 1.1) PASS PASS
Test ttn02: @type: @none expands strings as value objects (new in JSON-LD 1.1) PASS PASS
Test tv001: @context, @id and properties PASS PASS
Test tv002: @context, blank @id and properties PASS PASS
Test tv003: @context, implicit @id and properties PASS PASS
Test tv004: Nested nodes PASS PASS
Test tv005: Nested nodes and embedded context PASS PASS
Test tv006: @context, @type-scoped context, @id, and other properties PASS PASS
Test tv008: No @context and @id PASS PASS
Test tv009: Deeply nested nodes PASS PASS
Test tv010: Deeply nested nodes without @id PASS PASS
Test tv011: @id after properties PASS PASS
Test tv012: No @id after properties PASS PASS
Test tv013: @id after properties in nested node PASS PASS
Test tv014: No @id after properties in nested node PASS PASS
Test tv015: @id after properties in nested node with outer @id after node PASS PASS
Test tv016: No @id after properties in nested node and no outer @id PASS PASS
Test tv017: @id after @graph and properties PASS PASS
Test tv018: No @id after @graph and properties PASS PASS
Test tv019: @id after @graph and properties and late inner @id PASS PASS
Test tv020: No @id after @graph and properties and late inner @id PASS PASS
Test tv021: @id after @graph and properties and no @id PASS PASS
Test tv022: No @id after @graph and properties and no @id PASS PASS
Test twf01: Triples including invalid subject IRIs are rejected (new in JSON-LD 1.1) PASS PASS
Test twf02: Triples including invalid predicate IRIs are rejected (new in JSON-LD 1.1) PASS PASS
Test twf03: Triples including invalid object IRIs are rejected (new in JSON-LD 1.1) PASS PASS
Test twf04: Triples including invalid type IRIs are rejected (new in JSON-LD 1.1) PASS PASS
Test twf05: Triples including invalid language tags are rejected (new in JSON-LD 1.1) PASS PASS
Test twf07: Triples including invalid graph name IRIs are rejected (new in JSON-LD 1.1) PASS PASS
Percentage passed out of 472 Tests 97.9% 100.0%

A. Test Subjects

This report was tested using the following test subjects:

A.1 JSON::LD
Description
RDF.rb extension for parsing/serializing JSON-LD data.
Release
3.1.4
Programming Language
Ruby
Home Page
https://github.com/ruby-rdf/json-ld/
Developer
Test Suite Compliance
Streaming Transform JSON-LD to RDF 462/472 (97.9%)
A.2 jsonld-streaming-parser
Description
Streaming JSON-LD parser
Release
2.0.0
Programming Language
JavaScript
Home Page
https://github.com/rubensworks/jsonld-streaming-parser.js#readme
Developer
Test Suite Compliance
Streaming Transform JSON-LD to RDF 472/472 (100.0%)

B. Individual Test Results

Individual test results used to construct this report are available here:

C. Report Generation Software

This report generated by earl-report version 0.4.9 an Unlicense. Ruby application. More information is available at https://github.com/gkellogg/earl-report .

This software is provided by Gregg Kellogg in hopes that it might make the lives of conformance testers easier.