Replies: 1 comment
-
The above query looks pretty simple and easy. As long as you are providing some curies, then it seems unlikely that one-hop queries can go bad. Your example is answered easily by 4 of our KP sources in parallel with the slowest taking 6 seconds. We do have some safeguards to prevent CURIE-less queries. For example, this:
could easily go off the rails. You would probably want to intercept and decline that. Multihop queries can also easily blow up quickly. Often some pruning strategy to prevent blow ups would be necessary and this is part of building an ARA. It seems like it could be an amusing little project to write a class to estimate how expensive a query graph is. |
Beta Was this translation helpful? Give feedback.
-
Each KPs will need to build separately their own Query Engine to resolve TRAPI queries
This document plan to give recommendations to implement the rules: https://github.com/NCATSTranslator/ReasonerAPI/blob/edeutsch-ImplRules/ImplementationRules.md
I am starting this discussion, to see if we can improve collaboration when implementing this query engine (which will help having a more stable network more quickly)
I have a question regarding to the potentially really complex that can be easily created by people writing TRAPI, even without noticing it, which will put a lot of stress on the KP queried, potentially crashing it if the right safeguards have not been set
The TRAPI query engine should be able to understand query such as :
Depending on how the user build the query it can potentially create really complex resolution matrix. This matrix size will grow as a cartesian product of all arrays provided in the query.
This lack of defined structure seems to leave a lot of room for interpretation, and most KPs will probably implement hardcoded safeguard to prevent crazy, but allowed, matrices to break their system (cf. the example query I provided)
Are there any thoughts on this? Maybe someone already looked into "cleaning up" this matrix? Maybe using some inference from the BioLink model?
Beta Was this translation helpful? Give feedback.
All reactions