Right now, relax indiscriminately relaxes all equivalent class axioms regardless of their shape. The original idea was to be able to turn logical definitions of the form A = B and R some C and R some D and R some E
(simple conjunctions) into
A sub B
A sub R some C
A sub R some D
A sub R some E
Using relax on all axioms indiscriminately does not make much sense, see here:
There is little value in relaxing a complex axiom like that.
I would like to propose adding a new option to relax:
--simple-equivalent-classes-only
Which restricts the operation of relax to only axioms of the form:
A = B and C and D
where B, C and D are all class names or simple existential restrictions.
Motivation:
The main use case of relax
, as far as I understand, is to project a complex logical structure using equivalent class axioms into a more graphy structures that can be leveraged by graph processing. The workflow usually goes something like: relax->reduce-> delete equivalent class axioms
to generate a simple representation of the ontology ala OBO format.
For uPheno, I need to be able to run relax
, and then delete all equivalent class axioms in the ontology and rewrite them to something else. Unfortunately, because ODK mandates the relax->reduce
chain in default releases, I do get these terrible subClassOf axioms everywhere now - which are much much harder to filter out after the fact with ROBOT.
RetroSearch is an open source project built by @garambo | Open a GitHub Issue
Search and Browse the WWW like it's 1997 | Search results from DuckDuckGo
HTML:
3.2
| Encoding:
UTF-8
| Version:
0.7.4