W3C home > Mailing lists > Public > public-data-shapes-wg@w3.org > January 2017

Re: shapes-ISSUE-221 (sh:Shape hierarchy): Simplify the class hierarchy of shapes [SHACL - Core]

From: Holger Knublauch <holger@topquadrant.com>
Date: Thu, 26 Jan 2017 08:50:52 +1000
To: public-data-shapes-wg@w3.org
Message-ID: <e97b9089-8d77-3796-32b6-0d7792525b33@topquadrant.com>
Hi Dimitris,

what you are asking to remove here is the very thing that caused me to 
vote in favor of the rest of your proposal. It was part of the 
*compromise*. I am disappointed this is discussed yet once again. I am 
strongly against even opening this ticket - it was already discussed at 
length, invalidates the resolution to ISSUE-211 and would set us back 
yet again with the release of the spec.

Holger


On 26/01/2017 8:33, RDF Data Shapes Working Group Issue Tracker wrote:
> shapes-ISSUE-221 (sh:Shape hierarchy): Simplify the class hierarchy of shapes [SHACL - Core]
>
> http://www.w3.org/2014/data-shapes/track/issues/221
>
> Raised by: Dimitris Kontokostas
> On product: SHACL - Core
>
> as a task from today;s resolution on ISSUE-211 I created this issue
>
> The current editors draft defines three classes for shapes:
> sh:Shape with the following subclasses
>   -> sh:NodeShape
>   -> sh:PropertyShape
>
> However, all shape-expecting constraint components (sh:shape, sh:or, sh:and) use only sh:Shape and do not distinguish between the two subclasses.
>
> The only exception is sh:property that expects a property shape.
> This, however, creates redundancy in the shape definitions e.g.
>
> ex:a a sh:Shape
>    sh:shape [
>      sh:path ex:name;
>      sh:minCount 1;
>    ]
>
> is the equivalent shape for
>
> ex:a a sh:Shape
>    sh:property [
>      sh:path ex:name;
>      sh:minCount 1;
>    ]
>
> In addition, property shapes, as a separate subclass of sh:shape, are not needed anywhere else in the spec. There very few occurrences can be easily reworded.
>
> This indicates that the only reason for this hierarchy is sh:property and this is something that can be defined with sh:shape.
>
> It would be a great simplification if we removed both subclasses and kept only sh:Shape as defined in
> https://jimkont.github.io/data-shapes/shacl/core.html#shacl-shapes
> https://jimkont.github.io/data-shapes/shacl/core.html#value-nodes
>
>
>
Received on Wednesday, 25 January 2017 22:51:30 UTC

This archive was generated by hypermail 2.3.1 : Wednesday, 25 January 2017 22:51:30 UTC