I’m working on aligning a soil microbial dataset to COL XR via the GBIF API. One key difference from the GBIF Backbone is there are microbial taxa names that have been moved from Kingdom to Domain and Phylum to Kingdom. This is important to know because it’s not unusual to have more diversity and specificity in reference databases like SILVA than in COL, and you end up rolling taxa assignments up to the phylum or kingdom level.
In using the v2/species/match API endpoint, I was surprised to not get any hits on Bacteria and Archaea unless I explicitly add taxonRank=DOMAIN. Is this expected behavior for the API? I couldn’t find any clues for this behavior in the documentation.
With Rank:
https://api.gbif.org/v2/species/match?scientificName=Bacteria&checklistKey=7ddf754f-d193-4cc9-b351-99906754a03b&taxonRank=DOMAIN
No Rank:
https://api.gbif.org/v2/species/match?scientificName=Bacteria&checklistKey=7ddf754f-d193-4cc9-b351-99906754a03b
in such cases always append the query parameter verbose=true and you will see considered candidates and often the reason.
here it is the usual homonym problem. There is also a genus names Bacteria and without rank, code, authors or higher classification it is impossible for the matching to disambiguate them. Usually the recommended solution is to provide some classification context, but for domains this is impossible.
As homonyms mostly occur with genera we should look into supporting rank ranges, eg suprageneric…
@markus thanks for explaining, Supporting rank ranges would be useful, but I’m sure there are more important challenges to tackle. Knowing this gotcha is enough for me right now.