>>>
No, not rdfs:subClassOf. This is just talking about shapes. But it would be
equivalent to using
ex:ExampleAndShape
sh:node ex:SuperShape ;
In general, sh:and is not needed and can be substituted with multiple
sh:node constraints, or sh:property.
>>>
This is clear, thank you. and yes knew about the about the redundant
aspect of sh:And. In fact i am more interested about sh:Or, I just started
with the sh:And example, because i was trying to understand what kind of
shape are the list, and the sh:And example was the only one being specific
about it.
Sorry for the informal use of sh:subClassOf. Much better to be formal, but
i guess i would have not known how to formally express it. So many thanks
for this.
On Wednesday, September 22, 2021 at 1:43:09 AM UTC+1 Holger Knublauch wrote:
>
> On 2021-09-22 10:35 am, Maatary Okouya wrote:
>
> 1 - Does that mean that fundamentally, the list of shape in an sh:Or or
> sh:And is heterogenous ? That is, it may contain both propertyShape and
> NodeShape at the same time ?
>
> Yes, may contain any shape.
>
>
> 2 - This bring me to the question of how to read this ?
>
> >>>>
> ex:ExampleAndShape a sh:NodeShape ;
> sh:targetNode ex:ValidInstance, ex:InvalidInstance ;
> sh:and (
> ex:SuperShape
> [
> sh:path ex:property ;
> sh:maxCount 1 ;
> ] ) .
> >>>>
>
> 2-1 - With respect to s:SuperShape: is it saying that ex:ExampleAndShap
> rdfs:SubClassOf ex:SuperShape ?
>
> No, not rdfs:subClassOf. This is just talking about shapes. But it would
> be equivalent to using
> ex:ExampleAndShape
>
> sh:node ex:SuperShape ;
>
> In general, sh:and is not needed and can be substituted with multiple
> sh:node constraints, or sh:property.
>
>
> 2-2 - With respect to
> [
> sh:path ex:property ;
> sh:maxCount 1 ;
> ]
>
> is it saying
> ex:ExampleAndShape * has the propertyshape i.e. sh:property*
> [
> sh:path ex:property ;
> sh:maxCount 1 ;
> ]
>
> It means that the target nodes must conform to the given property shape,
> i.e. have at most one value of ex:property.
>
> Yes, this could alternatively be written using sh:property, as I mentioned
> above sh:and is redundant and was only added for symmetry reasons.
>
> There are subtle differences though in how validation errors would be
> reported between sh:property and sh:and. With sh:and you would only get a
> single violation, while with sh:property it would report each individual
> property violation separately.
>
> OTOH sh:or is of course not redundant.
>
> Holger
>
>
>
> ???
> On Wednesday, September 22, 2021 at 1:01:59 AM UTC+1 Holger Knublauch
> wrote:
>
>>
>> On 2021-09-22 9:54 am, Maatary Okouya wrote:
>>
>>
>> Taken from the specification:
>>
>> >>>
>> A node shape is a shape <https://www.w3.org/TR/shacl/#dfn-shape> in the
>> shapes
>> graph <https://www.w3.org/TR/shacl/#dfn-shapes-graph> that is not the
>> subject <https://www.w3.org/TR/shacl/#dfn-subject> of a triple
>> <https://www.w3.org/TR/shacl/#dfn-rdf-triple> with *sh:path* as its
>> predicate <https://www.w3.org/TR/shacl/#dfn-predicate>. SHACL instances
>> <https://www.w3.org/TR/shacl/#dfn-shacl-instance> of sh:NodeShape cannot
>> have a value <https://www.w3.org/TR/shacl/#dfn-value> for the
>> property sh:path.
>> >>>
>>
>> Yet when talking Or Constraint or And Constraint, that takes list of
>> shapes, we find example like what follow:
>>
>> >>>>
>> ex:SuperShape a sh:NodeShape ;
>> sh:property [ sh:path ex:property ; sh:minCount 1 ; ] .
>>
>> ex:ExampleAndShape a sh:NodeShape ;
>> sh:targetNode ex:ValidInstance, ex:InvalidInstance ;
>> sh:and (
>> ex:SuperShape
>> [
>> sh:path ex:property ;
>> sh:maxCount 1 ;
>> ] ) .
>> >>>>
>>
>> With the following explanation
>>
>> >>>
>> The following example illustrates the use of sh:and in a shape to specify
>> the condition that certain focus nodes have exactly one value
>> of ex:property. This is achieved via the conjunction of a separate named
>> shape (ex:SuperShape) which specifies the minimum count, and a *blank
>> node shape* that additionally specifies the maximum count. As shown
>> here, sh:and can be used to implement a specialization mechanism between
>> shapes.
>> >>>>
>>
>> How on earth is this a Blank Node shape if it is the subject of an
>> sh:path, am I missing something ?
>>
>> It should be a "blank property shape". I have recorded a bug report to
>> the spec's Errata:
>>
>> https://github.com/w3c/data-shapes/issues/140
>>
>> Note the error is in an informative block of text, so it doesn't change
>> implementations.
>>
>> Thanks for pointing this out
>> Holger
>>
>>
>>
>> ```
>>
>> [
>> sh:path ex:property ;
>> sh:maxCount 1 ;
>> ]
>>
>> ```
>> --
>> You received this message because you are subscribed to the Google Groups
>> "TopBraid Suite Users" group.
>> To unsubscribe from this group and stop receiving emails from it, send an
>> email to [email protected].
>> To view this discussion on the web visit
>> https://groups.google.com/d/msgid/topbraid-users/a36d9325-ff9a-4329-86a3-64a463798b1dn%40googlegroups.com
>>
>> <https://groups.google.com/d/msgid/topbraid-users/a36d9325-ff9a-4329-86a3-64a463798b1dn%40googlegroups.com?utm_medium=email&utm_source=footer>
>> .
>>
>> --
> You received this message because you are subscribed to the Google Groups
> "TopBraid Suite Users" group.
> To unsubscribe from this group and stop receiving emails from it, send an
> email to [email protected].
>
> To view this discussion on the web visit
> https://groups.google.com/d/msgid/topbraid-users/5ff52c6b-ca27-4a18-b0d6-a5e7795a48bfn%40googlegroups.com
>
> <https://groups.google.com/d/msgid/topbraid-users/5ff52c6b-ca27-4a18-b0d6-a5e7795a48bfn%40googlegroups.com?utm_medium=email&utm_source=footer>
> .
>
>
--
You received this message because you are subscribed to the Google Groups
"TopBraid Suite Users" group.
To unsubscribe from this group and stop receiving emails from it, send an email
to [email protected].
To view this discussion on the web visit
https://groups.google.com/d/msgid/topbraid-users/fda53a8b-8c1d-474f-9487-aa89d794b861n%40googlegroups.com.