Closed matentzn closed 7 months ago
For OMO, the mirror makes sense here.
I have had requests about making it possible to import OMO subsets - people don't want to see all 60 OMO annotation properties in protege if they only use 2!
Is this really an issue?
Its either this or us having to create dozens of OMO subsets in the OMO repo! I think it needs solving. but it also needs to be solved for ORCIDIO and other largely annotation assertion based ontologies.
Considering this issue as well as #849 and #854 :
The subset method robot extract --method subset
is very useful for creating relevant import from RO or OMO.
Using module_type: filter
on RO for example is useless as the object properties in the resulting module will be stripped of their characteristics (i.e. has part is no longer transitive). Subset keep the characteristics, as well as all the annotations, and if you just add the upper BFO classes, you also get the object properties' range and domains.
It also work with annotations to create any subset of OMO that you need.
I just used module_tyle: mirror
to import OMO in CL, and it only gets the two annotations I added in the omo_terms.txt
. https://github.com/obophenotype/cell-ontology/pull/2134
But CL uses "merged" strategy - its weird that it preserves these APs?
Its a bit weirder than I though.
robot extract -I http://purl.obolibrary.org/obo/omo.owl --term OMO:0003000 --individuals exclude --method BOT -o omo_extract.owl
Results in a long list of APs.
robot extract -I http://purl.obolibrary.org/obo/omo.owl --term OMO:0003000 --individuals exclude --method subset -o omo_extract.owl
Is a bit better, but still long..
The closest to a normal subset is
robot filter -i omo.owl --term oboInOwl:hasExactSynonym --trim false -o omo_extract.owl
In any case, given the current behaviour of slme, there is much less of a concern for me now. I will not implement a solution to this issue for now, as the issue is actually not that urgent (we get more nor less properties than what we want).
I will close this issue as not planned, feel free to re-open.
We should have a good import goal that easily covers cases where it is annotation properties we want to import. Currently filter module strips these out..
filter base and extract BOT also make no sense here..
I don't know how that happened. Maybe didn't think of the OMO case here.