gbif / gbif-api

GBIF API
Apache License 2.0
27 stars 5 forks source link

API for extensions supported for verbatim DWCA occurrence downloads #100

Closed MattBlissett closed 4 months ago

MattBlissett commented 1 year ago

It's not clear what verbatim extensions are supported by the new API.

The list in configuration at https://github.com/gbif/gbif-configuration/blob/master/cli/prod/config/pipelines.yaml#L48 includes http://rs.gbif.org/terms/1.0/DNADerivedData, which occ-ws seems to accept but the registry rejects. (See also https://github.com/gbif/occurrence/issues/299)

https://api.gbif.org/v1/enumeration/basic/Extension lists all extensions, but only some of the enum values are persisted.

I think we need https://api.gbif.org/v1/enumeration/Extension to exist and include a property saying whether each extension is accepted in downloads, and giving the URL. This will also be needed for the portal to provide a UI for the functionality.

occ-ws should accept either the enum or the URL.

marcos-lg commented 1 year ago

I added in DEV these endpoints:

https://api.gbif-dev.org/v1/enumeration/basic/Extension/AUDUBON -> gets the extension row type by the extension name https://api.gbif-dev.org/v1/enumeration/ExtensionRowType -> lists all the extension row types https://api.gbif-dev.org/v1/enumeration/ExtensionRowType?rowType=http://rs.tdwg.org/ac/terms/Multimedia -> gets the extension name by the row type. It has to go in a query param because Spring doesn't allow double slashes in the URLs and I don't think it's worth to disable these Spring security features just for this endpoint.

I also added the DNA_DERIVED_DATA extension to the DB enum(this is done in dev, uat and prod). Now the Java and the DB enum have the same values.