robot
robot copied to clipboard
robot reduce should remove redundant type axioms
Example
ROBOT REDUCE does not remove redundant classification (Typing) of DL1_aDPNa as cell in this case:
Declaration(Class(<http://scratch#cell>))
Declaration(Class(<http://scratch#neuron>))
Declaration(NamedIndividual(<http://scratch#DL1_adPN>))
SubClassOf(<http://scratch#neuron> <http://scratch#cell>)
ClassAssertion(<http://scratch#cell> <http://scratch#DL1_adPN>)
ClassAssertion(<http://scratch#neuron> <http://scratch#DL1_adPN>)


It should.
Please can this be added?
CC @hkir-dev is available to implement this if we agree the change should be made.
I support this change, it's an extension of reduce which is totally in the spirit of it. Probably we need a parameter to retain backwards compatibility.. what about --axioms with OWLAPI axiom types as parameters? This keeps us flexible moving forward.
I also support this. Currently the docs state that reduce only removes subClassOf axioms. If we're going to go the route that @matentzn suggested, then I think it makes sense to implement everything at once and allow the following for the --axioms option: subclass, type, subProperty (differentiate between data/object?)... there's also domains & values to consider (would these be used?). That's a lot of work to just get it working for individuals, though.
I agree that we should add this with a new option. We can start small or with low-hanging fruit, but let's continue this discussion and be very clear about what we want to do.
I think an MVP implementation would extend only to support redundancy stripping of type assertions from individuals with argument --axioms subClass Type. Let's leave subProperty to a later iteration.