ontodev / robot

ROBOT is an OBO Tool

Home Page:http://robot.obolibrary.org

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

Export throws exception when using "Equivalent Property" heading

dlutz2 opened this issue · comments

commented

ROBOT 1.9.4
When exporting an ontology containing an annotation property (defined or used), an export command with an "Equivalent Property" header throws an ClassCast exception when attempting to cast an Annotation property to an Object property in EntitySearcher.getEquivalentProperties(). This is called from ExportOperation.getRow() in the switch (iriStr) statement with case "http://www.w3.org/2002/07/owl#equivalentProperty" with an Annotation Property as the entity. The if (entity.isOWLAnnotationProperty()) portion of that case statement should be a no-op since there is no Equivalent Annotation Property axiom in OWL.
EntitySearcher naively assumes if the input property is not a data property its an Object Property, doesn't check and attempts to cast the input to an ObjectPropertyExpression
This can be reproduced with an ontology which contains a single annotation property declaration.

Thank you for the report @dlutz2 :) Is this one on your team's radar as well?

commented

Yes, it is.