ontology icon indicating copy to clipboard operation
ontology copied to clipboard

Update import module process #1154

Open markus-rothkoetter opened this issue 2 years ago • 3 comments

Summary of the discussion

This PR introduces the new structure for imported modules which is described in #1154 . It solves the potential dataloss from #1118 and allows to automatically generate the extractions from the Relation Ontology.

Key-Elements of current change

This is an architectural change and does not involve content changes.

Everything should work normally, there is just one change by RO-developers which might be important to note: bearer of is now relabeled has characteristic (Those terms were used as alternative label before, so they switched the main label in the source ontology. As this does not affect the IRIs, all axioms should stay intact.)

  • replacing ro-module by ro-extracted as suggested in discussion
  • introducing oeo-import-edits.owl as a unified module for all changes to imported concepts and properties
  • moving all custom ro-related axioms from oeo.omn and ro-module to the new oeo-import-edits.owl
  • fixing some minor stuff like an outdated IRI in the extraction-script

This PR is quite extensive, so I limited changes to the minimum extent. oeo-shared is filled with many custom axioms related to ro-extracted. Once this PR is included, I think moving them to oeo-import-edits might be the best choice. Otherwise it is no coherent, proper solution in my opinion.

Further steps

  • duplicating the process for iao-module using the same unified oeo-import-edits-file for custom axioms
  • cleaning up oeo-shared concerning all custom axioms related to imported concepts + properties ~~creating a wiki-entry on how to use the scripts for generating updated ro-extracted + iao-extracted-files~~ (already done, see https://github.com/OpenEnergyPlatform/ontology/wiki/Modules-of-the-OEO)

markus-rothkoetter avatar Aug 12 '22 15:08 markus-rothkoetter

I added the respective documentation to the wiki, so that there's a reference for future edits.

@l-emele Thank you for your review!

markus-rothkoetter avatar Aug 30 '22 11:08 markus-rothkoetter

@mglauer: You are also appointed as reviewer. Could you please review this PR as I am not that familiar with imports.

l-emele avatar Sep 08 '22 08:09 l-emele

I am not completely familiar with imports. But at least, everything looks reasonable and Protégé keeps working. So I accept this PR. However, I would be glad if a second person could review this PR.

@MGlauer or @fabianneuhaus : Could you please review this PR?

l-emele avatar Oct 04 '22 06:10 l-emele

@stap-m : What do we do with this PR that is now open for ages?

l-emele avatar Nov 14 '22 13:11 l-emele

I will take a look and discuss this internally asap.

stap-m avatar Nov 14 '22 15:11 stap-m

To fix the merge conflicts, I removed the "inverse of" axioms from ro-module.owl for RO_0002234 / has output and RO_0002352/ input of, since they are already moved to the new oeo-import-edits.owl.

Further, there are some BFO-classes in ro-module.owl, which were originally not part of this PR and were probably added in a later PR. I leave them in the module, because I don't have the overview of their purpose, yet. We might delete / move them to oeo-import-edits.owl later. The classes are: BFO_0000002, BFO_0000015, BFO_0000017, BFO_0000019 and BFO_0000040

stap-m avatar Jan 10 '23 08:01 stap-m

To me, the PR seems fine now. Since the PR contains bigger structural changes, I added you as a further reviewer @areleu. It would be great to finish this PR soon / before the next release.

stap-m avatar Jan 10 '23 09:01 stap-m

I will take care of this this week.

areleu avatar Jan 10 '23 12:01 areleu

To fix the merge conflicts, I removed the "inverse of" axioms from ro-module.owl for RO_0002234 / has output and RO_0002352/ input of, since they are already moved to the new oeo-import-edits.owl.

Further, there are some BFO-classes in ro-module.owl, which were originally not part of this PR and were probably added in a later PR. I leave them in the module, because I don't have the overview of their purpose, yet. We might delete / move them to oeo-import-edits.owl later. The classes are: BFO_0000002, BFO_0000015, BFO_0000017, BFO_0000019 and BFO_0000040

Only this point confuses me a little but I don't see any critical issues

Edit: These are the PRs/commits asociated to these:

https://github.com/OpenEnergyPlatform/ontology/pull/1353 https://github.com/OpenEnergyPlatform/ontology/commit/2594fc85b3d0abbd3720866a862c0fdf995d0f72 https://github.com/OpenEnergyPlatform/ontology/pull/485 https://github.com/OpenEnergyPlatform/ontology/commit/971606aac787b5ba31f517f65b609175b6715f7f

I think they are added automatically by owl API. They seem to be used in some axioms, but AFAIK one does not need to do the Class declaration to use it.

areleu avatar Jan 10 '23 13:01 areleu