Stable URIs
TaxonConcepts and TaxonNames can be identified over the internet with HTTP URIs which resolve according to semantic web best practices (see below). They are intended to be persistent links and can be stored and used in web pages. The URIs are based on the WFO IDs used elsewhere.
A WFO stable URI is created by prepending "https://list.worldfloraonline.org/" to a ten or sixteen digit WFO ID described in the identifiers section.
Once created the HTTP URI can be used a link in a webpage or social media post and will always redirect the user to an appropriate location.
This instance of the application is not running on the correct domain so the examples here will be based on URIs starting with http://rhakhis.rbge.info/ rather than https://list.worldfloraonline.org/
The behaviour of the URIs differs depending on how they are resolved, by a human (with a web browser) or by a machine requesting data in a particular format. This is called content negotiation. Below is an example. It might seem complicated but it is transparent to a user of the data. Just refer to things by their URIs and the system routes calls to the right place!
- The name http://rhakhis.rbge.info/wfo-0000615907 (Comandra elliptica Raf.) is a synonym in the classification 2022-12. Clicking on it in a web browser you will be redirect to the taxon it is currently accepted in and the name will be highlighted.
- If you were to ask for data for this name using, for example, the cURL command:
curl -I -H "Accept: application/json" http://rhakhis.rbge.info/wfo-0000615907
You would be returned a JSON object for that name which would include references to its placements in different data releases. - A versioned URI of that same name is this: http://rhakhis.rbge.info/wfo-0000615907-2022-06 If you click on it in a web browser you will be redirected to the taxon page in the WFO Plant List for the accepted name in the classification in that data release and the synonym will be highlighted.
- If you were to call for data for a version of that name like this
curl -I -H "Accept: application/json" http://rhakhis.rbge.info/wfo-0000615907-2022-06
then you would get a 301 redirect to the non-versioned name http://rhakhis.rbge.info/wfo-0000615907 and on to the data for the bare name. - On the other hand calling for data for a versioned name that is the accepted name of a taxon will return the taxon JSON object with the name embedded in it.
Supported formats
Data can be returned in the 11 formats listed in the table below. These include graphical representations of the data.
Name | Recommended Mime Type | Recognized Mime Types | Example |
---|---|---|---|
php | application/x-httpd-php-source | application/x-httpd-php-source | php |
json | application/json | application/json, text/json, application/rdf+json | json |
jsonld | application/ld+json | application/ld+json | jsonld |
ntriples | application/n-triples | application/n-triples, text/plain, text/ntriples, application/ntriples, application/x-ntriples | ntriples |
turtle | text/turtle | text/turtle, application/turtle, application/x-turtle | turtle |
rdfxml | application/rdf+xml | application/rdf+xml, text/xml, application/xml | rdfxml |
dot | text/vnd.graphviz | text/vnd.graphviz | dot |
n3 | text/n3 | text/n3, text/rdf+n3 | n3 |
png | image/png | image/png | png |
gif | image/gif | image/gif | gif |
svg | image/svg+xml | image/svg+xml | svg |
An example graph for a TaxonConcept
An example graph for a TaxonName
Properties
The diagram below shows the property relationships in the semantic web data model. Further documentation on these can be found either by dereferencing the URIs of the terms in the RDF responses. The GraphQL API uses a very similar data model and you can access its documentation using an IDE.