Open patrickkwang opened 5 years ago
Yes, I think it would. The other thing that we should consider in here is to what degree do we care about the program_runner approach? It was useful for being able to do things like traverse arbitrary paths, without explicitly caring about identifiers, and so on.
We still use the machinery for creating the database, and the question in my mind is whether we should? I think that there are cases where the answer is probably, because we're hitting apis that we can't read in bulk. But it's constricting for some cases, and for genetic data, we've ended up bypassing it all together. But when we do that, it gets complicated when/how the synonymization etc all happens.
So again, yes, we should rethink the whole interfaces side, recognizing that we never really want to run in on-the-fly mode.
Most of the stuff available from the interfaces API falls under the umbrella of 'KG metadata', which can as easily be provided by ranker.
The remaining endpoints (synonymize, normalize, and annotate) do share a lot of infrastructure with the KG-building tools. Would it be worthwhile to disentangle them?