Shapes Constraint Language (SHACL) Implementation Report

Ruby SHACL gem test results

This document reports conformance for for Shapes Constraint Language (SHACL)

Alternate versions of the report are available in Turtle and JSON-LD

SHACL
Description
SHACL is a Shape Constraint engine for the Ruby RDF.rb library suite.
Release
0.3.0
Programming Language
Ruby
Home Page
https://ruby-rdf.github.io/shacl
Developer
Test Suite Compliance
Tests converted from http://datashapes.org/sh/tests/tests/core/complex 1/2 (50.0%)
Tests converted from http://datashapes.org/sh/tests/tests/core/misc 5/5 (100.0%)
Tests converted from http://datashapes.org/sh/tests/tests/core/node 31/32 (96.9%)
Tests converted from http://datashapes.org/sh/tests/tests/core/path 11/13 (84.6%)
Tests converted from http://datashapes.org/sh/tests/tests/core/property 34/38 (89.5%)
Tests converted from http://datashapes.org/sh/tests/tests/core/targets 7/7 (100.0%)
Tests for validation reports Untested
Tests converted from http://datashapes.org/sh/tests/tests/sparql/node 4/4 (100.0%)
Tests for pre-binding 11/14 (78.6%)
Tests converted from http://datashapes.org/sh/tests/tests/sparql/property 1/1 (100.0%)

Individual Test Results

Tests converted from http://datashapes.org/sh/tests/tests/core/complex

Test SHACL
Test urn:x-shacl-test:/core/complex/personexample: Test of personexample PASS
Test urn:x-shacl-test:/core/complex/shacl-shacl: frozen eat your own ( eat your own frozen dogfood ) FAIL
Percentage passed out of 2 Tests 50.0%

Tests converted from http://datashapes.org/sh/tests/tests/core/misc

Test SHACL
Test urn:x-shacl-test:/core/misc/deactivated-001: Test of sh:deactivated 001 PASS
Test urn:x-shacl-test:/core/misc/deactivated-002: Test of sh:deactivated 002 PASS
Test urn:x-shacl-test:/core/misc/message-001: Test of custom sh:message 001 PASS
Test urn:x-shacl-test:/core/misc/severity-001: Test of sh:severity 001 PASS
Test urn:x-shacl-test:/core/misc/severity-002: Test of sh:severity 002 PASS
Percentage passed out of 5 Tests 100.0%

Tests converted from http://datashapes.org/sh/tests/tests/core/node

