- From: Peter F. Patel-Schneider <pfpschneider@gmail.com>
- Date: Wed, 28 Sep 2016 08:40:51 -0700
- To: kcoyle@kcoyle.net, public-rdf-shapes@w3.org
If there is no notion of whether an RDF graph is a syntactically valid shapes graph then how are SHACL systems supposed to do anything? peter On 09/28/2016 07:12 AM, Karen Coyle wrote: > > > 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 >>>> >>> >>> >> >> >
Received on Wednesday, 28 September 2016 15:41:23 UTC