Re: type and instance and subclass in SHACL documents

I donąt understand what you mean by

"validates against this shape under SHACL instance but not under RDFS

I am not able to parse the sentence.

What are you doing? Taking a shape described and the graph described and
running it against SHACL engine? What execution validates and what
execution doesnąt validate?


On 3/11/16, 5:03 PM, "Peter F. Patel-Schneider" <>

>On 03/11/2016 01:01 PM, Karen Coyle wrote:
>> On 3/11/16 11:43 AM, Peter F. Patel-Schneider wrote:
>>> Consider the following shape (using obvious prefix declarations)
>>> sh:propertyShape a sh:Shape ;
>>>   sh:scopeClass rdf:Property ;
>>>   sh:property [ sh:predicate rdfs:label ;
>>>                 sh:minCount 1 ] .
>>> The data graph (using obvious prefix declarations)
>>> rdfs:range ex:label "range" .
>>> validates against this shape under SHACL instance but not under RDFS
>> Isn't this a problem with every vocabulary and not just RDFS? If the
>>rules of
>> the vocabulary (such as domain and range) are not encoded as such in
>> then the SHACL result can be "in violation" of the vocabulary
>> Now, if that is the case then I understand that violating the foundation
>> vocabulary of RDF/RDFS may be more grave than violating a user-developed
>> vocabulary, and in some cases doing the latter may indeed be the
>>intention of
>> the SHACL definition. So do we want to build into SHACL that it must
>> RDF/RDFS property and class definitions? And how feasible is that?
>> kc
>This is only a real problem because SHACL uses "instance" in its
>specification, this term is also used centrally in RDFS, and SHACL uses
>The question then is how to read "instance" in SHACL documentation, i.e.,
>to prevent readers of the SHACL documentation from seeing "RDFS instance"
>where "SHACL instance" is meant.

Received on Friday, 11 March 2016 22:16:17 UTC