Skip to content


Showing taxon names based on place #190

loarie opened this Issue · 3 comments

2 participants


One way to do this would be to associate places with users and places with taxon names and then display the taxon name thats a best fit for the user's place. Country specific sites could override these settings to always show names associated with the country
screen shot 2013-12-11 at 11 57 10 am

This is part of the NatureWatchNZ wishlist


This is a good idea. One thing to look out for is that the taxon name place IDs will need to be added to sphinx, or they will need to be considered whenever we search sphinx for taxon names to ensure it's searching for names appropriate to the place in context. This includes places like taxa/search and taxa/autocomplete, as well as Taxon.single_taxon_for_name, which underlies most cases where we try to automatically match a single name to a taxon.

@loarie loarie added the nzintegration label

Another requirement: we need the ability to rank names within a place regardless of lexicon. E.g. in New Zealand many of the common names people use are Maori, while others are English, but they often conflict with Australian names, which can be a mixture of lexicons. For example, Typha orientalis is Raupo (Maroi) in NZ, Broad-leaved Cumbungi in Australia (presumably English and aboriginal).

@kueda kueda self-assigned this
@kueda kueda added the ready label
@kueda kueda added in progress and removed ready labels
@kueda kueda changed the title from Showing taxon names based on the user's place to Showing taxon names based on place

Revised spec

  • add PlaceTaxonName join model: place_id, taxon_name_id, position
  • add position to taxon_names to control global priority of names
  • add /taxa/:id/names to at least perform name sorting, if not name management
  • change TaxonName.choose_common_name so it accepts a place and tries to choose the highest rank name within that place, and try to alter as many calls to that method as possible to include a site's place


  • add user.place_id
  • set it on user create based on site_id
  • let user.place_id override site.place_id wherever the latter is used

For the record, place IDs were added to sphinx in de746a6

@kueda kueda added a commit that closed this issue
@kueda kueda Merge branch 'place_taxon_names'
Closes #190

@kueda kueda closed this in f74683c
@kueda kueda removed the in progress label
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Something went wrong with that request. Please try again.