The issue
So I realized that a lot of methods for SyncOntology could be helpful but are currently unavailable on Python-side, and I currently find myself implementing by hand in very roundabout ways.
For example, the only way to verify that an ontology contains an axiom on Python-side is to go through all the axioms and check if the axiom is in it. Likewise, if we want to check if an OWLClass/OWLObjectProperty/etc is in an ontology, we have to go through all the classes/object properties/etc of the SyncOntology then verify.
So my thought is that there are a couple of useful Java-side methods that we could basically expose as class methods on Python-side.
Some examples of useful methods:
getAxioms
containsAxiom
containsClassInSignature, containsObjectPropertyInSignature, containsDataPropertyInSignature, containsAnnotationPropertyInSignature, containsIndividualInSignature
isDeclared
getPunnedIRIs (useful for reasoning tasks)
What are your thoughts?
The issue
So I realized that a lot of methods for
SyncOntologycould be helpful but are currently unavailable on Python-side, and I currently find myself implementing by hand in very roundabout ways.For example, the only way to verify that an ontology contains an axiom on Python-side is to go through all the axioms and check if the axiom is in it. Likewise, if we want to check if an
OWLClass/OWLObjectProperty/etc is in an ontology, we have to go through all the classes/object properties/etc of theSyncOntologythen verify.So my thought is that there are a couple of useful Java-side methods that we could basically expose as class methods on Python-side.
Some examples of useful methods:
getAxiomscontainsAxiomcontainsClassInSignature,containsObjectPropertyInSignature,containsDataPropertyInSignature,containsAnnotationPropertyInSignature,containsIndividualInSignatureisDeclaredgetPunnedIRIs(useful for reasoning tasks)What are your thoughts?