- From: Vladimir Alexiev via GitHub <sysbot+gh@w3.org>
- Date: Wed, 09 Apr 2025 16:42:20 +0000
- To: public-shacl@w3.org
VladimirAlexiev has just created a new issue for https://github.com/w3c/data-shapes: == reasoning: more of specialized inference constructs == Continuing https://github.com/w3c/data-shapes/issues/351: https://graphdb.ontotext.com/documentation/11.0/rules-optimisations.html#propchain gives another important example: a 2-place `PropChain` instead of the general `owl:propertyChainAxiom`. `owl:propertyChainAxiom` needs to unroll the `rdf:List` representing the chain, which makes it harder to implement. Most chains found in practice are 2-place chains (and a chain of any length can be implemented as a sequence of 2-place chains), so let's consider ``` PropChain(?p,?q,?r). ?x ?p ?y. ?y ?q ?z => ?x ?r ?z ``` https://rawgit2.com/VladimirAlexiev/my/master/pubs/extending-owl2/index.html gives yet more variations on the topic, eg `transitiveLeft` is like `transitiveOver`, but extends the chain on the left not the right, i.e. ``` transitiveLeft(?p,?q). ?x ?q ?y. ?y ?p ?z => ?x ?p ?z transitiveOver(?p,?q). ?x ?p ?y. ?y ?q ?z => ?x ?p ?z ``` https://graphdb.ontotext.com/documentation/11.0/rules-optimisations.html#translating-owl-constructs-to-specialized-property-constructs shows how `owl:TransitiveOver` and `owl:propertyChainAxiom` can be converted to these specialized constructs. Now, what does that mean for SHACL rules? I don't yet know, but it's in the vein of "special constructs can sometimes be implemented more efficiently than more generic or "standard" constructs". Please view or discuss this issue at https://github.com/w3c/data-shapes/issues/353 using your GitHub account -- Sent via github-notify-ml as configured in https://github.com/w3c/github-notify-ml-config
Received on Wednesday, 9 April 2025 16:42:21 UTC