Re: shapes-ISSUE-112 (misuse of RDFS properties): SHACL uses RDFS properties in ways that violate their intended RDFS meaning [SHACL Spec]

Well, yes, I think that Peter has pointed out an issue -- that 
rdfs:label in this:

 >>>>> ex:InlinePropertyConstraintExampleShape
 >>>>>      a sh:Shape ;
 >>>>>      sh:property [
 >>>>>          sh:predicate ex:someProperty ;
 >>>>>          sh:minCount 1 ;
 >>>>>          sh:valueClass ex:SomeClass ;
 >>>>>          rdfs:label "some property" ;
 >>>>>          rdfs:comment "This is used for some purpose" ;
 >>>>>      ] .

refers to the blank node, not the ex:someProperty. So it isn't clear to 
me how any system that adheres to rdfs would display that as the label 
for the property. This is particularly puzzling because there has been 
much talk of combining SHACL and instance data, which quite possible 
makes use of rdfs:label as defined in rdfs.

rdfs:label is a label for the subject of the triple.

rdfs:comment is shown in Example 10 as:

"rdfs:comment "Description of the role of ex:someProperty (in the 
context of the constraint)" ;"

It looks to me that rdfs:comment could be used as a comment on the 
property constraint represented by the blank node, but again there is 
nothing in rdfs that connects it to the value ex:someProperty. So in a 
case where SHACL and instance data are in the same graph, how is it 
possible that rdfs:label and rdfs:comment will have such different 
meanings? RDF aside, that's something that I would assume would be 
discouraged in any programming language.

kc



