[RFC] Feature Proposal - Add languages: tags for name rendering

There’s a lot to unpack here…

If you’re referring to the languages:official=* part of your proposal, this is a simplistic concept that may work in some regions but not others. Many jurisdictions confer special status upon certain languages while avoiding the term official language. A language may be official in practice but not in theory, or in theory but not in practice. Some jurisdictions declare official languages for certain people or purposes but not for others.

For example, in my home state of California, the constitution declares English to be the official language and therefore prohibits people from spelling their names with diacritical marks, yet government agencies sometimes try too hard to communicate with me in Vietnamese, one of the many languages they’re federally mandated to provide for certain services. There are whole neighborhoods where you will find hardly any signs in the Latin writing system. That said, road signs are almost universally in “English” – which includes a plethora of Spanish-derived names, replete with diacritics.

Massachusetts declares English to be the “common public language”, but government materials are routinely provided in a variety of commonly spoken languages. Louisiana recognizes a constitutional right for “the people” to promote heritage languages, originally an implicit way to protect the French-speaking majority, but over time, this provision has been interpreted at times to protect a wide variety of minority languages too.

South Dakota declares English and Sioux to be co-official statewide, but good luck finding any wayfinding signs in Sioux outside Sioux reservations. Conversely, the tiny town of Oldenberg, Indiana, proudly signposts its streets in German, even though the town council lacks the authority to declare an official language. The state’s official language is English, but they’ve even managed to apply a German name to the state road running through town.

Imgur

Your proposal isn’t just about language policy; it also calls for a languages:preferred=* key and seems to place more importance on it from a software perspective. Many places don’t regulate the languages that residents are allowed to use, let alone which languages software systems should associate with the place.

The proposal downplays the possibility that language usage can be fluid and nuanced:

This sometimes happens in the case of monuments, streets with historical names still in modern use despite language changes, or specific geographic features. This is uncommon, however, and nearly all features which are not administrative boundaries should not have languages:* tags.

I just wonder what’s your basis for making such sweeping claims about the world? Have you ever been to a Chinatown, or any ethnic enclave for that matter? At least in North America, even when an ethnic enclave has a well-defined boundary, language usage inside and outside is far from uniform. Going back to Oldenberg, the roads and shops may be named in German, but the buildings, the churches, and the maypole are named in English.

But really, what does this have to do with “preference” anyways? If the language of a thing is in a certain language, then say so. If the user prefers a particular language and there is a name in that language and the software is capable of presenting it, then the user’s preference is none of the mapper’s business.

Please name the “audio renderer” that you’ve been referring to in multiple threads, or at least describe it in more detail, so we can understand the limitations and constraints that have led you to your proposed solution.

A few weeks ago, I was wandering around Seattle’s International District looking for some Seattle-style teriyaki and bánh mì. :yum: At each intersection, the street signs at the northwest corner are in English followed by Japanese, while on the southeast corner, the signs for the very same streets are in English followed by Chinese. Further down Jackson, the signs are in Vietnamese instead. Meanwhile, the shop signs are a rowdy mix of all four languages.

Of course, there are other problems with assuming that signs are laid out linearly in plain text. This sign is laid out in French, English, and Spanish, but English clearly has priority, because it’s bigger:

But just because a name is bigger doesn’t mean it’s the main name. One time I noticed that a Vietnamese restaurant in Brunei posts its Malay name in Jawi first and much larger than the Malay name written in Latin or the English name, but it turns out the Jawi name is decorative or pro forma; no one uses it.

And there’s more… lots more!

I would be remiss if I didn’t close this comment on a more positive note. There is certainly room for improvement in how OSM encodes feature names. But if the megathreads around name=* are any guide, consistency is almost a nongoal because it hardly exists in the real world. What we should be aiming for instead is to accurately describe each feature as people experience it, minimizing our own personal preferences as mappers to a reasonable degree, and structuring it just well enough for data consumers to adapt to user preferences. If data consumers sometimes have to rely on heuristics and generalizations, at least that’s better than mappers having to make those generalizations on their behalf. After all, there’s only one database but many data consumers.

5 Likes