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

Re: More wording

From: Irene Polikoff <irene@topquadrant.com>
Date: Tue, 19 Apr 2016 10:22:29 -0400
To: <kcoyle@kcoyle.net>, "Peter F. Patel-Schneider" <pfpschneider@gmail.com>, "public-data-shapes-wg@w3.org" <public-data-shapes-wg@w3.org>
Message-ID: <D33BB6CA.9B592%irene@topquadrant.com>
"The scope of a shape is defined with (?by?) the sh:scopeNode predicate.≤

I would say either ≥by the sh:scopeNode≤ or ≥using the sh:scopeNode≤ or
even ≥by using"


On 4/19/16, 12:13 PM, "Karen Coyle" <kcoyle@kcoyle.net> wrote:

>Thanks, Peter. I see places in the spec where shapes are given agency in
>odd ways:
>"2.1.1 Node scopes (sh:scopeNode)
>Shapes define node scopes with the sh:scopeNode predicate"
>I would be more comfortable with:
>"The scope of a shape is defined with (?by?) the sh:scopeNode predicate."
>Also, I find places where it isn't clear whether a statement is about
>the shape graph or the data graph, such as:
>"Node scopes define a specific RDF node as scope."
>The RDF node in this case is a node in the data graph,* but that may not
>be clear to the reader.
>Also, in some places I see "shape" and in others "Shape", and I believe
>these are referring to the same thing, so one form should be chosen.
>Again, I'd like to see editorial changes of this nature made, but am
>unclear how to coordinate with the current editors.
>* Yes, the data graph can be a SHACL document. That doesn't change this.
>On 4/18/16 1:19 PM, Peter F. Patel-Schneider wrote:
>> Yeah, I can see how that might be confusing.  You have to think that the
>> constraints of a shape are those that are (somehow) connected, or
>>close, to
>> the shape node, which is not what one might think of if one was making
>> analogy to programming languages or even SPARQL.
>> Your suggested wording looks promising to me.
>> peter
>> On 04/18/2016 01:11 PM, Karen Coyle wrote:
>>> OK, thanks, Peter. That truly wasn't clear, so I'll read further to
>>>see if
>>> this definition is followed in the text.
>>> But as an example, to me, the definition does not fit with the
>>> "SHACL groups descriptive information and constraints that apply to a
>>> data node into shapes. This document defines what it means for an RDF
>>> referred to as the "data graph", to conform to a graph containing SHACL
>>> shapes, referred to as the "shapes graph"."
>>> I have trouble with "groups ... constraints ... into shapes" if a
>>>shape is an
>>> IRI/bnode. That is what made me think that shapes were intended to be
>>> not things (graphs being groups of 1 or more triples). (You wouldn't
>>> "groups names into Persons".) Perhaps:
>>> "A shape is an instance of the class sh:Shape, either an IRI or a
>>>blank node.
>>> The descriptive information and constraints that apply to a given data
>>> are defined as the properties of a shape. A set of shapes that defines
>>> validation rules for a data graph (?or a portion of a data graph?) is
>>>called a
>>> 'shapes graph'. A shapes graph consists of one or more shapes."
>>> Closer?
>>> kc
>>> On 4/18/16 9:40 AM, Peter F. Patel-Schneider wrote:
>>>> There may be some misunderstanding here.  Shapes in SHACL are IRIs or
>>>> nodes and come from RDF graphs that are to be considered as shapes
>>>> RDF graphs are generally not considered to be instances of classes.
>>>> SHACL documents should be clear that SHACL shapes are IRIs or blank
>>>> and not graphs or sets of triples.
>>>> Here is some Turtle syntax for an RDF graph
>>>> @prefix ex: <http://example.com/> .
>>>> @prefix ex: <http://www.w3.org/ns/shacl#> .
>>>> ex:s1 a sh:Shape ;
>>>>     sh:scopeClass ex:Person ;
>>>>     ex:property [ a sh:PropertyConstraint ;
>>>>                ex:predicate ex:p1 ;
>>>>                   ex:valueShape ex:s2 ] ;
>>>>     ex:constraint [ a sh:PropertyConstraint ;
>>>>                     ex:predicate ex:p2 ;
>>>>            ex:valueShape [ a sh:Shape ;
>>>>                      ex:constraint [ a sh:NodeConstraint ;
>>>>                                            sh:class ex:Student ] ] ] .
>>>> ex:s2 a sh:Shape ;
>>>>     sh:constraint [ a sh:NodeConstraint ;
>>>>               sh:nodeKind sh:IRI ] .
>>>> When treated as a shapes graph, an RDF graph that results from this
>>>> syntax has three shapes in it
>>>> 1. http://example.com/s1
>>>> 2. http://example.com/s2
>>>> 3. the blank node that is allocated when matching
>>>>         [ a sh:Shape ;
>>>>        ex:constraint [ a sh:NodeConstraint ;
>>>>                  sh:class ex:Student ] ]
>>>> peter
>>>> On 04/18/2016 09:03 AM, Karen Coyle wrote:
>>>>> 2. Shapes
>>>>> Is: "Shapes are instances of the class sh:Shape and define a group of
>>>>> constraints that a set of focus nodes can be validated against."
>>>>> Suggest: "Shapes are graphs that are instances of the the class
>>>>> Shapes define one or more focus nodes in a data graph and
>>>>>constraints on
>>>>> triples in those focus nodes. The triples in the focus nodes are
>>>>> against the constraints in the shape."
>>>>> I also suggest that we define "shape" as "an RDF graph of type
>>>>>sh:Shape" and
>>>>> not use "shape graph" but always use "shape" since "shape graph" is
>>>>> I can make this change if we have agreement on it. If I don't hear
>>>>>back I may
>>>>> make this definition an issue.
>>>>> kc
>Karen Coyle
>kcoyle@kcoyle.net http://kcoyle.net
>m: 1-510-435-8234
>skype: kcoylenet/+1-510-984-3600
Received on Tuesday, 19 April 2016 17:23:05 UTC

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