Abstract

This document report test subject conformance for and related specifications for CSVW [tabular-metadata] [tabular-data-model] [csv2json] [csv2rdf] according to the requirements of the Evaluation and Report Language (EARL) 1.0 Schema [EARL10-SCHEMA].

This report is also available in alternate formats: Turtle and 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. Post-publication updates to this report are available here.

Table of Contents

1. Instructions for submitting implementation reports

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

Reports should be submitted in Turtle format to public-csvw-wg@w3.org and include an earl:Assertion for each test, referencing the test resource from the associated manifest and the test subject being reported upon. An example test entry is be the following:

  [ a earl:Assertion;
    earl:assertedBy <http://greggkellogg.net/foaf#me>;
    earl:subject <http://rubygems.org/gems/rdf-tabular>;
    earl:test <http://www.w3.org/2013/csvw/tests/manifest-rdf#test001>;
    earl:result [
      a earl:TestResult;
      earl:outcome earl:passed;
      dc:date "2015-06-18T18:19:01-07: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:

  <http://rubygems.org/gems/rdf-tabular> a doap:Project, earl:TestSubject, earl:Software ;
    doap:name          "RDF::Tabular" ;
    doap:homepage      <http://ruby-rdf.github.com/rdf-tabular> ;
    doap:license       <http://creativecommons.org/licenses/publicdomain/> ;
    doap:description   "RDF::Tabular processes tabular data with metadata creating RDF or JSON output."@en ;
    doap:programming-language "Ruby" ;
    doap:developer     <http://greggkellogg.net/foaf#me> ;
    dc:title           "RDF::Tabular" ;
    dc:date            "2015-01-05"^^xsd:date ;
    dc:creator         <http://greggkellogg.net/foaf#me> ;

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

  <http://greggkellogg.net/foaf#me> a foaf:Person, earl:Assertor;
    foaf:name "Gregg Kellogg";
    foaf:title "Implementor";
    foaf:homepage <http://greggkellogg.net/> .

See CSVW Test Cases for more information.

2. Test Manifests

2.1 CSVW JSON tests

Tests transformation of CSV to JSON.

Test csv2json RDF::Tabular
Test 001: Simple table PASS PASS
Test 005: Identifier references PASS PASS
Test 006: No identifiers PASS PASS
Test 007: Joined table with unique identifiers PASS PASS
Test 008: Microsyntax - internal field separator PASS PASS
Test 009: Microsyntax - formatted time PASS PASS
Test 010: Country-codes-and-names example PASS PASS
Test 011: tree-ops example with metadata PASS PASS
Test 012: tree-ops example with directory metadata PASS PASS
Test 013: tree-ops example from user metadata PASS PASS
Test 014: tree-ops example with linked metadata PASS PASS
Test 015: tree-ops example with user and directory metadata PASS PASS
Test 016: tree-ops example with linked and directory metadata PASS PASS
Test 017: tree-ops example with file and directory metadata PASS PASS
Test 018: tree-ops example with user, file and directory metadata PASS PASS
Test 023: dialect: header=false PASS PASS
Test 027: tree-ops minimal output PASS PASS
Test 028: countries.csv example PASS PASS
Test 029: countries.csv minimal PASS PASS
Test 030: countries.json example PASS PASS
Test 031: countries.json example minimal output PASS PASS
Test 032: events-listing.csv example PASS PASS
Test 033: events-listing.csv minimal output PASS PASS
Test 034: roles example PASS PASS
Test 035: roles minimal PASS PASS
Test 036: tree-ops-ext example PASS PASS
Test 037: tree-ops-ext minimal PASS PASS
Test 038: inherited properties propagation PASS PASS
Test 039: valid inherited properties PASS PASS
Test 040: invalid null PASS PASS
Test 041: invalid lang PASS PASS
Test 042: invalid textDirection PASS PASS
Test 043: invalid separator PASS PASS
Test 044: invalid ordered PASS PASS
Test 045: invalid default PASS PASS
Test 046: invalid dataype PASS PASS
Test 047: invalid aboutUrl PASS PASS
Test 048: invalid propertyUrl PASS PASS
Test 049: invalid valueUrl PASS PASS
Test 059: dialect: invalid commentPrefix PASS PASS
Test 060: dialect: invalid delimiter PASS PASS
Test 061: dialect: invalid doubleQuote PASS PASS
Test 062: dialect: invalid encoding PASS PASS
Test 063: dialect: invalid header PASS PASS
Test 065: dialect: invalid headerRowCount PASS PASS
Test 066: dialect: invalid lineTerminators PASS PASS
Test 067: dialect: invalid quoteChar PASS PASS
Test 068: dialect: invalid skipBlankRows PASS PASS
Test 069: dialect: invalid skipColumns PASS PASS
Test 070: dialect: invalid skipInitialSpace PASS PASS
Test 071: dialect: invalid skipRows PASS PASS
Test 072: dialect: invalid trim PASS PASS
Test 073: invalid @language PASS PASS
Test 074: empty tables PASS PASS
Test 075: invalid tableGroup tableDirection PASS PASS
Test 076: invalid table tableDirection PASS PASS
Test 077: invalid tableGroup @id PASS PASS
Test 078: invalid table @id PASS PASS
Test 079: invalid schema @id PASS PASS
Test 080: invalid column @id PASS PASS
Test 081: invalid dialect @id PASS PASS
Test 082: invalid template @id PASS PASS
Test 083: invalid tableGroup @type PASS PASS
Test 084: invalid table @type PASS PASS
Test 085: invalid schema @type PASS PASS
Test 086: invalid column @type PASS PASS
Test 087: invalid dialect @type PASS PASS
Test 088: invalid transformation @type PASS PASS
Test 089: missing tables in TableGroup PASS PASS
Test 090: missing url in Table PASS PASS
Test 093: undefined properties PASS PASS
Test 095: inconsistent array values: transformations PASS PASS
Test 097: inconsistent array values: foreignKeys PASS PASS
Test 098: inconsistent array values: tables PASS PASS
Test 099: inconsistent array values: transformations PASS PASS
Test 100: inconsistent array values: columns PASS PASS
Test 101: inconsistent array values: foreignKeys PASS PASS
Test 102: inconsistent link values: @id PASS PASS
Test 103: inconsistent link values: url PASS PASS
Test 104: invalid columnReference PASS PASS
Test 105: invalid primaryKey PASS PASS
Test 106: invalid dialect PASS PASS
Test 107: invalid tableSchema PASS PASS
Test 108: invalid reference PASS PASS
Test 109: titles with invalid language PASS PASS
Test 110: titles with non-string values PASS PASS
Test 111: titles with invalid value PASS PASS
Test 112: titles with non-string array values PASS PASS
Test 113: invalid suppressOutput PASS PASS
Test 114: invalid name PASS PASS
Test 115: invalid virtual PASS PASS
Test 116: file-metadata with query component not found PASS PASS
Test 117: file-metadata not referencing file PASS PASS
Test 118: directory-metadata with query component PASS PASS
Test 119: directory-metadata not referencing file PASS PASS
Test 120: link-metadata not referencing file PASS PASS
Test 121: user-metadata not referencing file PASS PASS
Test 122: link-metadata not describing file uses file-metadata PASS PASS
Test 123: file-metadata not describing file uses directory-metadata PASS PASS
Test 124: metadata with columns not matching csv titles PASS PASS
Test 125: required column with empty cell PASS PASS
Test 126: required column with cell matching null PASS PASS
Test 127: incompatible table PASS PASS
Test 128: duplicate column names PASS PASS
Test 129: columnn name as integer PASS PASS
Test 130: invalid column name PASS PASS
Test 131: invalid column name PASS PASS
Test 132: name annotation from title percent encoded PASS PASS
Test 133: virtual before non-virtual PASS PASS
Test 134: context in common property PASS PASS
Test 135: @list value PASS PASS
Test 136: @set value PASS PASS
Test 137: @type out of range (as datatype) PASS PASS
Test 138: @type out of range (as node type) PASS PASS
Test 139: @type out of range (as node type) - string PASS PASS
Test 140: @type out of range (as node type) - integer PASS PASS
Test 141: @id out of range (as node type) - bnode PASS PASS
Test 142: @value with @language and @type PASS PASS
Test 143: @value with extra properties PASS PASS
Test 144: @language outside of @value PASS PASS
Test 146: Invalid faux-keyword PASS PASS
Test 147: title incompatible with title on case PASS PASS
Test 148: title incompatible with title on language PASS PASS
Test 149: title compatible with title on less specific language PASS PASS
Test 150: non-builtin datatype (datatype value) PASS PASS
Test 151: non-builtin datatype (base value) PASS PASS
Test 152: string format (valid combinations) PASS PASS
Test 153: string format (bad format string) PASS PASS
Test 154: string format (value not matching format) PASS PASS
Test 155: number format (valid combinations) PASS PASS
Test 156: number format (bad format string) PASS PASS
Test 157: number format (value not matching format) PASS PASS
Test 158: number format (valid combinations) PASS PASS
Test 159: number format (bad pattern format string) PASS PASS
Test 160: number format (not matching values with pattern) PASS PASS
Test 161: number format (not matching values without pattern) PASS PASS
Test 162: numeric format (consecutive groupChar) PASS PASS
Test 163: integer datatype with decimalChar PASS PASS
Test 164: decimal datatype with exponent PASS PASS
Test 165: decimal type with NaN PASS PASS
Test 166: decimal type with INF PASS PASS
Test 167: decimal type with -INF PASS PASS
Test 168: decimal with implicit groupChar PASS PASS
Test 169: invalid decimal PASS PASS
Test 170: decimal with percent PASS PASS
Test 171: decimal with per-mille PASS PASS
Test 172: invalid byte PASS PASS
Test 173: invald unsignedLong PASS PASS
Test 174: invalid unsignedShort PASS PASS
Test 175: invalid unsignedByte PASS PASS
Test 176: invalid positiveInteger PASS PASS
Test 177: invalid negativeInteger PASS PASS
Test 178: invalid nonPositiveInteger PASS PASS
Test 179: invalid nonNegativeInteger PASS PASS
Test 180: invalid double PASS PASS
Test 181: invalid number PASS PASS
Test 182: invalid float PASS PASS
Test 183: boolean format (valid combinations) PASS PASS
Test 184: boolean format (bad format string) PASS PASS
Test 185: boolean format (value not matching format) PASS PASS
Test 186: boolean format (not matching datatype) PASS PASS
Test 187: date format (valid native combinations) PASS PASS
Test 188: date format (valid date combinations with formats) PASS PASS
Test 189: date format (valid time combinations with formats) PASS PASS
Test 190: date format (valid dateTime combinations with formats) PASS PASS
Test 191: date format (bad format string) PASS PASS
Test 192: date format (value not matching format) PASS PASS
Test 193: duration format (valid combinations) PASS PASS
Test 194: duration format (value not matching format) PASS PASS
Test 195: values with matching length PASS PASS
Test 196: values with wrong length PASS PASS
Test 197: values with wrong maxLength PASS PASS
Test 198: values with wrong minLength PASS PASS
Test 199: length < minLength PASS PASS
Test 200: length > maxLength PASS PASS
Test 201: length on date PASS PASS
Test 202: float matching constraints PASS PASS
Test 203: float value constraint not matching minimum PASS PASS
Test 204: float value constraint not matching maximum PASS PASS
Test 205: float value constraint not matching minInclusive PASS PASS
Test 206: float value constraint not matching minExclusive PASS PASS
Test 207: float value constraint not matching maxInclusive PASS PASS
Test 208: float value constraint not matching maxExclusive PASS PASS
Test 209: date matching constraints PASS PASS
Test 210: date value constraint not matching minimum PASS PASS
Test 211: date value constraint not matching maximum PASS PASS
Test 212: date value constraint not matching minInclusive PASS PASS
Test 213: date value constraint not matching minExclusive PASS PASS
Test 214: date value constraint not matching maxInclusive PASS PASS
Test 215: date value constraint not matching maxExclusive PASS PASS
Test 216: minInclusive and minExclusive PASS PASS
Test 217: maxInclusive and maxExclusive PASS PASS
Test 218: maxInclusive < minInclusive PASS PASS
Test 219: maxExclusive = minInclusive PASS PASS
Test 220: maxExclusive < minExclusive PASS PASS
Test 221: maxInclusive = minExclusive PASS PASS
Test 222: string datatype with minimum PASS PASS
Test 223: string datatype with maxium PASS PASS
Test 224: string datatype with minInclusive PASS PASS
Test 225: string datatype with maxInclusive PASS PASS
Test 226: string datatype with minExclusive PASS PASS
Test 227: string datatype with maxExclusive PASS PASS
Test 228: length with separator PASS PASS
Test 229: matching minLength with separator PASS PASS
Test 230: failing minLength with separator PASS PASS
Test 231: single column primaryKey success PASS PASS
Test 232: single column primaryKey violation PASS PASS
Test 233: multiple column primaryKey success PASS PASS
Test 234: multiple column primaryKey violation PASS PASS
Test 235: rowTitles on one column PASS PASS
Test 236: rowTitles on multiple columns PASS PASS
Test 237: rowTitles on one column (minimal) PASS PASS
Test 238: datatype value an absolute URL PASS PASS
Test 242: datatype @id an absolute URL PASS PASS
Test 243: invalid datatype @id PASS PASS
Test 244: invalid datatype @id PASS PASS
Test 245: date format (valid time combinations with formats and milliseconds) PASS PASS
Test 246: date format (valid dateTime combinations with formats and milliseconds) PASS PASS
Test 247: date format (extra milliseconds) PASS PASS
Test 248: Unicode in non-Normalized form PASS PASS
Test 251: missing source reference PASS PASS
Test 252: missing destination reference column PASS PASS
Test 253: missing destination table PASS PASS
Test 259: tree-ops example with csvm.json (w3.org/.well-known/csvm) PASS PASS
Test 260: tree-ops example with {+url}.json (w3.org/.well-known/csvm) PASS PASS
Test 261: maxLength < minLength PASS PASS
Test 263: @type on a common property can be a built-in type PASS PASS
Test 264: @type on a common property can be a CURIE if the prefix is one of the built-in ones PASS PASS
Test 266: `null` contains an array of (valid) string & (invalid) numeric values PASS PASS
Test 267: @id on datatype is invalid (eg starts with _:) PASS PASS
Test 268: `base` missing on datatype (defaults to string) PASS PASS
Test 269: `format` for a boolean datatype is a string but in the wrong form (eg YN) PASS PASS
Test 270: transformation includes an invalid property (eg foo) PASS PASS
Test 271: foreign key includes an invalid property (eg `dc:description`) PASS PASS
Test 272: foreign key reference includes an invalid property (eg `dc:description`) PASS PASS
Test 273: `@base` set in `@context` overriding eg CSV location PASS PASS
Test 274: `@context` object includes properties other than `@base` and `@language` PASS PASS
Test 275: property acceptable on column appears on table group PASS PASS
Test 276: property acceptable on column appears on table PASS PASS
Test 277: property acceptable on table appears on column PASS PASS
Test 278: CSV has more headers than there are columns in the metadata PASS PASS
Test 279: duration not matching xsd pattern PASS PASS
Test 280: dayTimeDuration not matching xsd pattern PASS PASS
Test 281: yearMonthDuration not matching xsd pattern PASS PASS
Test 282: valid number patterns PASS PASS
Test 283: valid number patterns (signs and percent/permille) PASS PASS
Test 284: valid number patterns (grouping) PASS PASS
Test 285: valid number patterns (fractional grouping) PASS PASS
Test 286: invalid ##0 1,234 PASS PASS
Test 287: invalid ##0 123.4 PASS PASS
Test 288: invalid #,#00 1 PASS PASS
Test 289: invalid #,#00 1234 PASS PASS
Test 290: invalid #,#00 12,34 PASS PASS
Test 291: invalid #,#00 12,34,567 PASS PASS
Test 292: invalid #,##,#00 1 PASS PASS
Test 293: invalid #,##,#00 1234 PASS PASS
Test 294: invalid #,##,#00 12,34 PASS PASS
Test 295: invalid #,##,#00 1,234,567 PASS PASS
Test 296: invalid #0.# 12.34 PASS PASS
Test 297: invalid #0.# 1,234.5 PASS PASS
Test 298: invalid #0.0 1 PASS PASS
Test 299: invalid #0.0 12.34 PASS PASS
Test 300: invalid #0.0# 1 PASS PASS
Test 301: invalid #0.0# 12.345 PASS PASS
Test 302: invalid #0.0#,# 1 PASS PASS
Test 303: invalid #0.0#,# 12.345 PASS PASS
Test 304: invalid #0.0#,# 12.34,567 PASS PASS
Test 305: multiple values with same subject and property (unordered) PASS PASS
Test 306: multiple values with same subject and property (ordered) PASS PASS
Test 307: multiple values with same subject and property (ordered and unordered) PASS PASS
Percentage passed out of 270 Tests 100.0% 100.0%

2.2 CSVW RDF Tests

Tests transformation of CSV to RDF.

Test csv2rdf rcsvw RDF::Tabular
Test 001: Simple table PASS PASS PASS
Test 005: Identifier references PASS PASS PASS
Test 006: No identifiers PASS PASS PASS
Test 007: Joined table with unique identifiers PASS PASS PASS
Test 008: Microsyntax - internal field separator PASS PASS PASS
Test 009: Microsyntax - formatted time PASS PASS PASS
Test 010: Country-codes-and-names example PASS PASS PASS
Test 011: tree-ops example with metadata PASS PASS PASS
Test 012: tree-ops example with directory metadata PASS PASS PASS
Test 013: tree-ops example from user metadata PASS PASS PASS
Test 014: tree-ops example with linked metadata PASS PASS PASS
Test 015: tree-ops example with user and directory metadata PASS PASS PASS
Test 016: tree-ops example with linked and directory metadata PASS PASS PASS
Test 017: tree-ops example with file and directory metadata PASS PASS PASS
Test 018: tree-ops example with user, file and directory metadata PASS PASS PASS
Test 023: dialect: header=false PASS PASS PASS
Test 027: tree-ops minimal output PASS PASS PASS
Test 028: countries.csv example PASS PASS PASS
Test 029: countries.csv minimal PASS PASS PASS
Test 030: countries.json example PASS UNTESTED PASS
Test 031: countries.json example minimal output PASS UNTESTED PASS
Test 032: events-listing.csv example PASS UNTESTED PASS
Test 033: events-listing.csv minimal output PASS UNTESTED PASS
Test 034: roles example PASS UNTESTED PASS
Test 035: roles minimal PASS UNTESTED PASS
Test 036: tree-ops-ext example PASS UNTESTED PASS
Test 037: tree-ops-ext minimal PASS UNTESTED PASS
Test 038: inherited properties propagation PASS UNTESTED PASS
Test 039: valid inherited properties PASS UNTESTED PASS
Test 040: invalid null PASS UNTESTED PASS
Test 041: invalid lang PASS UNTESTED PASS
Test 042: invalid textDirection PASS UNTESTED PASS
Test 043: invalid separator PASS UNTESTED PASS
Test 044: invalid ordered PASS UNTESTED PASS
Test 045: invalid default PASS UNTESTED PASS
Test 046: invalid dataype PASS UNTESTED PASS
Test 047: invalid aboutUrl PASS UNTESTED PASS
Test 048: invalid propertyUrl PASS UNTESTED PASS
Test 049: invalid valueUrl PASS UNTESTED PASS
Test 059: dialect: invalid commentPrefix PASS UNTESTED PASS
Test 060: dialect: invalid delimiter PASS UNTESTED PASS
Test 061: dialect: invalid doubleQuote PASS UNTESTED PASS
Test 062: dialect: invalid encoding PASS UNTESTED PASS
Test 063: dialect: invalid header PASS UNTESTED PASS
Test 065: dialect: invalid headerRowCount PASS UNTESTED PASS
Test 066: dialect: invalid lineTerminators PASS UNTESTED PASS
Test 067: dialect: invalid quoteChar PASS UNTESTED PASS
Test 068: dialect: invalid skipBlankRows PASS UNTESTED PASS
Test 069: dialect: invalid skipColumns PASS UNTESTED PASS
Test 070: dialect: invalid skipInitialSpace PASS UNTESTED PASS
Test 071: dialect: invalid skipRows PASS UNTESTED PASS
Test 072: dialect: invalid trim PASS UNTESTED PASS
Test 073: invalid @language PASS UNTESTED PASS
Test 074: empty tables PASS UNTESTED PASS
Test 075: invalid tableGroup tableDirection PASS UNTESTED PASS
Test 076: invalid table tableDirection PASS UNTESTED PASS
Test 077: invalid tableGroup @id PASS UNTESTED PASS
Test 078: invalid table @id PASS UNTESTED PASS
Test 079: invalid schema @id PASS UNTESTED PASS
Test 080: invalid column @id PASS UNTESTED PASS
Test 081: invalid dialect @id PASS UNTESTED PASS
Test 082: invalid template @id PASS UNTESTED PASS
Test 083: invalid tableGroup @type PASS UNTESTED PASS
Test 084: invalid table @type PASS UNTESTED PASS
Test 085: invalid schema @type PASS UNTESTED PASS
Test 086: invalid column @type PASS UNTESTED PASS
Test 087: invalid dialect @type PASS UNTESTED PASS
Test 088: invalid transformation @type PASS UNTESTED PASS
Test 089: missing tables in TableGroup PASS UNTESTED PASS
Test 090: missing url in Table PASS UNTESTED PASS
Test 093: undefined properties PASS UNTESTED PASS
Test 095: inconsistent array values: transformations PASS UNTESTED PASS
Test 097: inconsistent array values: foreignKeys PASS UNTESTED PASS
Test 098: inconsistent array values: tables PASS UNTESTED PASS
Test 099: inconsistent array values: transformations PASS UNTESTED PASS
Test 100: inconsistent array values: columns PASS UNTESTED PASS
Test 101: inconsistent array values: foreignKeys PASS UNTESTED PASS
Test 102: inconsistent link values: @id PASS UNTESTED PASS
Test 103: inconsistent link values: url PASS UNTESTED PASS
Test 104: invalid columnReference PASS UNTESTED PASS
Test 105: invalid primaryKey PASS UNTESTED PASS
Test 106: invalid dialect PASS UNTESTED PASS
Test 107: invalid tableSchema PASS UNTESTED PASS
Test 108: invalid reference PASS UNTESTED PASS
Test 109: titles with invalid language PASS UNTESTED PASS
Test 110: titles with non-string values PASS UNTESTED PASS
Test 111: titles with invalid value PASS UNTESTED PASS
Test 112: titles with non-string array values PASS UNTESTED PASS
Test 113: invalid suppressOutput PASS UNTESTED PASS
Test 114: invalid name PASS UNTESTED PASS
Test 115: invalid virtual PASS UNTESTED PASS
Test 116: file-metadata with query component not found PASS UNTESTED PASS
Test 117: file-metadata not referencing file PASS UNTESTED PASS
Test 118: directory-metadata with query component PASS UNTESTED PASS
Test 119: directory-metadata not referencing file PASS UNTESTED PASS
Test 120: link-metadata not referencing file PASS UNTESTED PASS
Test 121: user-metadata not referencing file PASS UNTESTED PASS
Test 122: link-metadata not describing file uses file-metadata PASS UNTESTED PASS
Test 123: file-metadata not describing file uses directory-metadata PASS UNTESTED PASS
Test 124: metadata with columns not matching csv titles PASS UNTESTED PASS
Test 125: required column with empty cell PASS UNTESTED PASS
Test 126: required column with cell matching null PASS UNTESTED PASS
Test 127: incompatible table PASS UNTESTED PASS
Test 128: duplicate column names PASS UNTESTED PASS
Test 129: columnn name as integer PASS UNTESTED PASS
Test 130: invalid column name PASS UNTESTED PASS
Test 131: invalid column name PASS UNTESTED PASS
Test 132: name annotation from title percent encoded PASS UNTESTED PASS
Test 133: virtual before non-virtual PASS UNTESTED PASS
Test 134: context in common property PASS UNTESTED PASS
Test 135: @list value PASS UNTESTED PASS
Test 136: @set value PASS UNTESTED PASS
Test 137: @type out of range (as datatype) PASS UNTESTED PASS
Test 138: @type out of range (as node type) PASS UNTESTED PASS
Test 139: @type out of range (as node type) - string PASS UNTESTED PASS
Test 140: @type out of range (as node type) - integer PASS UNTESTED PASS
Test 141: @id out of range (as node type) - bnode PASS UNTESTED PASS
Test 142: @value with @language and @type PASS UNTESTED PASS
Test 143: @value with extra properties PASS UNTESTED PASS
Test 144: @language outside of @value PASS UNTESTED PASS
Test 146: Invalid faux-keyword PASS UNTESTED PASS
Test 147: title incompatible with title on case PASS UNTESTED PASS
Test 148: title incompatible with title on language PASS UNTESTED PASS
Test 149: title compatible with title on less specific language PASS UNTESTED PASS
Test 150: non-builtin datatype (datatype value) PASS UNTESTED PASS
Test 151: non-builtin datatype (base value) PASS UNTESTED PASS
Test 152: string format (valid combinations) PASS UNTESTED PASS
Test 153: string format (bad format string) PASS UNTESTED PASS
Test 154: string format (value not matching format) PASS UNTESTED PASS
Test 155: number format (valid combinations) PASS UNTESTED PASS
Test 156: number format (bad format string) PASS UNTESTED PASS
Test 157: number format (value not matching format) PASS UNTESTED PASS
Test 158: number format (valid combinations) PASS UNTESTED PASS
Test 159: number format (bad pattern format string) PASS UNTESTED PASS
Test 160: number format (not matching values with pattern) PASS UNTESTED PASS
Test 161: number format (not matching values without pattern) PASS UNTESTED PASS
Test 162: numeric format (consecutive groupChar) PASS UNTESTED PASS
Test 163: integer datatype with decimalChar PASS UNTESTED PASS
Test 164: decimal datatype with exponent PASS UNTESTED PASS
Test 165: decimal type with NaN PASS UNTESTED PASS
Test 166: decimal type with INF PASS UNTESTED PASS
Test 167: decimal type with -INF PASS UNTESTED PASS
Test 168: decimal with implicit groupChar PASS UNTESTED PASS
Test 169: invalid decimal PASS UNTESTED PASS
Test 170: decimal with percent PASS UNTESTED PASS
Test 171: decimal with per-mille PASS UNTESTED PASS
Test 172: invalid byte PASS UNTESTED PASS
Test 173: invald unsignedLong PASS UNTESTED PASS
Test 174: invalid unsignedShort PASS UNTESTED PASS
Test 175: invalid unsignedByte PASS UNTESTED PASS
Test 176: invalid positiveInteger PASS UNTESTED PASS
Test 177: invalid negativeInteger PASS UNTESTED PASS
Test 178: invalid nonPositiveInteger PASS UNTESTED PASS
Test 179: invalid nonNegativeInteger PASS UNTESTED PASS
Test 180: invalid double PASS UNTESTED PASS
Test 181: invalid number PASS UNTESTED PASS
Test 182: invalid float PASS UNTESTED PASS
Test 183: boolean format (valid combinations) PASS UNTESTED PASS
Test 184: boolean format (bad format string) PASS UNTESTED PASS
Test 185: boolean format (value not matching format) PASS UNTESTED PASS
Test 186: boolean format (not matching datatype) PASS UNTESTED PASS
Test 187: date format (valid native combinations) PASS UNTESTED PASS
Test 188: date format (valid date combinations with formats) PASS UNTESTED PASS
Test 189: date format (valid time combinations with formats) PASS UNTESTED PASS
Test 190: date format (valid dateTime combinations with formats) PASS UNTESTED PASS
Test 191: date format (bad format string) PASS UNTESTED PASS
Test 192: date format (value not matching format) PASS UNTESTED PASS
Test 193: duration format (valid combinations) PASS UNTESTED PASS
Test 194: duration format (value not matching format) PASS UNTESTED PASS
Test 195: values with matching length PASS UNTESTED PASS
Test 196: values with wrong length PASS UNTESTED PASS
Test 197: values with wrong maxLength PASS UNTESTED PASS
Test 198: values with wrong minLength PASS UNTESTED PASS
Test 199: length < minLength PASS UNTESTED PASS
Test 200: length > maxLength PASS UNTESTED PASS
Test 201: length on date PASS UNTESTED PASS
Test 202: float matching constraints PASS UNTESTED PASS
Test 203: float value constraint not matching minimum PASS UNTESTED PASS
Test 204: float value constraint not matching maximum PASS UNTESTED PASS
Test 205: float value constraint not matching minInclusive PASS UNTESTED PASS
Test 206: float value constraint not matching minExclusive PASS UNTESTED PASS
Test 207: float value constraint not matching maxInclusive PASS UNTESTED PASS
Test 208: float value constraint not matching maxExclusive PASS UNTESTED PASS
Test 209: date matching constraints PASS UNTESTED PASS
Test 210: date value constraint not matching minimum PASS UNTESTED PASS
Test 211: date value constraint not matching maximum PASS UNTESTED PASS
Test 212: date value constraint not matching minInclusive PASS UNTESTED PASS
Test 213: date value constraint not matching minExclusive PASS UNTESTED PASS
Test 214: date value constraint not matching maxInclusive PASS UNTESTED PASS
Test 215: date value constraint not matching maxExclusive PASS UNTESTED PASS
Test 216: minInclusive and minExclusive PASS UNTESTED PASS
Test 217: maxInclusive and maxExclusive PASS UNTESTED PASS
Test 218: maxInclusive < minInclusive PASS UNTESTED PASS
Test 219: maxExclusive = minInclusive PASS UNTESTED PASS
Test 220: maxExclusive < minExclusive PASS UNTESTED PASS
Test 221: maxInclusive = minExclusive PASS UNTESTED PASS
Test 222: string datatype with minimum PASS UNTESTED PASS
Test 223: string datatype with maxium PASS UNTESTED PASS
Test 224: string datatype with minInclusive PASS UNTESTED PASS
Test 225: string datatype with maxInclusive PASS UNTESTED PASS
Test 226: string datatype with minExclusive PASS UNTESTED PASS
Test 227: string datatype with maxExclusive PASS UNTESTED PASS
Test 228: length with separator PASS UNTESTED PASS
Test 229: matching minLength with separator PASS UNTESTED PASS
Test 230: failing minLength with separator PASS UNTESTED PASS
Test 231: single column primaryKey success PASS UNTESTED PASS
Test 232: single column primaryKey violation PASS UNTESTED PASS
Test 233: multiple column primaryKey success PASS UNTESTED PASS
Test 234: multiple column primaryKey violation PASS UNTESTED PASS
Test 235: rowTitles on one column PASS UNTESTED PASS
Test 236: rowTitles on multiple columns PASS UNTESTED PASS
Test 237: rowTitles on one column (minimal) PASS UNTESTED PASS
Test 238: datatype value an absolute URL PASS UNTESTED PASS
Test 242: datatype @id an absolute URL PASS UNTESTED PASS
Test 243: invalid datatype @id PASS UNTESTED PASS
Test 244: invalid datatype @id PASS UNTESTED PASS
Test 245: date format (valid time combinations with formats and milliseconds) PASS UNTESTED PASS
Test 246: date format (valid dateTime combinations with formats and milliseconds) PASS UNTESTED PASS
Test 247: date format (extra milliseconds) PASS UNTESTED PASS
Test 248: Unicode in non-Normalized form PASS UNTESTED PASS
Test 251: missing source reference PASS UNTESTED PASS
Test 252: missing destination reference column PASS UNTESTED PASS
Test 253: missing destination table PASS UNTESTED PASS
Test 259: tree-ops example with csvm.json (w3.org/.well-known/csvm) PASS UNTESTED PASS
Test 260: tree-ops example with {+url}.json (w3.org/.well-known/csvm) PASS UNTESTED PASS
Test 261: maxLength < minLength PASS UNTESTED PASS
Test 263: @type on a common property can be a built-in type PASS UNTESTED PASS
Test 264: @type on a common property can be a CURIE if the prefix is one of the built-in ones PASS UNTESTED PASS
Test 266: `null` contains an array of (valid) string & (invalid) numeric values PASS UNTESTED PASS
Test 267: @id on datatype is invalid (eg starts with _:) PASS UNTESTED PASS
Test 268: `base` missing on datatype (defaults to string) PASS UNTESTED PASS
Test 269: `format` for a boolean datatype is a string but in the wrong form (eg YN) PASS UNTESTED PASS
Test 270: transformation includes an invalid property (eg foo) PASS UNTESTED PASS
Test 271: foreign key includes an invalid property (eg `dc:description`) PASS UNTESTED PASS
Test 272: foreign key reference includes an invalid property (eg `dc:description`) PASS UNTESTED PASS
Test 273: `@base` set in `@context` overriding eg CSV location PASS UNTESTED PASS
Test 274: `@context` object includes properties other than `@base` and `@language` PASS UNTESTED PASS
Test 275: property acceptable on column appears on table group PASS UNTESTED PASS
Test 276: property acceptable on column appears on table PASS UNTESTED PASS
Test 277: property acceptable on table appears on column PASS UNTESTED PASS
Test 278: CSV has more headers than there are columns in the metadata PASS UNTESTED PASS
Test 279: duration not matching xsd pattern PASS UNTESTED PASS
Test 280: dayTimeDuration not matching xsd pattern PASS UNTESTED PASS
Test 281: yearMonthDuration not matching xsd pattern PASS UNTESTED PASS
Test 282: valid number patterns PASS UNTESTED PASS
Test 283: valid number patterns (signs and percent/permille) PASS UNTESTED PASS
Test 284: valid number patterns (grouping) PASS UNTESTED PASS
Test 285: valid number patterns (fractional grouping) PASS UNTESTED PASS
Test 286: invalid ##0 1,234 PASS UNTESTED PASS
Test 287: invalid ##0 123.4 PASS UNTESTED PASS
Test 288: invalid #,#00 1 PASS UNTESTED PASS
Test 289: invalid #,#00 1234 PASS UNTESTED PASS
Test 290: invalid #,#00 12,34 PASS UNTESTED PASS
Test 291: invalid #,#00 12,34,567 PASS UNTESTED PASS
Test 292: invalid #,##,#00 1 PASS UNTESTED PASS
Test 293: invalid #,##,#00 1234 PASS UNTESTED PASS
Test 294: invalid #,##,#00 12,34 PASS UNTESTED PASS
Test 295: invalid #,##,#00 1,234,567 PASS UNTESTED PASS
Test 296: invalid #0.# 12.34 PASS UNTESTED PASS
Test 297: invalid #0.# 1,234.5 PASS UNTESTED PASS
Test 298: invalid #0.0 1 PASS UNTESTED PASS
Test 299: invalid #0.0 12.34 PASS UNTESTED PASS
Test 300: invalid #0.0# 1 PASS UNTESTED PASS
Test 301: invalid #0.0# 12.345