- From: Holger Knublauch <holger@topquadrant.com>
- Date: Mon, 18 Jul 2016 11:21:33 +1000
- To: public-data-shapes-wg@w3.org
On 17/07/2016 5:17, Karen Coyle wrote:
> Holger, thanks for this. My question now is, would we still need:
>
> sh:PropertyConstraint
> sh:NodeConstraint
> sh:property
> ?
sh:NodeConstraint would disappear - it would be sh:Shape. The class
hierarchy would look like
sh:Constraint
sh:PropertyConstraint
sh:Shape
and sh:property would be the parameter of a constraint component that
takes sh:PropertyConstraints as its values. A sh:Shape would be a
constraint that is satisfied if all its constraint components are
satisfied (see sh:hasShape).
>
> If (as it appears) sh:property is always followed by a node with
> sh:predicate, then those are redundant, and only sh:predicate is
> necessary.
I cannot follow this train of thought. Along the same lines, all classes
would be redundant as soon as they have a property that makes them
identifiable. But sh:PropertyConstraint is very distinct from
sh:NodeConstraint or sh:Shape. Among others it serves as a container to
group together properties that only make sense there, e.g. sh:predicate,
sh:path, sh:name, sh:description, sh:order, sh:group - none of which
apply to shapes in general. I believe it will also be an intuitive
concept for people coming from OWL or object-oriented backgrounds -
basically a shape declares properties, and these properties have their
own characteristics. In OWL this is similar to owl:Restrictions. The
metamodel is IMHO cleaner this way.
Holger
>
> kc
>
> On 7/14/16 3:43 PM, Holger Knublauch wrote:
>> I have started a wiki page to collect examples of how the proposed
>> syntax change to merge sh:Shape and sh:NodeConstraint would look like:
>>
>> https://www.w3.org/2014/data-shapes/wiki/ISSUE-133
>>
>> Please feel free to edit this page and/or discuss on the mailing list.
>>
>> Cheers,
>> Holger
>>
>>
>>
>
Received on Monday, 18 July 2016 01:22:05 UTC