- From: Holger Knublauch <holger@topquadrant.com>
- Date: Thu, 5 Nov 2015 09:30:14 +1000
- To: public-data-shapes-wg@w3.org
On 11/5/2015 9:23, RDF Data Shapes Working Group Issue Tracker wrote: > shapes-ISSUE-110 (single-property constraints): relationship between sh:constraint and sh:property and sh:inverseProperty > > http://www.w3.org/2014/data-shapes/track/issues/110 > > Raised by: Peter Patel-Schneider > On product: > > http://w3c.github.io/data-shapes/shacl/ states: > > 2.3 Constraints > > A shape defines a group of constraints. SHACL includes a collection of Core constraint types that are covered in the next section. Additional types of constraints can be added using the extension mechanism. > > Shapes can be linked to their constraints via the following properties: > > - sh:property links a shape with constraints about a given property of the focus node. These constraints are called property constraints. > > - sh:inverseProperty links a shape with constraints about a given property traversed in the inverse direction of the focus node. These constraints are called inverse property constraints. > > - sh:constraint link a shape with constraints that do not involve just a single dedicated property. SHACL includes property pair constraints and other constraints such as logical operators. > > > Example 41 does not follow this division: > > Example 41: Shape definition using ex:LanguageConstraint > > ex:TemplateLanguageExampleShape > a sh:Shape ; > sh:scopeClass ex:Country ; > sh:constraint [ > a ex:LanguageConstraint ; > ex:predicate ex:germanLabel ; > ex:lang "de" ; > ] ; > sh:constraint [ > a ex:LanguageConstraint ; > ex:predicate ex:englishLabel ; > ex:lang "en" ; > ] . > > Either Example 41 should be changed or the division between sh:constraint, sh:property, and sh:inverseProperty should be changed. The example is technically correct - note that it uses ex:predicate and not sh:predicate, i.e. there is no relation between ex:LanguageConstraint and sh:PropertyConstraint. I picked that example because it can illustrate the point of subclassing sh:PropertyConstraint, as done in example 42. Holger
Received on Wednesday, 4 November 2015 23:30:50 UTC