shacl-engine
Version:
A fast RDF/JS SHACL engine
83 lines (82 loc) • 2.46 kB
text/turtle
#> .
#> .
#> .
#> .
#> .
#> .
#> .
#> .
#> .
<http://datashapes.org/sh/tests/sparql/component/nodeValidator-001.test>
sh:declare [
rdf:type sh:PrefixDeclaration ;
sh:namespace "http://datashapes.org/sh/tests/sparql/component/nodeValidator-001.test#"^^xsd:anyURI ;
sh:prefix "ex" ;
] ;
.
ex:InvalidResource1
ex:property "Other" ;
.
ex:TestConstraintComponent
rdf:type sh:ConstraintComponent ;
rdfs:label "Test constraint component" ;
sh:nodeValidator [
rdf:type sh:SPARQLSelectValidator ;
sh:select """
SELECT DISTINCT $this
WHERE {
$this ?p ?o .
FILTER NOT EXISTS {
$this ex:property ?requiredParam .
}}""" ;
sh:prefixes <http://datashapes.org/sh/tests/sparql/component/nodeValidator-001.test> ;
] ;
sh:parameter [
sh:path ex:optionalParam ;
sh:datatype xsd:integer ;
sh:name "optional param" ;
sh:optional "true"^^xsd:boolean ;
] ;
sh:parameter [
sh:path ex:requiredParam ;
sh:datatype xsd:string ;
sh:name "required param" ;
] ;
.
ex:TestShape
rdf:type sh:NodeShape ;
ex:requiredParam "Value" ;
rdfs:label "Test shape" ;
sh:targetNode ex:InvalidResource1 ;
sh:targetNode ex:ValidResource1 ;
.
ex:ValidResource1
ex:property "Value" ;
.
<>
rdf:type mf:Manifest ;
mf:entries (
<nodeValidator-001>
) ;
.
<nodeValidator-001>
rdf:type sht:Validate ;
rdfs:label "Test of sh:nodeValidator 001" ;
mf:action [
sht:dataGraph <> ;
sht:shapesGraph <> ;
] ;
mf:result [
rdf:type sh:ValidationReport ;
sh:conforms "false"^^xsd:boolean ;
sh:result [
rdf:type sh:ValidationResult ;
sh:focusNode ex:InvalidResource1 ;
sh:resultSeverity sh:Violation ;
sh:sourceConstraintComponent ex:TestConstraintComponent ;
sh:sourceShape ex:TestShape ;
sh:value ex:InvalidResource1 ;
] ;
] ;
mf:status sht:proposed ;
.