- From: Iovka Boneva <iovka.boneva@univ-lille1.fr>
- Date: Mon, 14 Sep 2015 09:42:29 +0200
- To: "Peter F. Patel-Schneider" <pfpschneider@gmail.com>
- CC: RDF Data Shapes Working Group <public-data-shapes-wg@w3.org>, Simon Steyskal <simon.steyskal@wu.ac.at>
- Message-ID: <55F67A65.70301@univ-lille1.fr>
Thank you for your answers. Here is another question. Quoting the current version of the spec: // open quote In the following example, the property |ex:parent| must have exactly two values, and at least one of them needs to be female. Example 22: Shape with sh:valueShape constraint ex:QualifiedValueShapeExampleShape a sh:Shape ; sh:property [ sh:predicate ex:parent ; sh:minCount 2 ; sh:maxCount 2 ; sh:qualifiedValueShape [ a sh:Shape ; # Optional sh:property [ sh:predicate ex:gender ; sh:hasValue ex:female ; ] ] ; sh:qualifiedMinCount 1 ; ] . ex:QualifiedValueShapeExampleValidResource ex:parent ex:John ; ex:parent ex:Jane . ex:John ex:gender ex:male . ex:Jane ex:gender ex:female . // close quote Now my question is: how to specify that there are exactly two parents, exactly one is female and exactly one is male. Thanks in advance, Iovka Le 09/09/2015 14:56, Peter F. Patel-Schneider a écrit : > These all correspond to my understanding of the current state of SHACL. > > Closure is with respect to properties that explicitly appear in top-level > property constraints. You can fiddle with this by adding in vacuous > constraints for the other properties or by using sh:ignoredProperties. > See http://w3c.github.io/data-shapes/shacl/#ClosedShape for more information. > > peter > > On 09/09/2015 05:41 AM, Simon Steyskal wrote: >> Hi! >> >> I've tested it with TBC (there might have been some changes to SHACL that >> haven't been implemented in TBC yet): >> >> 1) fails -> 2x "Invalid triple for closed shape", one for ex:a "value1"; and >> one for ex:b "value2"; >> 2) fails -> 1x "Invalid triple for closed shape", for ex:b "value2"; >> 3) no, doesn't constrain anything >> >> cheers, >> simon >> >> --- >> DDipl.-Ing. Simon Steyskal >> Institute for Information Business, WU Vienna >> >> www: http://www.steyskal.info/ twitter: @simonsteys >> >> Am 2015-09-09 14:29, schrieb Iovka Boneva: >>> Dear all, >>> >>> I'm trying to clarify (for myself) the SHACL semantics. >>> >>> Here are three examples, can somebody please tell me whether these >>> examples pass or fail for the corresponding data. >>> >>> Thanks in advance, >>> Iovka >>> >>> // Example 1: is the ex:Instance node valid for that shape ? >>> >>> ex:ClosedShapeExampleShape >>> a sh:Shape ; >>> sh:constraint [ >>> a sh:ClosedShapeConstraint ; >>> ] ; >>> sh:constraint [ >>> a sh:OrConstraint ; >>> sh:shapes ( >>> [ >>> sh:property [ >>> sh:predicate ex:a ; >>> sh:minCount 1 ; >>> ] >>> ] >>> [ >>> sh:property [ >>> sh:predicate ex:b ; >>> sh:minCount 1 ; >>> ] >>> ] >>> ) >>> ] ; >>> sh:property [ >>> sh:predicate ex:c ; >>> ] . >>> >>> >>> ex:Instance >>> ex:a "value1"; >>> ex:b "value2"; >>> ex:c "value3"; >>> >>> __________________________ >>> >>> // Example 2: is the ex:Instance node valid for that shape ? >>> >>> ex:ClosedShapeExampleShape >>> a sh:Shape ; >>> sh:constraint [ >>> a sh:ClosedShapeConstraint ; >>> ] ; >>> sh:constraint [ >>> a sh:OrConstraint ; >>> sh:shapes ( >>> [ >>> sh:property [ >>> sh:predicate ex:a ; >>> sh:maxCount 0 ; >>> ] >>> ] >>> [ >>> sh:property [ >>> sh:predicate ex:b ; >>> sh:minCount 1 ; >>> ] >>> ] >>> ) >>> ] ; >>> sh:property [ >>> sh:predicate ex:a ; >>> ] ; >>> sh:property [ >>> sh:predicate ex:c ; >>> ] . >>> >>> >>> ex:Instance >>> ex:a "value1"; >>> ex:b "value2"; >>> ex:c "value3". >>> >>> >>> ______________________ >>> >>> // Example 3: Is this constraining something ? Is this valid for every node ? >>> >>> ex:AShape >>> a sh:Shape ; >>> sh:property [ >>> sh:predicate ex:a ; >>> ] ; >>> sh:property [ >>> sh:predicate ex:c ; >>> ] . >> >> -- Iovka Boneva Associate professor (MdC) Université de Lille http://www.cristal.univ-lille.fr/~boneva/ +33 6 95 75 70 25
Received on Monday, 14 September 2015 07:43:07 UTC