Closed cmungall closed 1 year ago
Yes! This issue is already so much of a pain that I have created my own ontology resource to help normalize these ChEBI relations (and other important relations haphazardly handled in the hashtag namespaces inside other ontologies)
Follow up from meeting on Jan 3, 2023:
Why is transitivity important?
What we want to do is make a way of saying that H2CO3 is related to CO32- through a chain of 2 conjugate acid relationships. The interesting thing in this scenario is that HCO3- is both an acid and a base.
While this is a simple example, there could be many more complex examples with multiple hydrogen acceptors/donors (think a complicated protein) that can have lots of different protonation states and have much more interesting networks of conjugate acids/bases.
From chat: Bradley Varner pointed out that conjugate acid / base pairs differ by 1 proton loss / gain. DN has confirmed this using multiple sources. Thus, by definition, there cannot be a transitive version that mentions ‘conjugate’
Bradley Varner pointed out that conjugate acid / base pairs differ by 1 proton loss / gain. DN has confirmed this using multiple sources. Thus, by definition, there cannot be a transitive version that mentions ‘conjugate’
Unfortunately, this is inconsistent with how this is used in CHEBI.
CHEBI has this implicit design pattern exemplified by citrate:
The entailment here is of course:
Even though this involves the loss of 4 protons.
It follows from this that the CHEBI relations cannot mean direct/1-proton-loss-gain. It has to be either transitive or uncommitted.
I think the real intent of the relations is that they should be direct at the level of the ontology graph, but this is meaningless in OWL.
If I were CHEBI I would want both transitive and direct/1-proton relations, and I would assert the direct relation for the specific protonated forms, and the transitive for the cation/anion grouping class, but that may be a big lift for them at the moment - what do you think @amalik01?
It seems like the CHEBI modelling needs to be revised. Conjugate acid / base pairs, by definition, involve the gain / loss of only 1 proton. If a transitive property is to be made, it should not invoke the term "conjugate".
A conjugate acid carries one unit of positive charge more than the base but historically in ChEBI we have extended the definition of conjugate acid/base to include the gain/loss of more than 1 unit of charge as its not always possible to add every protonated form of a specific compound to the database. The extended definition makes it easier to link ionised forms of a compound that differ by more than 1 unit of charge (E.g. CHEBI:57252) with its neutral form (e.g. CHEBI:10956).
I agree with @bvarner-ebi. CHEBI should use definitions consistent with the broader scientific use. The current conjugate acid/base relations should be restricted to the appropriate set, and a different relation for the transitivity. Off the top of my head, how about something like:
is_protonated_form_of (is_acid_form_of?)
is_conjugate_acid_of
is_deprotonated_form_of (is_base_form_of?)
is_conjugate_base_of
So, if A is_conjugate_acid_of B, and B is_conjugate_acid_of C, then A is_protonated_form_of C. Note that this uses the Brønsted–Lowry definitions of acid and base. Precise terminology can be worked out, but hopefully the intent is clear.
I like your proposal @nataled. As an aside, this is following an established RO design pattern.
However, we risk creating a terminological muddle if the existing CHEBI relations (which don't have numeric IDs) are named for the non-transitive subproperties but are actually equivalent to the transitive superproperties.
Perhaps we just live with this in the short term, and when CHEBI have a new system for generating OBO/OWL in place they can switch to using relations with proper IDs and correct semantics? This still worries me.
Another possibility is that we regard the existing relation names and tainted and instead have:
RO:new1 is_protonated_form_of (is_acid_form_of?)
RO:new2 is_direct_conjugate_acid_of
RO:new3 is_deprotonated_form_of (is_base_form_of?)
RO:new4 is_direct_conjugate_base_of
We can then map the existing hopefully soon to be deprecated CHEBI URIs to the parents.
This is not super-satisfactory as my proposed terminology is awkward and a bit redundant, but it has the advantage of not conflicting with the same labels in the current CHEBI meaning something different.
However, because we will be using IDs, we can simply rename RO:new2 and RO:new4 back to Darren's original proposal once the existing confusing CHEBI URIs are deprecated?
RO:new2 is_direct_conjugate_acid_of ... RO:new4 is_direct_conjugate_base_of
This suggests there are "indirect" conjugate acids / bases, which seems semantically incorrect since "conjugate" denotes a pair-based relationship.
Using "is_de/protonated_form_of" or "is_de/protonated_species_of" for the transitive property sounds like a reasonable approach.
CHEBI includes a number of relations that are very useful for queries, in particular conjugate base/acid relations
In CHEBI these have no associated logical axioms other than inverse_of (which of course in OWL obtains on the instance level - chebi makes reciprocal assertions)
there is no documentation on these in the OWL, but there is a section in the chebi user guide that details their use:
We should coordinate with CHEBI such that there is OWL for these relations that have full documentation
Additionally, these are not transitive in CHEBI - they are used to query the direct conjugate. It would be useful to have transitive versions.