- From: Peter F. Patel-Schneider <pfpschneider@gmail.com>
- Date: Fri, 2 Oct 2015 06:00:15 -0700
- To: kcoyle@kcoyle.net, "public-data-shapes-wg@w3.org" <public-data-shapes-wg@w3.org>
On 10/02/2015 05:36 AM, Karen Coyle wrote: > If it is expected that sh:maxCount 0 will be implemented in SHACL > implementations, the SHACL document must say explicitly that sh:maxCount 0 > means "none". The place to do that is in 3.1.5 where the defaults are discussed. Right now, SHACL implementations are supposed to implement all of sh:maxCount 53845786327198 sh:maxCount 7 sh:maxCount 1 sh:maxCount 0 sh:maxCount -1 according to the definition(s) in 3.1.5. Why single out 0 as needing special treatment as it is in no way special? I do agree that 3.1.5 could be made much better. I think that Arthur signed on to do this. > This also means that there are two ways to to say "NOT" in SHACL - > sh:NotConstraint and sh:maxCount 0, but I don't know if they are equivalent. > That should be clarified. A maximum count of 0 for a property is not NOT, except in the very limited sense of not having any values for the property. This makes it very different from sh:NotConstraint. The inclusion of negation in SHACL means that there are many constraints that can be said in different ways. I think that the way of making this clear is to ensure that the definitions of the various constructs are precise and clear. (Note, however, that the reporting of violations would look different for some different ways of constructing a particular constraint.) A SHACL primer could explore the various interesting points of the SHACL constructs, but I don't think that the SHACL definitional document should. peter
Received on Friday, 2 October 2015 13:00:54 UTC