Implement a GET of Network entity by some Identifer
11281
Reporter: trobertson
Assignee: trobertson
Type: Task
Summary: Implement a GET of Network entity by some Identifer
Priority: Blocker
Resolution: Fixed
Status: Closed
Created: 2012-06-01 14:39:27.973
Updated: 2013-12-16 17:50:53.621
Resolved: 2012-06-04 16:03:48.154
Description: It does not appear that there is a way to get NetworkEntities by an Identifier through the API at the moment.
E.g. "Give me datasets that are identified with the GBIF Portal Data Resource ID of 101"
This is a blocker for the occurrence download service to work, as it needs to get datasets and their citation strings, using these IDs.
Looks like all search for the registry goes through SOLR, so this means a new multivalued field for the index.]]>
Author: trobertson@gbif.org
Created: 2012-06-01 17:15:25.324
Updated: 2012-06-01 17:15:25.324
Alternatively this could be done with a search option on the API for existing resources. (e.g. adding ?identifierType=GBIF_DATA_RESOURCE_ID&identifierValue=10), or as a new Resource altogether (e.g. /dataset/identifier/GBIF_DATA_RESOURCE_ID/10)
So the options:
a) push to SOLR
b) add to the
i) using a query param
ii) creating a new resource
a) has the annoyance that this is a 2 part multi value field.
a) also currently only supports datasets
a) is the only option that will cover external (XML) style datasets
b.i) is simple and in keeping with the REST principles
b.ii) just seems plain nasty (the proposed URI anyway)
Going to implement b.i) unless any objections are raised. This means that all registered agents (/node /organization /dataset) will be searchable immediately by any registered identifiers.
Author: jcuadra@gbif.org
Created: 2012-06-01 17:34:00.453
Updated: 2012-06-01 17:34:00.453
+1 to b.i)
We already had documented some support at http://dev.gbif.org/wiki/display/POR/Webservice+API though
Specifically the "identifierType" parameter. We will just be mising the "identifierValue"
Author: kbraak@gbif.org
Comment: The proposed url way (b) doesn't seem too too nasty. And what if the identifier type param was optional, since some of the identifiers will be unique?
Created: 2012-06-01 17:34:44.422
Updated: 2012-06-01 17:34:44.422
Author: trobertson@gbif.org
Comment: Thanks, given b.i) is not dissimilar to the documented existing /dataset?tag=... API I will implement that approach
Created: 2012-06-01 18:15:25.959
Updated: 2012-06-01 18:15:25.959
Author: trobertson@gbif.org
Comment: Fixed with an IT on the ws client and documented in the wiki
Created: 2012-06-04 16:03:48.186
Updated: 2012-06-04 16:03:48.186