Test SHACL
Test urn:x-shacl-test:/core/node/and-001: Test of sh:and at node shape 001 PASS
Test urn:x-shacl-test:/core/node/and-002: Test of sh:and at node shape 002 PASS
Test urn:x-shacl-test:/core/node/class-001: Test of sh:class at node shape 001 PASS
Test urn:x-shacl-test:/core/node/class-002: Test of sh:class at node shape 002 PASS
Test urn:x-shacl-test:/core/node/class-003: Test of sh:class at node shape 003 multiple classes, overlapping target sets PASS
Test urn:x-shacl-test:/core/node/closed-001: Test of sh:closed at node shape 001 PASS
Test urn:x-shacl-test:/core/node/closed-002: Test of sh:closed at node shape 002 PASS
Test urn:x-shacl-test:/core/node/datatype-001: Test of sh:datatype at node shape 001 PASS
Test urn:x-shacl-test:/core/node/datatype-002: Test of sh:datatype at node shape 002 PASS
Test urn:x-shacl-test:/core/node/disjoint-001: Test of sh:disjoint at node shape 001 PASS
Test urn:x-shacl-test:/core/node/equals-001: Test of sh:equals at node shape 001 PASS
Test urn:x-shacl-test:/core/node/hasValue-001: Test of sh:hasValue at node shape 001 PASS
Test urn:x-shacl-test:/core/node/in-001: Test of sh:in at node shape 001 PASS
Test urn:x-shacl-test:/core/node/languageIn-001: Test of sh:languageIn at node shape 001 PASS
Test urn:x-shacl-test:/core/node/maxExclusive-001: Test of sh:maxExclusive at node shape 001 PASS
Test urn:x-shacl-test:/core/node/maxInclusive-001: Test of sh:maxInclusive at node shape 001 PASS
Test urn:x-shacl-test:/core/node/maxLength-001: Test of sh:maxLength at node shape 001 PASS
Test urn:x-shacl-test:/core/node/minExclusive-001: Test of sh:minExclusive at node shape 001 PASS
Test urn:x-shacl-test:/core/node/minInclusive-001: Test of sh:minInclusive at node shape 001 PASS
Test urn:x-shacl-test:/core/node/minInclusive-002: Test of sh:minInclusive at node shape 002 - dateTime with timezone PASS
Test urn:x-shacl-test:/core/node/minInclusive-003: Test of sh:minInclusive at node shape 003 - dateTime without timezone FAIL
Test urn:x-shacl-test:/core/node/minLength-001: Test of sh:minLength at node shape 001 PASS
Test urn:x-shacl-test:/core/node/node-001: Test of sh:node at node shape 001 PASS
Test urn:x-shacl-test:/core/node/nodeKind-001: Test of sh:nodeKind at node shape 001 PASS
Test urn:x-shacl-test:/core/node/not-001: Test of sh:not at node shape 001 PASS
Test urn:x-shacl-test:/core/node/not-002: Test of sh:not at node shape 002 PASS
Test urn:x-shacl-test:/core/node/or-001: Test of sh:or at node shape 001 PASS
Test urn:x-shacl-test:/core/node/pattern-001: Test of sh:pattern at node shape 001 PASS
Test urn:x-shacl-test:/core/node/pattern-002: Test of sh:pattern at node shape 002 PASS
Test urn:x-shacl-test:/core/node/qualified-001: Test of qualified parameters allowed in node shapes PASS
Test urn:x-shacl-test:/core/node/xone-001: Test of sh:xone at node shape 001 PASS
Test urn:x-shacl-test:/core/node/xone-duplicate: Test of validation report for shape xone-duplicate by property constraints PASS
Percentage passed out of 32 Tests 96.9%

Tests converted from http://datashapes.org/sh/tests/tests/core/path

Test SHACL
Test urn:x-shacl-test:/core/path/path-alternative-001: Test of path sh:alternativePath 001 PASS
Test urn:x-shacl-test:/core/path/path-complex-001: Test of path complex (rdf:type/rdfs:subClassOf*) 001 PASS
Test urn:x-shacl-test:/core/path/path-complex-002: Test of complex path validation results PASS
Test urn:x-shacl-test:/core/path/path-inverse-001: Test of path sh:inversePath 001 PASS
Test urn:x-shacl-test:/core/path/path-oneOrMore-001: Test of path sh:oneOrMorePath 001 PASS
Test urn:x-shacl-test:/core/path/path-sequence-001: Test of path sequence 001 PASS
Test urn:x-shacl-test:/core/path/path-sequence-002: Test of path sequence 002 PASS
Test urn:x-shacl-test:/core/path/path-sequence-duplicate-001: Test of path sequence with duplicate 001 PASS
Test urn:x-shacl-test:/core/path/path-strange-001: Test of strange path 001 two valid paths together FAIL
Test urn:x-shacl-test:/core/path/path-strange-002: Test of strange path 002 valid and invalid paths together FAIL
Test urn:x-shacl-test:/core/path/path-unused-001: Test with unused ill-formed path PASS
Test urn:x-shacl-test:/core/path/path-zeroOrMore-001: Test of path sh:zeroOrMorePath 001 PASS
Test urn:x-shacl-test:/core/path/path-zeroOrOne-001: Test of path sh:zeroOrOnePath 001 PASS
Percentage passed out of 13 Tests 84.6%

Tests converted from http://datashapes.org/sh/tests/tests/core/property

