CasperWA / turtle-canon

A tool for canonizing Turtle (`.ttl`) ontology files.
https://CasperWA.github.io/turtle-canon
MIT License
2 stars 1 forks source link

Determine how to handle different sources (`turtle-canon diff`) #17

Open CasperWA opened 2 years ago

CasperWA commented 2 years ago

It seems an ontology generated by EMMOntoPy and subsequently imported and re-saved from Protégé has more triples. The triples usually come from making implicit connections explicit (like linking up concepts from the EMMO to base concepts of OWL).

What should happen here? What the ultimate truth when it comes to such cases? Are the triples the ultimate form of truth? In which case one cannot properly canonize an ontology generated between different sources. Is a reasoned ontology equal in content to its non-reasoned counterpart? Especially from the view of canonization?

This is related to #15.

Tagging @jesper-friis, @francescalb, @emanueleghedini, @quaat

jesper-friis commented 2 years ago

I don't think that there exists an ultimate truth in these cases. Protege clearly does some simple reasoning just by opening a file. FaCT++ does more, but neither are complete.

Semantic equivalence is not the same as logical equivalence.

For the point of view of canonising turtle, I think you should limit yourselves to semantic equivalence and not walk into the deep scary forest of logical reasoning. Hence, a (partly) reasonened turtle file is simply different from the unreasoned one.

CasperWA commented 2 years ago

For the point of view of canonising turtle, I think you should limit yourselves to semantic equivalence and not walk into the deep scary forest of logical reasoning. Hence, a (partly) reasonened turtle file is simply different from the unreasoned one.

Right. Then that'll be the limit at this point in time.

It's given me an idea for a turtle-canon diff functionality, however, which could nicely show the set of triples that differ from one ontology to the other. In the future this might be useful as an interactive way to add/remove/update triples, if so desired. I.e., one could remove the explicit triples interactively added by Protégé, in this case.

francescalb commented 2 years ago

I also think that a (partly) reasoned ontology is different from the non-reasoned one, so we should have differences between them. I guess this brings on the question whether we shold try to emulate the reasoning that is happening in protege in EMMOntoPy