geneontology / biolink-api

API for linked biological knowledge
http://api.geneontology.org/api/
6 stars 1 forks source link

[Proposal] Merge back possible routes to master biolink-api #6

Open lpalbou opened 4 years ago

lpalbou commented 4 years ago

Routes of the GO API are here: http://api.geneontology.org/api/

Proposal: The two main routes to be merge back to master biolink-api:

Also have to update the other non critical routes of /ontology/ in the master biolink-api that were merged a year ago.

If implementation allows, /ontol/subgraph/{ontology}/{node} and /ontology/subgraph/{ontology}/{node} should be merged together and the old /ontol/ route should be marked as deprecated (but kept for backward compatibility for a time).

Decide also of the fate of /ontology/term/{id} : simplified version and payload of /bioentity/{id}

Also /bioentityset/slimmer/function is only (and still) used by the ribbon to fill the association table. Do we want to relocate this route in /ontology/ribbon ? Alternatively, we could also move the ribbon route in /bioentityset/ as it essentially handle a list of genes. In any case, the /slimmer/function query should accept the same parameters as /ontology/ribbon (eg include evidence code, exclude IBA, PB, cross mapping). In addition, the slimmer route should also handle a "inverse" mapping parameter to ease the creation of the "other category" in ribbons. This would be done by providing the full list of terms to map to and stating inverse = true; then any annotated terms not mapped to the provided terms/slim will be mapped to a "other" category. This is manually created by two separate queries in the /ontology/ribbon route (https://github.com/geneontology/biolink-api/blob/master/biolink/api/ontol/endpoints/ontology_endpoint.py#L469)

In addition, a number of GO related queries do not use the GOLrAssociationQuery and we may want to redesign those we can to follow that model.

deepakunni3 commented 4 years ago

Additional notes: ribbon/slimmer/function - this might be useful for monarch too when we implement the GO ribbon for display.