Can we have an option to make the reasoner trim* the redundant is_a links that result from integrating cross-product definitions into the class heirarchy?
*By trim I mean
(a) remove them from display in the reasoned ontology
(b) remove them from versions of the ontology that result from saving implied links.
I've posted an example of the problem here:
intercalary segment sensillum
intersection_of: sense organ
intersection_of: part_of intercalary segment
With reasoning, we get redundant links like this:
. is_a dorsolateral papilla <-
. is_a intercalary segment sensillum
. . is_a dorsolateral papilla *
*= inferred link
<- = hard link, now redundant.
Note - the hard link should stay in an edited copy of the ontology (otherwise the XP defs won't work!). But I'm proposing that they should be removed from display in the reasoned ontology and from version saved with reasoned links for public consumption.
Relevant screenshots - including one showing how this works already in Protege4, are shown here: