Re: on literals as shapes

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