Open edeutsch opened 3 years ago
ARAGORN currently reports what KPs were used for any given query in two ways:
The logs will indicate which KPs
The logs will also indicate problems encountered when querying KPs: connection failures, non-compliant responses, timeouts, etc.
ARAGORN identifies KPs to use by querying the SmartAPI registry, so we cannot generate a static list of supported KPs. I believe that the edge provenance and logs should serve any desire for dynamic information about supported KPs.
TRAPI could get in the business of standardizing how we report about KPs that we attempt to contact (independent of whether they end up contributing to results), but that sounds like maybe more than we want to bite off right now?
I think this is addressed in https://github.com/NCATSTranslator/ReasonerAPI/pull/339 ?
Example of addressing this:
test_data_location: https://raw.githubusercontent.com/RTXteam/RTX/master/code/ARAX/Documentation/arax_kps.json
It seems useful for the Translator Consortium to be able to know which KPs each ARA knows how to use. In the past this has been handled with human interaction polling.
Does it seem useful to use the TRAPI definition to communicate which KPs an ARA is using? For example, we could do:
Sort of like a static poll that can be maintained by ARAs.
Another similar approach is not just to have a static statement in the definition, but rather have some active information returned in the Response. For example:
If we wanted to be fancier we could even do it by edge, since which KPs an ARA consults varies by edge.
None of this is necessary of course, but it may be very nice for reporting purposes. It would allow a GUI to create a nifty graph of which KPs were consulted and how it went.