I'm just curious about how this works with some things that seem to add complexity (I haven't worked in this area at all):
- Different names for things in different parts of the address because of different languages? (What if two different parts are in different language, e.g. giving a Belgian city name in Flemish but the street name in French? Giving a Swiss address with a street name in French, city name in German, and canton name in French+? Giving a Russian address with the street name in Russian but the city and oblast name in English, possibly using different scripts?)
- Landmarks and points of interest, maybe with separate colloquial and official names? (Tower of St. Vincent? Torre de São Vincente? Torre de Belém? Tower of Belém? Tower of Belem?)
- How do you search if an address component is omitted (like leaving out a city in a U.S. address but including a state or a postal code)?
- How do you handle free-form text searches that might omit address delimiters, or include postal codes in a locally nonstandard order, or omit or include official postal designators for the components of the address (for example, Brazilian addresses might include the word "CEP" before the postal code but could be given without explicitly mentioning that the postal code is a postal code)?
Is there a good book or web site or FAQ about geographic name matching that I could look at to get a sense of what standard answers to these sorts of questions are?
+ In Switzerland, the same city could theoretically be referred to as "Fribourg, [Staat ]Freiburg" or "Freiburg, [État de ]Fribourg". Well, of course a human user might always search using any combination of languages with which they're familiar, or even ones they're not familiar with that they just copied and pasted from somewhere.