I assumed that in my example that the list is made up of blank Property
Shape? am i correct ?
```
ex:PersonAddressShape a sh:NodeShape ;
sh:targetClass ex:Person ;
sh:property [ //shprop1
sh:path ex:address ;
sh:or (
[
//shprop2
sh:datatype xsd:string ;
]
[
//shprop3
sh:class ex:Address ;
]
)
] .
```
Hence i am interested in how one read this informally as much as formally.
I don't think, as in the previous example above, sh:node or sh:property
applies. Hence, little confused on this one
*Note: I have been using all of this thing in my application without
problem, as i had the intuition about how those works and the support of
TBC. But recently i have had to parse shacl, and that is when the issue of
what is what exactly, or what is allowed where comes in. *
On Wednesday, September 22, 2021 at 1:44:32 AM UTC+1 Maatary Okouya wrote:
> Just to conclude and be complete about my last question, which is all
> that sparked the original question actually:
>
> *(Note: I'm using rdfs:subclassOf informally here, just to express the
> idea)*
>
> When we have
>
> ```
> ex:PersonAddressShape a sh:NodeShape ;
> sh:targetClass ex:Person ;
> sh:property [ //shprop1
> sh:path ex:address ;
> sh:or (
> [
> //shprop2
> sh:datatype xsd:string ;
> ]
> [
> //shprop3
> sh:class ex:Address ;
> ]
> )
> ] .
> ```
> Are we saying that shProp1 rdfs:subClassOf at least shProp1 or shProp2
> On Wednesday, September 22, 2021 at 1:35:56 AM UTC+1 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 ?
>>
>> 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 ?
>>
>> 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 ;
>> ]
>>
>> ???
>> 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/50870f8e-6764-45f3-a775-5960442da2e0n%40googlegroups.com.