Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Provide configurations for reasoning with TBoxes as ABoxes #12

Open
cmungall opened this issue Aug 7, 2019 · 2 comments
Open

Provide configurations for reasoning with TBoxes as ABoxes #12

cmungall opened this issue Aug 7, 2019 · 2 comments

Comments

@cmungall
Copy link

cmungall commented Aug 7, 2019

Context: @deepakunni3 is building an uber kg for translator. We just want to use simple edges for existentials. See https://douroucouli.wordpress.com/2019/07/11/proposed-strategy-for-semantics-in-rdf-and-property-graphs/

We want to propagate properties down is-a hierarchies @realmarcin will take results and analyze as matrix

Here we want to ignore the OWL translation rules and instead just have rules like

?c owl:subClassOf ?d .
?d ?r ?y .
?r a owl:ObjectProperty .
==>
?c ?r ?y .

possibly also annotating triples with inference provenance.

Can we have these rules stored in this repo, and have an option to use these rather than owl ones?

@balhoff
Copy link
Owner

balhoff commented Aug 8, 2019

Do you need another rule to turn restrictions into triples?

?d owl:onProperty ?r .
?d owl:someValuesFrom ?e .
==>
?d ?r ?e .

@balhoff
Copy link
Owner

balhoff commented Aug 9, 2019

@cmungall @deepakunni3 by the way you can do this already via the command line. The OWL-to-rules translation is only applied to an ontology passed via the --ontology option. You can alternatively, or in addition, directly provide rules using the --rules option. The rules are in Jena syntax; however only triple patterns are supported (not other constraints supported by Jena).

Make a rule file myrules.txt like this:

[ (?c owl:subClassOf ?d), (?d ?r ?y), (?r rdf:type owl:ObjectProperty) -> (?c ?r ?y) ]
[ (?d owl:onProperty ?r), (?d owl:someValuesFrom ?e) -> (?d ?r ?e) ]

Then you can run like this:

arachne --rules=myrules.txt --data=myontology.ttl --export=inferred.ttl

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

2 participants