Closed wdduncan closed 4 years ago
@wdduncan you are right—currently it's outputting a very literal translation of the axioms used in the reasoning tests. An immediate thing you could do is run the output through robot reason
with --axiom-generators "SubClass EquivalentClass"
.
Yes ... I was just trying a step in the output :(
Will the -- axiom-generators "SubClass EquivalentClass"
option eliminate the redundant is_a
statements?
Try also passing --remove-redundant-subclass-axioms true
to robot reason
. I'm not completely sure but I think these will go away.
Thanks!
This command:
robot reason -e all --axiom-generators "SubClass EquivalentClass" -i axioms-boomer.owl -o axioms-boomer-reasoned.owl
generates the reasoned file, but produces a number of errors:
2020-04-13 18:20:33,784 ERROR org.obolibrary.robot.ReasonOperation - Reference violations found: 6 - reasoning may be incomplete
2020-04-13 18:20:33,786 ERROR org.obolibrary.robot.ReasonOperation - Reference violation: InvalidReferenceViolation [axiom=SubClassOf(<http://boom.monarchinitiative.org/vocab/DisjointSibling#47310af97e7ead4f66b3d7f107d5880706f0cae3> <http://purl.obolibrary.org/obo/NCIT_C160214>), referencedObject=<http://purl.obolibrary.org/obo/NCIT_C160214>, category=DANGLING]
2020-04-13 18:20:33,786 ERROR org.obolibrary.robot.ReasonOperation - Reference violation: InvalidReferenceViolation [axiom=Declaration(Class(<http://purl.obolibrary.org/obo/NCIT_C160214>)), referencedObject=<http://purl.obolibrary.org/obo/NCIT_C160214>, category=DANGLING]
2020-04-13 18:20:33,786 ERROR org.obolibrary.robot.ReasonOperation - Reference violation: InvalidReferenceViolation [axiom=SubClassOf(<http://purl.obolibrary.org/obo/PECO_0000137> <http://purl.obolibrary.org/obo/NCIT_C160214>), referencedObject=<http://purl.obolibrary.org/obo/NCIT_C160214>, category=DANGLING]
2020-04-13 18:20:33,786 ERROR org.obolibrary.robot.ReasonOperation - Reference violation: InvalidReferenceViolation [axiom=SubClassOf(<http://purl.obolibrary.org/obo/NCIT_C29029> <http://purl.obolibrary.org/obo/XCO_0000543>), referencedObject=<http://purl.obolibrary.org/obo/XCO_0000543>, category=DANGLING]
2020-04-13 18:20:33,786 ERROR org.obolibrary.robot.ReasonOperation - Reference violation: InvalidReferenceViolation [axiom=Declaration(Class(<http://purl.obolibrary.org/obo/XCO_0000543>)), referencedObject=<http://purl.obolibrary.org/obo/XCO_0000543>, category=DANGLING]
2020-04-13 18:20:33,786 ERROR org.obolibrary.robot.ReasonOperation - Reference violation: InvalidReferenceViolation [axiom=SubClassOf(<http://boom.monarchinitiative.org/vocab/DisjointSibling#6212d8e82b7be24d8b37ade44a50fda4ead7c8c5> <http://purl.obolibrary.org/obo/XCO_0000543>), referencedObject=<http://purl.obolibrary.org/obo/XCO_0000543>, category=DANGLING]
Is there another flag I need to pass for the DANGLING
errors?
Also, when I convert to obo format, there is a line called owl-axioms
that lists all the axioms in functional syntax. Is this normal? I found an explanation in the documentation about them being untranslatable, but there are just a lot of them.
but produces a number of errors:
This is normal ROBOT output, nothing to worry about here.
Also, when I convert to obo format, there is a line called owl-axioms that lists all the axioms in functional syntax. Is this normal? I found an explanation in the documentation about them being untranslatable, but there are just a lot of them.
That's right, these are axioms that can't be translated to OBO format. Do you need to use OBO format? I avoid it whenever possible.
Plus 100 to avoid, but Bill has to live in OBO-grepistan.. no choice. I wouldn’t worry about what’s in owlaxioms for now.
Closing this in favor of #44.
I ran boomer on our ECTO ontologies. The
output.txt
lists a number of equivalences: https://github.com/EnvironmentOntology/environmental-exposure-ontology/blob/issue-97/src/mapping/output.txtBut in the
axiom-boomer.obo
file these areis_a
relations: https://github.com/EnvironmentOntology/environmental-exposure-ontology/blob/issue-97/src/mapping/axioms-boomer.oboLogically,
ECTO:0002049
andXCO:0000105
would be inferred to be equivalent. Is possible for you run the reasoner on the output before creating theoutput.ofn
?cc @cmungall