INCATools / INCATools/ontology-development-kit

Ideas needed: Workflows to keep edit files clear of foreign axioms

Open
#284 12 comments 0 reactions 0 assignees View on GitHub
enhancement
Dominant language
Dockerfile
Stars
375
Forks
69
Avg merge
3d 5h
Merged PRs (30d)
7

Description

Terminology: native axioms are axioms belonging to an ontology; foreign axioms belong to another ontology and are imported. Typically native axioms are:

- all axioms which mention at least one entity from the ontology namespace
- axiom annotations on other native axioms

Foreign axioms are everything else. Example: in MP
- MP1 sub BFO1 is native
- BFO1 sub BFO2 is foreign
- BFO1 rdfs:label "hello" is foreign

Exceptions could be xrefs:
- BFO1 xref: "MP:1" is foreign
- BFO1 xref: MP1 should be foreign

No matter what I tried, foreign axioms keep creeping in all the edit files I am supporting, probably due to some weirdnesses in Protege, etc. These foreign axioms can confuse ROBOT validation as well; For example if you have a declaration of a GO class in your ontology, but no label; But more importantly, they may become outdated, refer to later obsoleted classes etc; so we really dont want them. But how do we manage their removal in a super simple way?

Potential ideas:
1) I was thinking to add a command in ODK to simply print foreign axioms with SPARQL/ROBOT. That way people can simply choose to remove them manually. The downside is that people who only ever look at the ontology in Protege (there are many!) may have difficulties to really clear out axioms such as declarations or, god forbid, gcis..
2) Ther could be a ODK command that cleans the edit file for foreign axioms. The downside is that this would involve the ODK touching the edit file; I liked the fact that this never happened, because it protects the edit file from unintended changes due to some serialisation issue; but maybe that is over protective?

Any other idea? @cmungall @dosumis @balhoff

Contributor guide

Open the contributing guide

Research direction

No files, tests, or entry points are named. Start by reviewing the two proposed ODK approaches and the foreign-axiom definitions, then seek a maintainer decision on scope; completion cannot be defined until the issue selects an approach and acceptance criteria.

Written by the indexing model from the issue text.

Assessment

Domain
tooling
Issue type
Feature
Difficulty
5/5
Estimated time
Over a week
Activity status
Quiet
Clarity
Needs clarification
Newbie friendliness
25/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.