Slimmer should support either a list of IDs, or the tag that indicates the set of IDs (e.g. goslim_agr)
Would rather not need to hard code the list of IDs (will do for the nonce), but have this embedded in the ontology itself.
If biolink delegates this to scigraph, dependent on https://github.com/SciGraph/SciGraph/issues/207
may be better to get via golr or rdfstore for GO
On the ribbon tracker @nathandunn asked:
We are still allowing folks to pass in a slim, though, right?
I believe what you are asking is whether people should be able to pass in a slim as a set of class IDs?
Yes, we need to support two use cases
- passing in a subset (aka slim) as a set of class IDs
- passing in a named subset (aka slim)
Currrently only 1 is implemented. The proposal is to support 2 as well.
side note: The nomenclature is confusing here. slim and subset are synonyms. "subset" is the canonical term in the OBO format and specification, since slim has connotations of smallness that do not always hold.
Confusingly, I used "slim" as the parameter name in the API, when I should have used "subset" (other side note: we eschew string parsing in the API, no this is a standard http multivalued param)
@lpalbou proposes keeping "slim" as the http param for class IDs (requirement 1), and using "subset" for the named subset (requirement 2). This has the advantage of maintaining backward compatibility.
I think I am leaning towards and alternative: we have two parameters that are synonymous, but "slim" is deprecated. For either parameter, the value can be a class ID or a subset ID. Passing the subset ID expands to the set of class IDs for that subset.
@cmungall I suppose we can duplicate the current slim parameters in subset parameters, then tag all slim parameters as deprecated, hence giving notice to users they should not use the slim parameter anymore. Would that be ok ?
Note: that's what we did with @deepakunni3 regarding the /bioentity/goterm/{id}/genes route, deprecated in favor of /bioentity/function/{id}/genes