- From: Peter F. Patel-Schneider <pfpschneider@gmail.com>
- Date: Fri, 2 Dec 2016 20:09:18 -0800
- To: "public-rdf-shapes@w3.org" <public-rdf-shapes@w3.org>
There is a lot of wording like
A validation result MUST be produced for each value node that ...
in Shapes Constraint Language (SHACL) W3C Editor's Draft 02 December 2016.
It's not immediately clear just what a validation result is, but
After validation, SHACL processors MUST return a validation report
containing all validation results.
implies that a validation result includes an RDF node.
It's fairly obvious that a validation report is an RDF graph although this is not
explicitly stated, even in
The result of a validation process is an RDF graph with exactly one SHACL
instance of sh:ValidationReport.
So when validating the data graph
ex:j rdf:type ex:d ;
ex:q ex:i ;
ex:i ex:p ex:i1 , ..., ex:i1000000000 .
against the shapes graph
se:s rdf:type sh:Shape ;
sh:targetNode ex:j ;
sh:property [ sh:path ex:q ; sh:shape se:t ] .
se:t rdf:type sh:Shape ;
sh:property [ sh:path ex:p ; sh:class ex:c ] .
a SHACL processor MUST create an RDF graph with over one billion nodes.
There are lots of other problems related to this one.
For sh:ShapeConstraintComponent
A validation result MUST be produced for each value node where validating
the value node against the shape specified by sh:shape produces any
validation results.
So a validation result is produced for the outermost shape in the shapes
graph below when validating the data graph
ex:i rdf:type ex:c ; ex:p ex:j .
against the shapes graph
se:s rdf:type sh:Shape ;
sh:targetNode ex:i ;
sh:shape [ sh:property ex:p ;
sh:not [ sh:class ex:x ] ] .
because a validation result is produced from the innermost shape during the
validation of the middle shape.
Peter F. Patel-Schneider
Nuance Communications
Received on Saturday, 3 December 2016 04:09:56 UTC