Hi David Your solution (as generated) needs quite some code in case of more than two items and also in a distributed way. We hoped to cover it with more generic template code…
Wrt shacl AF: if we can do it in shacl core (being a recommendation) that would be preferred. Furthermore I would not quickly see how to define a triple rule that does the same as the shacl core nodeshape proposal. (I do see your visibility issue though…) Gr michel Dr. ir. H.M. (Michel) Bohms Scientist Specialist Structural Reliability T +31 (0)88 866 31 07 M +31 (0)63 038 12 20 E michel.bo...@tno.nl<mailto:michel.bo...@tno.nl> Location<http://www.tno.nl/locations/DTS> [cid:image001.gif@01D79E80.866A87D0]<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. Van: topbraid-users@googlegroups.com <topbraid-users@googlegroups.com> Namens David Price Verzonden: dinsdag 31 augustus 2021 15:46 Aan: topbraid-users@googlegroups.com Onderwerp: Re: [topbraid-users] right owl2shacl-mapping? I don’t like creating a separate instance to control disjointedness as it’s not immediately visible in the relevant class form. The NodeShape being proposed has the same issue. I usually use a pattern like this: unnamed:Thing_1 rdf:type owl:Class ; rdfs:subClassOf owl:Thing ; owl:disjointWith unnamed:Thing_2 ; owl:disjointWith unnamed:Thing_3 ; and then EDG owl2shacl does this: For each owl:disjointWith from class A to B, create one constraint at A with the pattern sh:not [ sh:class B ]. You could generate sh:not from the approach you mention too, of course. I did not test the mentioned approach but it does appear that it or something similar would work. Also, if Advanced SHACL is supported in your tools a TripleRule could likely handle this need. https://w3c.github.io/shacl/shacl-af/#TripleRule Cheers, David On 31 Aug 2021, at 13:28, 'Bohms, H.M. (Michel)' via TopBraid Suite Users <topbraid-users@googlegroups.com<mailto:topbraid-users@googlegroups.com>> wrote: (we were looking for an approach not needing rdfs-entailment) sml:AllDisjointClasses_1 a owl:AllDisjointClasses ; owl:members ( sml:PhysicalObject sml:InformationObject sml:Activity sml:Event sml:State ) ; . In shacl (?): sml:DisjointClassesShape_1 a sh:NodeShape ; sh:targetSubjectsOf rdf:type ; sh:property [ sh:path ( rdf:type [ sh:zeroOrMorePath rdfs:subClassOf ] ) ; sh:qualifiedValueShape [ sh:in ( sml:PhysicalObject sml:InformationObject sml:State sml:Event sml:Activity ) ; ] ; sh:qualifiedMaxCount 1 ; ] ; . Any issues with this mapping? Thx Michel Dr. ir. H.M. (Michel) Bohms Scientist Specialist Structural Reliability T +31 (0)88 866 31 07 M +31 (0)63 038 12 20 E michel.bo...@tno.nl<mailto:michel.bo...@tno.nl> Location<http://www.tno.nl/locations/DTS> <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>. To view this discussion on the web visit https://groups.google.com/d/msgid/topbraid-users/9eedba7e10534409ac1eec4e3d3704b1%40tno.nl<https://groups.google.com/d/msgid/topbraid-users/9eedba7e10534409ac1eec4e3d3704b1%40tno.nl?utm_medium=email&utm_source=footer>. UK +44 (0) 7788 561308 US +1 (336) 283-0808 -- 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>. To view this discussion on the web visit https://groups.google.com/d/msgid/topbraid-users/642FE359-E3CF-4FF8-881E-26AC0C1D201B%40topquadrant.com<https://groups.google.com/d/msgid/topbraid-users/642FE359-E3CF-4FF8-881E-26AC0C1D201B%40topquadrant.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 topbraid-users+unsubscr...@googlegroups.com. To view this discussion on the web visit https://groups.google.com/d/msgid/topbraid-users/82c522b7d3c34e5e9f662e90539ac39a%40tno.nl.