- From: Holger Knublauch <holger@topquadrant.com>
- Date: Tue, 1 Sep 2015 10:26:24 +1000
- To: public-data-shapes-wg@w3.org
Received on Tuesday, 1 September 2015 00:27:01 UTC
On 9/1/2015 10:15, Arnaud Le Hors wrote: > > ex:MyShape > > a sh:Shape ; > > sh:scope [ > > a sh:InversePropertyScope ; > > sh:predicate rdf:type ; > > ] ; > > sh:inverseProperty [ > > sh:predicate rdf:type ; > > sh:allowedValues ( ex:Class1 ex:Class2 ex:Class3 ) > > ] . > > And this has to be set as a Graph-level/global constraint, right? Yes, if you prefer to call it as such, this is graph-level. Technically it's just a Shape like any other one, only that it has a sh:scope instead of the (more common) class scoping. The sh:scope is set to iterate over all nodes that appear as object in an rdf:type triple. Alternatively it could also be turned into a sh:AllObjectsScope statement. (We may need to expose this to some practical experience to see which design patterns emerge). Holger
Received on Tuesday, 1 September 2015 00:27:01 UTC