Re: Comments on draft #3

On 3/19/15 4:24 PM, Holger Knublauch wrote:
>> 2. Move the section on Constraint Validation Vocabulary after Property
>> Constraints
>
> I would love to do that, but this is not so easy: There is a dependency
> here in that the textual definitions of the various property constraints
> need to state what constraint violations, root, path and values need to
> be constructed. F

I don't see a problem with referring to a later (and really, not that 
much later) section for the validation vocabulary. All in all, it would 
make for better comprehension to have the details of the validation 
vocabulary come later. Also, the spec in that section only refers to 
sh:error, so a short note related it is first use should suffice.

I'm also toying with the idea that constraints on properties 
(min/maxCount) should be separated from constraints on values. If 
nothing else, in the spec I think that min/max on properties should be 
the first section. In a primer, it may work to have them be different 
sections.

The spec as it is today does not make clear that within a node, local or 
global, multiple property constraints can be defined. in fact, I'm not 
sure how that should be done in SHACL. The DCMI application profile does 
this nicely -- it makes clear that a "description" (which in SHACL terms 
would be the constraints on a node) defines all of the properties 
related to that description/node. Thus (conceptually):

bookNode: //matching rdf:type my:book
   dct:title
      min=1 max=1
      valueType:literal
   dct:creator
      min=0
      valueType:URI
   dct:subject
      min=0
      valueList: "History, Literature, Science"
      [yes, I realize this is imprecise, and it should be an OR]


The only instances of multiple properties in the spec are nested 
properties. I presume that multiple properties can be constrained for a 
given node; if that's the case, then the spec should say that.

Speaking of "OR", Jose suggested using "sh:or" and "sh:oneOf" in one of 
his emails. I sent him a note suggesting "sh:anyOf" and "sh:oneOf" since 
"or" is always subject to mis-interpretation.

kc

-- 
Karen Coyle
kcoyle@kcoyle.net http://kcoyle.net
m: 1-510-435-8234
skype: kcoylenet/+1-510-984-3600

Received on Saturday, 21 March 2015 18:09:41 UTC