- From: Irene Polikoff <irene@topquadrant.com>
- Date: Mon, 18 Apr 2016 17:58:19 -0700
- To: "Peter F. Patel-Schneider" <pfpschneider@gmail.com>
- Cc: kcoyle@kcoyle.net, "public-data-shapes-wg@w3.org" <public-data-shapes-wg@w3.org>
Ok, then how about A graph that includes triples representing shapes ... Sent from my iPhone On Apr 18, 2016, at 4:46 PM, Peter F. Patel-Schneider <pfpschneider@gmail.com> wrote: >> >> A graph of triples representing shapes is called a 'shapes graph'. > > appears to rule out triples in the graph that are not part of shapes. > > peter > > >> On 04/18/2016 03:04 PM, Irene Polikoff wrote: >> Come to think of this some more, I don't like >> >>>> A set of shapes that defines validation rules for a data graph (?or a >>>> portion of a data graph?) is called a 'shapes graph'. >> >> It sounds like there could be a set of shapes defining validation rules and >> then a set of shapes defining something else. Also, not sure about using the >> term 'validation rules'. >> >> Any reason we can't simply say: >> >> A graph of triples representing shapes is called a 'shapes graph'. >> >> Sent from my iPhone >> >> On Apr 18, 2016, at 2:15 PM, Irene Polikoff <irene@topquadrant.com >> <mailto:irene@topquadrant.com>> wrote: >> >>> The 'groups' language only works given the context. It wouldn't work in a >>> more general sense. One would not say that a Person groups names - this >>> doesn't make sense, but one may say that a Family groups family members or >>> People. >>> >>> In any case, Karen's proposed language works for me. >>> >>> Sent from my iPhone >>> >>>> On Apr 18, 2016, at 2:11 PM, Karen Coyle <kcoyle@kcoyle.net >>>> <mailto:kcoyle@kcoyle.net>> 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 an RDF >>>> 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 given >>>> data 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 class sh: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 <mailto:kcoyle@kcoyle.net> http://kcoyle.net >>>> m: 1-510-435-8234 >>>> skype: kcoylenet/+1-510-984-3600 >>>>
Received on Tuesday, 19 April 2016 00:58:53 UTC