Test SHACL
Test urn:x-shacl-test:/core/property/and-001: Test of sh:and at property shape 001 PASS
Test urn:x-shacl-test:/core/property/class-001: Test of sh:class at property shape 001 PASS
Test urn:x-shacl-test:/core/property/datatype-001: Test of sh:datatype at property shape 001 PASS
Test urn:x-shacl-test:/core/property/datatype-002: Test of sh:datatype at property shape 002 PASS
Test urn:x-shacl-test:/core/property/datatype-003: Test of sh:datatype at property shape 003 PASS
Test urn:x-shacl-test:/core/property/datatype-ill-formed: Test of validation report for ill-formed literals PASS
Test urn:x-shacl-test:/core/property/disjoint-001: Test of sh:disjoint at property shape 001 PASS
Test urn:x-shacl-test:/core/property/equals-001: Test of sh:equals at property shape 001 PASS
Test urn:x-shacl-test:/core/property/hasValue-001: Test of sh:hasValue at property shape 001 PASS
Test urn:x-shacl-test:/core/property/in-001: Test of sh:in at property shape 001 PASS
Test urn:x-shacl-test:/core/property/languageIn-001: Test of sh:languageIn at property shape 001 PASS
Test urn:x-shacl-test:/core/property/lessThan-001: Test of sh:lessThan at property shape 001 PASS
Test urn:x-shacl-test:/core/property/lessThan-002: Test of sh:lessThan at property shape 002 PASS
Test urn:x-shacl-test:/core/property/lessThanOrEquals-001: Test of sh:lessThanOrEquals at property shape 001 PASS
Test urn:x-shacl-test:/core/property/maxCount-001: Test of sh:maxCount at property shape 001 PASS
Test urn:x-shacl-test:/core/property/maxCount-002: Test of sh:maxCount at property shape 002 PASS
Test urn:x-shacl-test:/core/property/maxExclusive-001: Test of sh:maxExclusive at property shape 001 PASS
Test urn:x-shacl-test:/core/property/maxInclusive-001: Test of sh:maxInclusive at property shape 001 PASS
Test urn:x-shacl-test:/core/property/maxLength-001: Test of sh:maxLength at property shape 001 PASS
Test urn:x-shacl-test:/core/property/minCount-001: Test of sh:minCount at property shape 001 PASS
Test urn:x-shacl-test:/core/property/minCount-002: Test of sh:minCount at property shape 001 PASS
Test urn:x-shacl-test:/core/property/minExclusive-001: Test of sh:minExclusive at property shape 001 PASS
Test urn:x-shacl-test:/core/property/minExclusive-002: Test of sh:minExclusive at property shape 002 PASS
Test urn:x-shacl-test:/core/property/minLength-001: Test of sh:minLength at property shape 001 PASS
Test urn:x-shacl-test:/core/property/node-001: Test of sh:node at property shape 001 PASS
Test urn:x-shacl-test:/core/property/node-002: Test of sh:node at property shape 002 PASS
Test urn:x-shacl-test:/core/property/nodeKind-001: Test of sh:nodeKind at property shape 001 PASS
Test urn:x-shacl-test:/core/property/not-001: Test of sh:not at property shape 001 PASS
Test urn:x-shacl-test:/core/property/or-001: Test of sh:or at property shape 001 PASS
Test urn:x-shacl-test:/core/property/or-datatypes-001: Test of sh:or of sh:datatypes at property shape 001 PASS
Test urn:x-shacl-test:/core/property/pattern-001: Test of sh:pattern at property shape 001 PASS
Test urn:x-shacl-test:/core/property/pattern-002: Test of sh:pattern at property shape 002 PASS
Test urn:x-shacl-test:/core/property/property-001: Test of sh:property at property shape 001 FAIL
Test urn:x-shacl-test:/core/property/qualifiedMinCountDisjoint-001: Test of sh:qualifiedMinCount with disjoint shapes at property shape 001 FAIL
Test urn:x-shacl-test:/core/property/qualifiedValueShape-001: Test of sh:qualifiedValueShape at property shape 001 PASS
Test urn:x-shacl-test:/core/property/qualifiedValueShapesDisjoint-001: Test of sh:qualifiedValueShapesDisjoint at property shape 001 FAIL
Test urn:x-shacl-test:/core/property/uniqueLang-001: Test of sh:uniqueLang at property shape 001 PASS
Test urn:x-shacl-test:/core/property/uniqueLang-002: Test uniqueLang with other boolean literal for true FAIL
Percentage passed out of 38 Tests 89.5%

