Unicode Technology Workshop 2025

Next week, I’m going to give a talk at the 2025 Unicode Technology Workshop titled, “An Accidental Map of the History of Writing”. I’ll be introducing the audience to the project and focusing on our coverage of historical place names, languages, and writing systems, a topic that so far has received scant attention outside the mapping community.

This annual conference is organized by the Unicode Consortium, the premier standards body for internationalization. They shape many aspects of our project, from encoding rare characters we need to express a place name, to the date format on our time slider, to the rules for pluralizing words in interface messages, to part of the algorithm that tells this forum which language to translate a post from. I hope this will be an opportunity to connect with standards committee members, to share how we use their work “in the field” and the challenges we’ve faced in historical toponymy.

Over the next couple weeks, please pay special attention over the next couple weeks to setting name=* in the contemporary local language, where possible, and adding name:*=* tags for that language and any other languages you can determine. On both our homepage and the embed site, the slippy map automatically swaps map labels to your currently selected interface language when available. Please reach out here on the forum or on Slack or Discord if you need any help with determining the correct language code or Unicode characters or with undoing a romanization based on your sources. This will allow OHM to make a good impression on the conference attendees, so that they can better understand our needs and spread the word about what we’re doing.

Finally, please share any examples of your own internationalized mapping that you’d like me to share with this unusually language-aware community – I’ll be sure to give you credit.

5 Likes

Just quoting and bolding for no particular reason at all. :wink:

1 Like

Feel free to use Metro Vancouver (and Greater Victoria) as examples! I added multiple languages to city names (more languages in Metro Vancouver cities) and in Vancouver some streets have Chinese translations.

3 Likes

That’s some serious localization. Just imagine if we had that area in Tiếng Việt (& Français), as well! :wink:

1 Like

Awesome, and don’t hesitate to add any First Nations names as well. Some of those languages have combining diacritics that demonstrate why we’re also contributing to MapLibre’s effort to improve text rendering support.

1 Like

I started mapping more Mayan cities but then I realized that every region has a sub Mayan language. So I started thinking, what if you could set your language to name:itz and it would know it’s part of the Mayan family tree and show you any parent or sibling name if name:itz doesn’t exist for that object.

1 Like

Unfortunately, the mapbox-gl-language plugin we’re currently using doesn’t know any language fallbacks, so we’ve hacked in a very basic fallback (for example, from es-AR to es). Ideally, the language switcher would know that one language code belongs to another language code that represents a macrolanguage or language family. Both CLDR and MediaWiki have extensive language fallback heuristics, which would be interesting for us to integrate somehow.

Yeah that’s what I wanted to do before but the languages don’t seem to have an ISO code associated with them (e.g. hən̓q̓əmin̓əm̓). I assume I would just place the entire name onto the name:* field.

And then there’s the case of new indigenous names added to roads or places long after they have been built (e.g. roads in the University of British Columbia). I know there’s been a discussion on name changes through time but I still am not sure about how to go through with these beyond remapping the entire feature and using the chronology relation.

1 Like

Halkomelem overall would be hur. The Downriver dialect doesn’t have a code of its own.

When a language lacks its own language code, the best practice is to use a less specific language code, as @Charlie_Plett suggested earlier. For example, this site has a name in Tamien, which lacks its own ISO 639 language code. So I put the Tamien name in name:cst=*, which represents the Northern Costanoan language group that includes Tamien. In case of significantly different names between Tamien and other related languages, such as Chochenyo, I could clarify it with name:cst-x-tamien=*.

That’s what I would do whenever a feature’s primary name changes. On the other hand, if the feature gained a new name in some other language that previously had no name for it, then I’d just put it in the appropriate name:*=* tag, as if that was the name all along in that language, since speakers of that language will be referring to the feature by that name regardless of time period.

Just added many internationalized names to Pechory, a town in Russia. Might be an interesting example to show the varying ways of transliteration in different languages.

3 Likes

I’ve been adding Low German to country names, but I don’t have enough yet for them to be very visible. name:pdt | Keys | OpenHistoricalMap Taginfo

1 Like

That’s great, the tiles now include any language with five or more occurrences, including both Plautdietsch (pdt) and Low German more generally (nds). The website has a locale in Low German but not in Plautdietsch. To see the labels in that language, you’d need to add ?locale=pdt to the URL on the main website or #language=pdt on the embed site.

I wonder if there are any places around here that have Primitive Irish names that could be mapped in Ogham. Given how patchily-attested that language is, I’m guessing the number is close to zero though :sweat_smile:

3 Likes