- From: Karen Coyle <kcoyle@kcoyle.net>
- Date: Wed, 28 Sep 2016 07:12:20 -0700
- To: public-rdf-shapes@w3.org
On 9/27/16 3:53 PM, Peter F. Patel-Schneider wrote: > So this is legal SHACL then? What happens if this shape is used in SHACL? I don't believe that "legal SHACL" has been defined. There was a place in the document that referred to a "valid shapes graph" (which I was going to object to but it looks like it has been edited out) but it doesn't look to me that validation of the shapes graph itself is defined. The decision that no inferencing would be required [1] seems to imply that even the RDF domain and range declarations are not in play in terms of "legal SHACL", but most RDF applications that I am aware of use the vocabulary definitions as a basis of validation of graphs, and would do so for the SHACL graph. The relationship between the SHACL.ttl statements and the SHACL document should be addressed more specifically in the SHACL spec, such that SHACL.ttl would inform "legal SHACL", along with statements in the specification itself. Most importantly, the spec should not contradict anything in SHACL.ttl, and vice versa. If SHACL.ttl does not define the vocabulary of SHACL and its relationships, then ... well, that just can't be, can it? Then SHACL is not defined in RDF.[2] kc [1]1.5 Relationship between SHACL and RDFS inferencing SHACL uses the RDF and RDFS vocabularies, but full RDFS inferencing is not required. However, SHACL processors must identify SHACL instances of a class both in the data graph and the shapes graph without mutating either graph during the validation process. Furthermore, SHACL processors may operate on RDF graphs that include entailments - either pre-computed before being submitted to a SHACL processor or performed on the fly as part of SHACL processing. To support processing of entailments, SHACL includes the property sh:entailment to indicate what inferencing is required by a given shapes graph. SHACL implementations may, but are not required to, support entailment regimes. [2]The idea that SHACL be defined in something other than RDF is not unthinkable - since RDF is the problem space here, it may not be the appropriate solution. > > > Peter F. Patel-Schneider > Nuance Communications > > On 09/27/2016 03:44 PM, Holger Knublauch wrote: >> The rdfs:range of sh:shape is sh:Shape, and the "Value Type" is sh:Shape, too. >> None of these enforce formal syntactic constraints. We could add a sh:nodeKind >> restriction to sh:shape in the SHACL.ttl file, but haven't done so for other >> properties either. >> >> Holger >> >> >> On 28/09/2016 4:01, Peter F. Patel-Schneider wrote: >>> It appears to me that >>> >>> [prefix declarations] >>> >>> s:s1 rdf:type sh:Shape ; >>> sh:shape 7 . >>> >>> is a syntactically correct shapes graph. >>> >>> Is this so? If not, what makes it not be so? >>> >>> >>> Peter F. Patel-Schneider >>> Nuance Communications >>> >> >> > > -- Karen Coyle kcoyle@kcoyle.net http://kcoyle.net m: 1-510-435-8234 skype: kcoylenet/+1-510-984-3600
Received on Wednesday, 28 September 2016 14:12:51 UTC