On 11/8/15 4:40 PM, Holger Knublauch wrote:
> I had seen similar comments in the Twittersphere recently. I believe the
> wording of section 1.1 is unnecessarily dramatic. I had meanwhile tried
> to soften it up a bit, but it could need more work (I welcome suggestions).
>
>      http://w3c.github.io/data-shapes/shacl/#shacl-rdfs
>
> The main rationale was to allow SHACL to be used without requiring full
> RDFS inferencing. But I believe there is no harm in running SHACL over a
> system with RDFS activated. Does anyone see conditions where applying
> the RDFS semantics would cause measurable problems (leaving aside the
> usual philosophical questions about the distinction between a
> representation and the real-world entity that the rdfs:label discussion
> seems to refer to)?
>
> Holger
>
>
> On 11/9/2015 10:14, Karen Coyle wrote:
>> Well, these seems like a non-starter to me, and I don't understand why
>> there isn't more concern. There is no way to prevent applications from
>> applying RDFS semantics to the RDFS properties in SHACL. The statement
>> in the introduction to SHACL that says ...
>>
>> "SHACL uses RDF and RDFS vocabulary (in particular rdf:type,
>> rdfs:Class, rdfs:subClassOf, rdfs:label, rdfs:comment, rdf:Property,
>> rdf:List, rdf:langLiteral, and rdfs:Resource) and notions (notably
>> classes, instances, and subclasses). However, SHACL does not use this
>> vocabulary or these notions in the way that they are defined in RDF
>> and RDFS [rdf11-mt]." has always struck me as a huge red flag.
>>
>> kc
>>
>> On 11/6/15 8:24 PM, Peter F. Patel-Schneider wrote:
>>> It would be ex:someProperty, not the [...] that is the value of
>>> sh:property.
>>>
>>> In RDFS, rdfs:label and rdfs:comment are supposed to be about the
>>> [...].  The
>>> current non-conforming SHACL use is for ex:Property in the context of
>>> ex:InLinePropertyConstraintExampleShape.
>>>
>>> Note that in RDF there is no problem in having properties also be
>>> nodes in the
>>> graph. In RDFS properties are generally nodes in the graph so that
>>> they can be
>>> given domains and ranges, etc.
>>>
>>> peter
>>>
>>> On 11/06/2015 11:39 AM, Karen Coyle wrote:
>>>> Does "for the property in the scope where it appears" refer to
>>>> sh:property or
>>>> ex:someProperty in the example? It cannot be ex:someProperty because
>>>> that
>>>> isn't a rdf:Resource in the graph -- it's never a subject of a
>>>> triple. All of
>>>> the predicates in the sh:property [...] graph have sh:property as
>>>> their subject.
>>>>
>>>> Now I'm fully confused about the whole sh:property graph and what the
>>>> predicates in the graph mean. I should probably take a walk and
>>>> think about it
>>>> later.
>>>>
>>>> kc
>>>>
>>>> On 11/6/15 9:40 AM, Peter F. Patel-Schneider wrote:
>>>>> rdfs:label and rdfs:comment are supposed to be about the resource
>>>>> itself,
>>>>> which for SHACL is a constraint or shape.  However, the wording in
>>>>> SHACL says
>>>>> to make them about the property, which is different from the
>>>>> constraint or
>>>>> shape.
>>>>>
>>>>> For example, the SHACL example is
>>>>>
>>>>> ex:InlinePropertyConstraintExampleShape
>>>>>      a sh:Shape ;
>>>>>      sh:property [
>>>>>          sh:predicate ex:someProperty ;
>>>>>          sh:minCount 1 ;
>>>>>          sh:valueClass ex:SomeClass ;
>>>>>          rdfs:label "some property" ;
>>>>>          rdfs:comment "This is used for some purpose" ;
>>>>>      ] .
>>>>>
>>>>> where as it really should be
>>>>>
>>>>> ex:InlinePropertyConstraintExampleShape
>>>>>      a sh:Shape ;
>>>>>      sh:property [
>>>>>          sh:predicate ex:someProperty ;
>>>>>          sh:minCount 1 ;
>>>>>          sh:valueClass ex:SomeClass ;
>>>>>          rdfs:label "ex:someProperty constraint in
>>>>> ex:InlinePropertyConstraintExampleShape" ;
>>>>>          rdfs:comment "This constrains values of ex:someProperty to
>>>>> belong to
>>>>> ex:someClass" ;
>>>>>      ] .
>>>>>
>>>>> peter
>>>>>
>>>>>
>>>>> On 11/06/2015 07:40 AM, Karen Coyle wrote:
>>>>>> Peter, this is a bit overly subtle for me. Can you say what
>>>>>> exactly you see as
>>>>>> violating RDFS? I'll tell you what I see and you can tell me how
>>>>>> I'm wrong ;-)
>>>>>> - when a property is itself a resource (X rdfs:label Y) then this
>>>>>> has the RDFS
>>>>>> meaning. What I see is that the resource that is named with
>>>>>> rdfs:label in the
>>>>>> case of SHACL is the blank node.
>>>>>>
>>>>>> Now, what's the real problem? I assume it's not just wording.
>>>>>>
>>>>>> Thanks,
>>>>>> kc
>>>>>>
>>>>>> On 11/5/15 3:57 PM, Holger Knublauch wrote:
>>>>>>> I had long thought about using new properties such as sh:label and
>>>>>>> sh:definition instead. I decided to prefer rdfs:label and
>>>>>>> rdfs:comment,
>>>>>>> because these properties are most likely already used as
>>>>>>> annotations on
>>>>>>> the shapes, classes and other resources in SHACL files. People
>>>>>>> will get
>>>>>>> confused which property to use in which context, adding just another
>>>>>>> unnecessary complication in the learning curve.
>>>>>>>
>>>>>>> Since a property constraint resource describes the use of a
>>>>>>> property in
>>>>>>> the context of a shape scope, I see no reason why using
>>>>>>> rdfs:label would
>>>>>>> violate the official spec.
>>>>>>>
>>>>>>> PROPOSAL: Close ISSUE-112 - no change required.
>>>>>>>
>>>>>>> Holger
>>>>>>>
>>>>>>>
>>>>>>> On 11/6/2015 7:55, RDF Data Shapes Working Group Issue Tracker
>>>>>>> wrote:
>>>>>>>> shapes-ISSUE-112 (misuse of RDFS properties): SHACL uses RDFS
>>>>>>>> properties in ways that violate their intended RDFS meaning
>>>>>>>> [SHACL Spec]
>>>>>>>>
>>>>>>>> http://www.w3.org/2014/data-shapes/track/issues/112
>>>>>>>>
>>>>>>>> Raised by: Peter Patel-Schneider
>>>>>>>> On product: SHACL Spec
>>>>>>>>
>>>>>>>> >From http://w3c.github.io/data-shapes/shacl/:
>>>>>>>>
>>>>>>>> Property constraints may have an rdfs:label to provide a
>>>>>>>> human-readable label for the property in the scope where it
>>>>>>>> appears.
>>>>>>>>
>>>>>>>> >From http://www.w3.org/TR/rdf-schema/
>>>>>>>>
>>>>>>>> rdfs:label is an instance of rdf:Property that may be used to
>>>>>>>> provide
>>>>>>>> a human-readable version of a resource's name.  A triple of the
>>>>>>>> form:
>>>>>>>> R rdfs:label L . states that L is a human readable label for R.
>>>>>>>>
>>>>>>>> The SHACL use does not abide by the RDFS meaning. SHACL should not
>>>>>>>> use RDFS properties in ways that violate their RDFS meaning.
>>>>>>>>
>>>>>>>> Similarly for rdfs:comment.
>>>>>>>>
>>>>>>>>
>>>>>>>> PROPOSAL:  Remove the non-conforming wording for and uses of
>>>>>>>> rdfs:label and rdfs:commment.
>>>>>>>>
>>>>>>>>
>>>>>>>>
>>>>>>>
>>>>>>>
>>>>>>>
>>>>>>
>>>>>
>>>>>
>>>>
>>>
>>
>
>
>

-- 
Karen Coyle
kcoyle@kcoyle.net http://kcoyle.net
m: 1-510-435-8234
skype: kcoylenet/+1-510-984-3600

Received on Monday, 9 November 2015 14:18:46 UTC