- From: Arnaud Le Hors <lehors@us.ibm.com>
- Date: Tue, 19 Apr 2016 10:01:31 -0700
- To: kcoyle@kcoyle.net
- Cc: "public-data-shapes-wg@w3.org" <public-data-shapes-wg@w3.org>
- Message-Id: <201604191701.u3JH1coS026168@d01av03.pok.ibm.com>
Karen, Since we're using github the best way to propose changes is to make changes to your own fork and submit a Pull Request the editors can then use to accept and merge in the changes. If you're not familiar with github here is some help: There are different ways to do this but one simple way is to go to the github page: https://github.com/w3c/data-shapes/blob/gh-pages/shacl/index.html Click the "edit this file" button on the right (the little pen), make your changes, and instead of committing directly select "Create a new branch for this commit and start a pull request. " at the bottom of the page. Thank you for doing this. -- Arnaud Le Hors - Senior Technical Staff Member, Open Web Technologies - IBM Cloud Karen Coyle <kcoyle@kcoyle.net> wrote on 04/19/2016 09:13:45 AM: > From: Karen Coyle <kcoyle@kcoyle.net> > To: "Peter F. Patel-Schneider" <pfpschneider@gmail.com>, "public- > data-shapes-wg@w3.org" <public-data-shapes-wg@w3.org> > Date: 04/19/2016 09:15 AM > Subject: Re: More wording > > 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: > > 2.1 > "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. > > kc > * 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 an > > 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 statement: > >> "SHACL groups descriptive information and constraints that apply to a given > >> data node into shapes. This document defines what it means for anRDF graph, > >> 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 graphs, > >> not things (graphs being groups of 1 or more triples). (You wouldn't say: > >> "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 givendata node > >> 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 blank > >>> nodes and come from RDF graphs that are to be considered as shapes graphs. > >>> RDF graphs are generally not considered to be instances of classes. > >>> > >>> SHACL documents should be clear that SHACL shapes are IRIs or blank nodes > >>> 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 Turtle > >>> 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 classsh:Shape. > >>>> 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 validated > >>>> 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 redundant. > >>>> > >>>> 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:02:12 UTC