- From: Holger Knublauch <holger@topquadrant.com>
- Date: Tue, 07 Apr 2015 11:55:52 +1000
- To: public-data-shapes-wg@w3.org
On 4/6/2015 1:06, Karen Coyle wrote: > > > On 4/3/15 5:21 PM, Holger Knublauch wrote: >> >> >> On 4/4/15 2:50 AM, Karen Coyle wrote: >>> OK. So now the ToC reads: >>> >>> - Property Constraints >>> - Disjunctive Constraints >>> >>> which isn't a logical division of the concepts. If you have a >>> high-level "property constraints" then for readability you should have >>> a high-level for whatever is not "property constraints". In other >>> words, the document's high level needs to exhibit a logical division >>> of the topic. >> >> I'd be happy to have another headline, yet sh:OrConstraint is currently >> the only instance of this category, and I don't think we'll add more of >> its kind. Other vocabularies will certainly define more. In the absence >> of better suggestions they could be labeled "Other Shape Constraints". > > Holger, I am still trying to understand what this other category is. > AFAIK, SHACL defines constraints on nodes, properties (in a graph) and > the value(s) of those properties. Properties themselves can be subject > to constraints, mainly cardinality, but I don't see this clearly > called out in the document. I would prefer: > > Constraints on nodes > - cardinality ("only one person node allowed") > - defined properties ("foaf:name") I don't think we have core language elements for those two built-in right now (not sure what you mean with "defined properties"). > > - Constraints on defined properties ("foaf:name") > - cardinality > > - Constraints on property values (in this case, "foaf:name") > -type > - value list > > This is, in fact, how the examples read, although none show > constraints on nodes. I cannot tell whether such a further categorization would really help the logical flow. For example sh:hasValue sounds like it should be in the "property values" category, but it is really only firing a violation if the focus node does *not* have that value. So the division here is IMHO not clear cut, and I'd vote for reducing the levels of nesting. > Now, which of those does 4.0 refer to? And can we present SHACL with a > logical structure of this nature? Section 4 is currently only hosting sh:OrConstraint, and that may need to be in your "Constraints on nodes". I don't believe it would make sense to have that constraint type listed first, as it's usually just a combination of other constraints. Holger
Received on Tuesday, 7 April 2015 01:57:14 UTC