biolink-model
biolink-model copied to clipboard
Two pairs of 'inverse' predicates have no canonical_predicate specified?
Question:
This question relates to these two pairs of inverse predicates in Biolink 3.0.3:
-
increases activity of
/activity increased by
-
positively regulates
/positively regulated by
For each pair, neither predicate appears to be labeled as the canonical_predicate
. Not sure if that was a mistake, or if we shouldn't count on every pair of inverse predicates having a canonical_predicate
specified?
Possibly related to #657
Thanks @nlharris! I think this may be a bit different from #657 - that issue appears to be about predicate opposites (e.g., treats/causes) whereas this one is about predicate inverses (e.g., treats/treated_by)?
Hi @amykglen - you're right that these don't have canonical annotations. Noting also that both of these predicates are deprecated in Biolink 3.*?
increases activity of predicate would be converted to an "affects" predicate, with a subject|object_aspect_qualifier = "activity" and a subject|object direction_qualifier of "increased" (there could be a qualified_predicate here too, depending on what other qualifiers you need to use here).
positively regulates predicate will changed based on what your subject/objects are...there is an "upregulated qualifier" for the 'regulates' predicate (if you look at the [chemical entity or gene or gene product regulates gene association](https://github.com/biolink/biolink-model/blob/52e85fce4917dbaf313b68c3c4a2558c627069d0/biolink-model.yaml#L11470)
for example). you'd use this if statement is talking about a biologically evolved control mechanism
. Alternatively, you'd use a "affects" predicate with "increased" and "abundance or activity" qualifiers (see [chemical affects gene](https://github.com/biolink/biolink-model/blob/52e85fce4917dbaf313b68c3c4a2558c627069d0/biolink-model.yaml#L10347)
association).
https://github.com/biolink/biolink-model/blob/master/images/predicate_transformation.pdf
Ah, I forgot that they're deprecated. Part of our ARAX code loads the entire Biolink YAML file, and that's where this was causing an issue for us. (Meaning, we weren't actually assigning these predicates to edges, just parsing them from the Biolink YAML file.)
Since they're deprecated I suppose there's no need to fix this. Is there a plan for how long such deprecated predicates will be kept around in the Biolink YAML file?
Good point; I am removing all deprecated predicates from the next release of Biolink.
ok! I'll go ahead and close this issue then since I don't think there's anything further to do