W3C home > Mailing lists > Public > public-data-shapes-wg@w3.org > May 2016

Re: New Terminology Section

From: Karen Coyle <kcoyle@kcoyle.net>
Date: Mon, 9 May 2016 10:25:42 -0700
To: public-data-shapes-wg@w3.org
Message-ID: <5730C816.4090806@kcoyle.net>


On 5/8/16 4:11 PM, Holger Knublauch wrote:
> On 8/05/2016 2:22, Karen Coyle wrote:
>>
>>
>> On 5/6/16 10:07 PM, Holger Knublauch wrote:
>>>> The big question, though, in my mind, is whether the use of classes in
>>>> SHACL follows the definition in RDFS.
>>>>
>>>> In terms of the data graph, the RDFS concept of class is used only in
>>>> the sense that nodes can be identified as a triple with a predicate
>>>> "rdf:type" and some designated value.
>>>>
>>>> In the shapes graph, I'm not at all clear on how classes are being
>>>> used. There are a lot of declared classes that appear to have no
>>>> functionality within the standard. I'm going to open up an issue so we
>>>> can try to clarify what classes in SHACL are - that may help us with
>>>> finding wording.
>>>
>>> Details are needed. Not clear what problems you are seeing.
>>
>> In this example, defined SHACL class sh:Shape is used. So to me that
>> is a class that has a function/use demonstrated in the SHACL spec.
>>
>> ex:ExampleFilteredShape
>>     a sh:Shape ;
>>     sh:scopeClass ex:Person ;
>>     sh:filterShape [
>>         a sh:Shape ; # Optional triple
>>         sh:property [
>>             sh:predicate ex:member ;
>>             sh:hasValue ex:W3c ;
>>         ]
>>     ] ;
>>     sh:property [
>>         sh:predicate ex:email ;
>>         sh:minCount 1 ;
>>     ] .
>>
>> Nowhere do I see any visible use of sh:DatatypeConstraintComponent,[1]
>> sh:DatatypeInConstraintComponent, or any other
>> "sh:XConstraintComponent". Therefore it isn't obvious to me what
>> function these have in the SHACL vocabulary. They are defined in the
>> constraint section but never again referenced in the document. This is
>> especially curious since we have said that no inferencing takes place
>> so class/type relationships must be made explicit with an rdf:type
>> predicate. I would expect to see some usage of them described in the
>> document.
>>
>> kc
>> [1]http://w3c.github.io/data-shapes/shacl/#DatatypeConstraintComponent
>>
>
> The ConstraintComponents are not classes,

 From the ttl file:

sh:ConstraintComponent
	a rdfs:Class ;

sh:ClassConstraintComponent
	a sh:ConstraintComponent ;

kc


and they are not explicitly or
> implicitly referenced via rdf:type. They are basically shapes. Like
> shapes, they serve as a group of constraints (here: the constraints that
> define the parameter properties such as sh:minCount which has datatype
> xsd:integer). Like shapes, they are laid over a graph without the graph
> even knowing about that overlay. However, ConstraintComponents are not
> officially instances of sh:Shape, because this would "pollute" each
> shapes graph with additional shapes that would always be validated. The
> design is such that SHACL engines could very easily use the constraint
> components as shapes, and sh:Parameters as sh:PropertyConstraints, if
> the user requests to validate the shapes graph itself.
>
> Is this clearer?
>
> Holger
>
>
>

-- 
Karen Coyle
kcoyle@kcoyle.net http://kcoyle.net
m: 1-510-435-8234
skype: kcoylenet/+1-510-984-3600
Received on Monday, 9 May 2016 17:26:16 UTC

This archive was generated by hypermail 2.4.0 : Friday, 17 January 2020 19:30:33 UTC