Web Services Help
BCI's primary function is to help integrate information about specimens. This is done using a series of web services.
Note that all web services should be accessed using the shorter URI http://biocol.org rather than the full biodiversitycollectionsindex.org domain.
Globally Unique Identifiers
- LSID Authority BCI uses Life Science Identifiers as its core GUID technology. Every collection has an LSID that is displayed at the top of its associated web page. BCI provides an authority service that handles the resolution of LSIDs into RDF metadata in accordance with the LSID specification and the TDWG LSID Applicability Statement. BCI LSIDs are of the form urn:lsid:biocol.org:col:15670
- LSID Proxy LSIDs are a new technology and largely restricted to the life sciences community. Some consuming applications may not support the LSID resolution mechanism. For this reason BCI provides an LSID proxy dedicated to its own LSIDs. To use the proxy simply prepend the BCI LSID with http://biocol.org/ for example http://biocol.org/urn:lsid:biocol.org:col:15670. This form of the GUID acts as a regular URI. This use of an LSID is colloquially referred to as a pixie.
- URI In their proxied form BCI LSIDs are regular URIs. If you enter them into the location bar of a web browser you will be redirected (via an HTTP 303 redirect) to the web page for that collection. If you request a pixie using an application other than a web browser you will be redirected to the RDF for the collection. In this way pixies support the emerging consensus within the W3C on Dereferencing HTTP URIs and behave like Persistent Uniform Resource Locators (PURLs).
- Shared GUID Services Establishing and maintaining an LSID Authority and associated proxy service can be problematic for many organisations. Because BCI is obliged to maintain such a service anyway it makes sense for it to share it with other organisations. See BCI-SGS.
See also: Using BCI GUIDs.
RESTful Services
There is great scope for implementation of RESTful HTTP services to support particular use cases. Currently there is a single such server - Code Lookup. The endpoint for restful services is here.
If you have a requirement for any other REST style access to BCI data please raise it as a topic in the forum.
Harvesting
It is envisaged that many applications of BCI data will require a local mirror copy of the data to be available. An example is populating a lookup box in the user interface of a database application. BCI provides four mechanisms to facilitate this.
- CSV Download Nightly database dumps provide comma separated snapshots of the data for download.
- lookup_lsid.csv contains a list of all collections in BCI, their LSIDs and information from the community records including the preferred code. Use this file if you need to develop a general lookup service to populate your data with LSIDs.
- lookup_code.csv contains a list of all the unique codes in the system (including those not in community records) and their corresponding LSIDs. Use this if you currently have a list of codes and wish to convert or augment them with BCI LSIDs.
- location.csv contains a list of the locations as used internally. It is and extended version of the ISO 3166-1 alpha-2 country codes list.
The CSV files are UTF-8 encoded.
- Open Archives Initiative Protocol for Metadata Harvesting Version 2 OAI-PMH is a widely used metadata harvesting mechanism. BCI has an OAI-PHM service located here.
- Site Map To facilitate harvesting of data by Google and other search engines BCI maintains a site map as http://biocol.org/sitemap.xml. It is updated on a 24 hour cycle.
It would be feasible to generate RSS, ATOM or similar harvest/syndication feeds should they be required. If you have a need for such a service please raise it as a topic in the forum.
Experimental
JSON
There is an experimental JSON service that allows basic retrieval of collections data at http://biocol.org/json