-
Notifications
You must be signed in to change notification settings - Fork 8
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Add superclass mapping from COB characteristic to ChEBI role #173
Conversation
You would think this would be straightforward, right? TL;DR - I think CHEBI:role should be up a level, a subclassof "characteristic" COB follows BFO in forcing you to make a distinction between "role" and "disposition". (aside: I think some of these are processes) After years of working with upper ontologies I am now convinced this is like forcing you to choose whether your database is painted the color of angel's wings or demon's fur. We could go through the CHEBI role hierarchy and look at the individual terms and analyze using a BFO approach whether those terms are "dispositions" "qualities" or "roles". It would be a mix. And there would be many that would be on the edge. We could spend the next decade arguing about these at various meetings, and leave a giant trail of unclosed github tickets in our wake. So in fact we had a similar issue with PATO, at one point we considered splitting the ontology into qualities vs dispositions: But we discovered we would be having angels-on-pinhead discussions about whether mass, color, etc were dispositions or qualities. The fact is, the concepts as used by scientists have aspects of both, and no user cares about the distinction we have in fact made the decision over here in COB that we would formally uncommit PATO and just put it's root at the parent class of 'characteristic'
This leaves open the possibility that in future PATO commits individual sub-branches to subclasses - but realistically, our time is limited, no one has resources to do this kind of pointless work I recommend we do the same with CHEBI - make chebi role a subclass of characteristic, and CHEBI can choose to make individual commitments about sub-branches later on. Another view of the CHEBI role branch is as shortcuts for more direct statements pertaining to more concrete classes, as we describe here: https://doi.org/10.26434/chemrxiv.12591221.v1 |
Talking about drug product separately: the proposed equivalence doesn't work since COB drug product is a material entity, and chebi:drug is a role, these are disjoint in COB. See #140 for our drug issues |
Thanks for the detailed explanation, Chris. If I had to guess, I would probably call ChEBI roles dispositions.
^ Such wisdom :)
Will do
One day, somebody will help me write a script to turn this all into nice OWL that can be integrated with everything else in OBO, then we can finally submit this paper. @matentzn looking at you!
I'll also take this out. Sorry I didn't see that issue before. However, maybe I can just change it to rdfs:seeAlso in case someone reads this later and also has the same idea that I did |
@cmungall should I run some of the build functions before merging this PR? |
I approved github actions for you, I trust you not to mine bitcoin, so now PR QC checks should automatically run for you. No need to do anything else |
@@ -92,6 +92,7 @@ COB:0000076 objective specification owl:equivalentClass IAO:0000005 objective sp | |||
COB:0000079 plan specification owl:equivalentClass IAO:0000104 plan specification . | |||
COB:0000080 complex of molecular entities rdfs:subClassOf owl:Thing owl:Thing | |||
COB:0000088 drug product owl:equivalentClass DRON:0000005 drug product we currently use a different text definition but we believe they do not contradict | |||
COB:0000088 drug product rdfs:seeAlso CHEBI:23888 drug These can't be equivalent because COB drug product is a material entity, and ChEBI's drug is a role. See issue #140 for more information. |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I like this. closeMatch is also not wrong, but I think seeAlso is good as it's even weaker. We should systematize this a bit more
Closes #169
This PR adds an explicit equivalence mapping between COB and ChEBI:
sssom:superClassOf
CHEBI:50906 (role)rdfs:seeAlso
CHEBI:23888 (drug)This one seems pretty straightforward, so maybe there's a reason these were difficult to align before, so feedback or changes (e.g., different relationship) are welcome.
Note: I tried running the
make
command but got an error (see #174). I'm curious if there are tools built in to the make command that can automatically check that adding an equivalence like this doesn't cause any problems