Open colleenXu opened 2 years ago
These are quick example queries I wrote to test some TRAPI 1.3 code. I want to do some more thinking / writing before using these as examples / showing these to others in Translator.
(for example I think the QEdge.qualifier_constraints example needs valid biolink-model 3.0 predicates...)
Note that PRs-merging / discussion is still happening over qualifier constraints. https://github.com/NCATSTranslator/ReasonerAPI/pull/364
EDIT: Found this issue that may be useful for tracking changes https://github.com/NCATSTranslator/ReasonerAPI/issues/357
Recording an exercise I did during the Sept 2022 Relay: trying to convert the following question to TRAPI
Question: "What are compounds that significantly reduce CHRNA1 expression while increasing CHRNA1 expression in myocytes?"
I also noticed the use of qualified predicate in the biolink-model, but I don't remember seeing this field in TRAPI 1.3...
Also what are qualifier sets for (should the "object" stuff and anatomical context stuff be separate sets?)?
Putting here as food for thought: Is there a case for multiple kinds of constraints in 1 query? Or multiple constraints of the same type in 1 query?
Putting here as notes:
Note that the latest implementation rules were released in TRAPI v1.3.0 Sept 1st: https://github.com/NCATSTranslator/ReasonerAPI/blob/v1.3.0/ImplementationRules.md. It has info on QNode constraints, QEdge attribute_constraints (on resource allow/denylist), and QEdge qualifier_constraints.
what (if anything) in this ticket is still relevant?
@andrewsu
Here's my opinions (but I didn't dig super deep). My recommendations are in the bottom section of this comment.
QNode.constraints: based on console logs, BTE is running defunct code related to this (any logs about "constraints"). So I think we need to address this
QEdge.attribute_constraints: I think this effort is now defunct, and we may not want to implement this. However, we may want to implement the guideline for properties on QEdges.
QEdge.qualifier_constraints: We've implemented this, and it's done as far as I can tell.
So....my recommendations are: close this issue, and open 1-2 new issues
This is for brainstorming these "constraint"/post-query filtering behaviors (we can make other issues once we have a concrete idea of the requirements and logic/behavior we want).
The stuff below was previously in #450 posts but has been moved here and edited.
Issues:
QNode.constraints
QEdge.attribute_constraints
QEdge.qualifier_constraints