Tests converted from http://datashapes.org/sh/tests/tests/core/targets

Test SHACL
Test urn:x-shacl-test:/core/targets/multipleTargets-001: Test of multiple targets 001 PASS
Test urn:x-shacl-test:/core/targets/targetClass-001: Test of sh:targetClass 001 PASS
Test urn:x-shacl-test:/core/targets/targetClassImplicit-001: Test of implicit sh:targetClass 001 PASS
Test urn:x-shacl-test:/core/targets/targetNode-001: Test of sh:targetNode 001 PASS
Test urn:x-shacl-test:/core/targets/targetObjectsOf-001: Test of sh:targetObjectsOf 001 PASS
Test urn:x-shacl-test:/core/targets/targetSubjectsOf-001: Test of sh:targetSubjectsOf 001 PASS
Test urn:x-shacl-test:/core/targets/targetSubjectsOf-002: Test of sh:targetSubjectsOf 002 PASS
Percentage passed out of 7 Tests 100.0%

Tests converted from http://datashapes.org/sh/tests/tests/sparql/node

Test SHACL
Test urn:x-shacl-test:/sparql/node/prefixes-001: Test of sh:prefixes 001 PASS
Test urn:x-shacl-test:/sparql/node/sparql-001: Test of sh:sparql at node shape 001 PASS
Test urn:x-shacl-test:/sparql/node/sparql-002: Test of sh:sparql at node shape 002 PASS
Test urn:x-shacl-test:/sparql/node/sparql-003: Test of sh:sparql at node shape 003 PASS
Percentage passed out of 4 Tests 100.0%

Tests converted from http://datashapes.org/sh/tests/tests/sparql/property

Test SHACL
Test urn:x-shacl-test:/sparql/property/sparql-001: Test of sh:sparql at property shape 001 PASS
Percentage passed out of 1 Tests 100.0%

Tests for pre-binding

Test SHACL
Test urn:x-shacl-test:/sparql/pre-binding/pre-binding-001: Test of pre-binding in FILTER PASS
Test urn:x-shacl-test:/sparql/pre-binding/pre-binding-002: Test of pre-binding in UNION PASS
Test urn:x-shacl-test:/sparql/pre-binding/pre-binding-003: Test of pre-binding in inner ... blocks PASS
Test urn:x-shacl-test:/sparql/pre-binding/pre-binding-004: Test of pre-binding in BIND expressions PASS
Test urn:x-shacl-test:/sparql/pre-binding/pre-binding-005: Test of pre-binding in BGP and FILTER PASS
Test urn:x-shacl-test:/sparql/pre-binding/pre-binding-006: Test of pre-binding in nested SELECT FAIL
Test urn:x-shacl-test:/sparql/pre-binding/pre-binding-007: Test of pre-binding in nested SELECT PASS
Test urn:x-shacl-test:/sparql/pre-binding/shapesGraph-001: Test of $shapesGraph and $currentShape PASS
Test urn:x-shacl-test:/sparql/pre-binding/unsupported-sparql-001: Test of unsupported MINUS PASS
Test urn:x-shacl-test:/sparql/pre-binding/unsupported-sparql-002: Test of unsupported VALUES PASS
Test urn:x-shacl-test:/sparql/pre-binding/unsupported-sparql-003: Test of unsupported SERVICE PASS
Test urn:x-shacl-test:/sparql/pre-binding/unsupported-sparql-004: Test of unsupported SELECT FAIL
Test urn:x-shacl-test:/sparql/pre-binding/unsupported-sparql-005: Test of unsupported AS ?prebound PASS
Test urn:x-shacl-test:/sparql/pre-binding/unsupported-sparql-006: Test of ASK trying to reassign ?value FAIL
Percentage passed out of 14 Tests 78.6%

Tests for validation reports

Test SHACL
Test urn:x-shacl-test:/core/validation-reports/shared: Test of validation report for shape shared by property constraints FAIL
Percentage passed out of 1 Tests 0.0%

Report Generation Software

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