Thx Irene
All clear.
In our guide we combine shacl with rdfs/owl for the props so I will reuse the 
subclassof/subpropertyof of rdfs... (i.s.o. the shacl and-expression for the 
classes)

Michel



Dr. ir. H.M. (Michel) Böhms
Senior Data Scientist


T +31888663107
M +31630381220
E michel.bo...@tno.nl<mailto:michel.bo...@tno.nl>

Location<https://www.google.com/maps/place/TNO+-+Locatie+Delft+-+Stieltjesweg/@52.000788,4.3745183,17z/data=!3m1!4b1!4m5!3m4!1s0x47c5b58c52869997:0x56681566be3b8c88!8m2!3d52.000788!4d4.376707>



[cid:image001.gif@01D4FA0D.4340B520]<http://www.tno.nl/>

This message may contain information that is not intended for you. If you are 
not the addressee or if this message was sent to you by mistake, you are 
requested to inform the sender and delete the message. TNO accepts no liability 
for the content of this e-mail, for the manner in which you use it and for 
damage of any kind resulting from the risks inherent to the electronic 
transmission of messages.









From: topbraid-users@googlegroups.com <topbraid-users@googlegroups.com> On 
Behalf Of Irene Polikoff
Sent: dinsdag 23 april 2019 17:40
To: topbraid-users@googlegroups.com
Subject: Re: [topbraid-users] owl <> shacl

It depends on what you are trying to accomplish.

Sub-properties is not a concept in SHACL. If you use sub-properties, you will 
need to perform inferencing before you submit your data to the SHACL engine. 
That is, if you expect any validation to happen as a result of such 
declarations.

People also often declare sub-properties only for the ease of query and not for 
inferencing. This way they could query, for example, for:

?p rdfs:subPropertyOf ex:parentProperty.
?s ?p ?o.

As opposed to listing each individual property.

Question about subclasses is, I believe, about inheritance or ways to re-use 
shapes. SHACL supports rdfs:subClassOf. In other words, if a target of shape X 
is class A, all direct members of A as well as indirect members (through A’s 
subclasses, transitively) are targeted.

Purely SHACL option for re-use is to use logical expressions. For example:

ex:Shape1 a sh:NodeShape;
sh:property [sh:path ex:property1;
                                                sh:minCount 1].

ex:Shape2 a sh:NodeShape ;
sh:and (
                                ex:Shape1
                                [
                                                sh:path ex:property2 ;
                                                sh:minCount 1 ;
                                ]
                ) .


Of course, to make these shapes do anything, you would also need target 
declarations. With this, any target of Shape2 would also be validated against 
Shape1.




On Apr 23, 2019, at 10:26 AM, 'Bohms, H.M. (Michel)' via TopBraid Suite Users 
<topbraid-users@googlegroups.com<mailto:topbraid-users@googlegroups.com>> wrote:

Is there a shacl-(specific) way for defining subclasses/subproperties (ie 
subshapes) or do we always need rdfs/owl for this?

Thx Michel




Dr. ir. H.M. (Michel) Böhms
Senior Data Scientist



T +31888663107
M +31630381220
E michel.bo...@tno.nl<mailto:michel.bo...@tno.nl>

Location<https://www.google.com/maps/place/TNO+-+Locatie+Delft+-+Stieltjesweg/@52.000788,4.3745183,17z/data=!3m1!4b1!4m5!3m4!1s0x47c5b58c52869997:0x56681566be3b8c88!8m2!3d52.000788!4d4.376707>



<image001.gif><http://www.tno.nl/>

This message may contain information that is not intended for you. If you are 
not the addressee or if this message was sent to you by mistake, you are 
requested to inform the sender and delete the message. TNO accepts no liability 
for the content of this e-mail, for the manner in which you use it and for 
damage of any kind resulting from the risks inherent to the electronic 
transmission of messages.










--
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 
topbraid-users+unsubscr...@googlegroups.com<mailto:topbraid-users+unsubscr...@googlegroups.com>.
For more options, visit https://groups.google.com/d/optout.

--
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 
topbraid-users+unsubscr...@googlegroups.com<mailto:topbraid-users+unsubscr...@googlegroups.com>.
For more options, visit https://groups.google.com/d/optout.

-- 
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 topbraid-users+unsubscr...@googlegroups.com.
For more options, visit https://groups.google.com/d/optout.

Reply via email to