Multilingual names
Feature : Multilingual names |
Description |
Keys and tags that are used with language postfix |
Tags |
and other tags and their variants |
There are various situations where we need to handle multilingual names, where a feature has different names in different languages. This is very common for the names of major world cities. In some regions, places and streets have names in all local languages. People will also want to render maps in a specific language (Map Internationalization).
Names#Localization is the primary documentation describing how to use Key:name with a language code. People generally agree on using name:code=* where code is a lowercase language's ISO 639-1 alpha2 code (second column), a lowercase ISO 639-2 code if an ISO 639-1 code doesn't exist, or a ISO 639-3 code if neither of those exist. In addition, some cases require to add a script name to the tag according to ISO 15924 name:code-Script=*. Many languages, including widely spoken or written ones, are defined inaccurately or uncoded for in the existing ISO codes, so the tagging necessarily deviates from them where appropriate.
Repeating name with language specific tag
name=* contains the common, default name in the local language. name:<lang_code>
is used to tag the name in a specified language in cases where the name differs by language, for example name:ru=Москва gives the city's name in Russian (language code ru) while name:en=Moscow gives the English language name (language code en).
In cases where multiple languages are tagged for a name, the local-language name tag should be duplicated with the language-specific sub-key. For example, Moscow is tagged with name=Москва, with the same value as name:ru=Москва. This tagging is important because it ensures that data consumers don't need to infer the local language. Guessing name language based on location is unlikely to always succeed - there are places in Russia where name=* is not in Russian, there are places in USA where correctly mapped name=* is not in English.
On the other hand, do not tag names that do not exist. An unremarkable village somewhere in Poland might have only one name (recorded in name=*). In all other languages, this village would be called by its Polish name, because it has no other name. Just because all other languages use the Polish name, you should not add name:<lang_code>
tags for all other languages containing the Polish name!
Why?
Tagging both say name=Kraków and name:pl=Kraków is useful especially in case of displaying localized names with fallback languages. If someone would want to
- display names in Polish
- in case of Polish name being unavailable, show English name (with "Beijing" being preferred over "北京市")
- otherwise display name:en=*
In such case the solution would be to
But note what would happen if name=* would be in Polish, name:pl=* would be not tagged and name:en=* would be tagged:
- display name:pl=* - skipped, as not present
- if it is unavailable display name:en=* - done!
- if both are not present display name=* - not reached
Alternative would be adding guesses about language of name=* (what is tricky, complicated for many languages and areas impossible, fragile and error-prone).
Or explicitly tagging both name=* and name:<lang_code>
.
The Mapbox Directions API, which is powered by Valhalla, is an example of a data consumer that relies on this heuristic. In some regions that have multiple official languages, guidance instructions will include street names and destinations in multiple languages, which is verbose and usually undesirable. But if name=* is accompanied by a matching language-qualified name tag, then the requested language will ensure that only the most relevant language appears in guidance instructions.
When name is only in one language
Note "in cases where multiple languages are tagged for a name". When name is tagged only in one language and this is expected to remain this way, benefits of this gets much smaller, and it is rarely done - and may be controversial to do this. Especially in monolingual areas.
When name is currently tagged in one language but it is known that other are missing tagging both name=* and dedicated language tag makes more sense.
Issues
- what should the plain name=* tag be (local name, at least if not disputed), and how to specify the language that the name tag is in.
- how to specify transliterations. There is a standard list of transliteration codes. But avoid transliteration except in special cases.
- Instead one should refer to the international BCP 47 standard for locale tags (and to its associated IANA registry), that allows appending extensions to a base language code, using optional "locale subtags" separated by hyphens ("-"): a 3-letter "extlang" code for dialectal variants (deprecated since ISO 639-3), a standard 4-letter ISO 15924 script code, a 2-letter ISO 3166-1 region code, or a 3-digit UN M.49 region code for international regions. Using region codes should be avoided as much as possible (in most cases it is a script code that should be used instead). Transliteration systems may also be specified if the script code alone is not enough specific and there exists several competing transliteration schemes. These transliteration schemes have standardized codes in Unicode CLDR data, that defines its own extensions of locale subtags for BCP 47. The BCP 47 standard is also normatively referenced and used (instead of ISO 639 which has issues in terms of stability) by all W3C web standards (HTML, CSS, SVG, XML...) and by lot of internationalisation libraries and programming languages (including in C, C++, Java, Javascript in their standard libraries or with ICU).
- Also avoid using codes used by Wikipedia (or collected in Wikidata in list of Wikipedia articles) for its interwiki links if they are not standard BCP 47 locale tags: their meaning is only to differentiate the Wikipedia editions as they are in fact mapped to valid subdomain names (which are not restricted to be using only BCP 47 locale tags but can be any "word"), or are used in some Wikipedia extensions; most of these non-compliant codes are slowly being phased out and replaced in Wikimedia projects; this includes "en-simple" (use "en" only), "sr-ec"
(use "sr-cyrl"), but also some codes which were incorrectly assigned and that represent in fact other languages (such as "nrm" incorrectly used for Norman in Wikipedia). OSM data should not include these imported dirty quirks: replace them by BCP 47 compliant codes (or append "private use" extension subtags defined in BCP 47, for example "en-x-simple" instead of "en-simple" if you really need a distinction from "en" for standard English).- Note: BCP 47 locale subtags are not case-sensitive (even if they have recommanded casing), and OSM data should use tags with key "name:code" where the code is a complete locale tag compliant to the BCP47 standard, in their preferred form (excluding aliases defined in the IANA registry and deprecated or replaced tags or subtags), but only using lowercase letters (including in locale subtags for scripts and regions).
- Keep uppercase codes used only for naming prefixes or suffixes in region specific tags (that are also independent of the language used): use preferably ISO 3166 codes in this case. For example, Traditional Chinese in Hong Kong is tagged name:zh-Hant-HK=*, not name:zh-hant-hk=*. (Use of the lowercase spellings largely ended in 2018. [1][2])
On this page we give some country by country information particularly regarding the language used in the main 'name' tag. See Exonyms for some examples.
Australia
Australian Aboriginal Languages) can be recorded with their ISO-639-3 suffix (such as name:xwj=* for Whadjuk), or the more generic name:aus=*. For more information, please see the Australian Tagging Guidelines
Bangladesh
While most other countries in OpenStreetMap use the official language for the name=* tag and potentially add name:en=* for an English name, the current standard in Bangladesh is inverted: It is common to use name:bn=* for the Bangla (বাংলা) name, and put the English name in name=*, provided the object has an English name.
This system is currently under discussion and might change in the future. Please refrain from retagging of names to match your preferred scheme.
When adding a name, it is best to look at the actual road signs, placename signs, or shop signs:
- If something has only a Bangla name: Set name=* to the Bangla name, and optionally add name:bn=* with the same.
- If something has only an English name: Set name=* to the English name, and optionally add name:en=* with the same.
- If something has names in both languages: Set name=* to the English name, and optionally add name:en=* with the English and name:bn=* with the Bangla name.
If something already has a name=* tag in either Bangla or English, then please do not change it (unless the name itself is wrong), instead limit yourself to adding name:en=* or name:bn=* as appropriate. This is to avoid edit wars while the community discusses the future tagging scheme.
Bahrain
Signs (including street signs) in Bahrain are written in Arabic and in English, tagging is:
name=شارع القاهرة for Arabic name
name:en=Cairo Street for the English name
name=طريق 25 for Arabic name
name:en=Road 25 for the English name
Belarus
Belarus has two official languages (Belarusian and Russian), Belarusian language has two variants (Classical and Official).
In October 2022 community decided that the name=* tag value for toponyms and socially important objects should be in Belarusian official or follow ground truth rule for POI. A Belarusian name value also should be duplicated in name:be=* tag, Russian should be in name:ru=*, Belarusian classical optionally in name:be-tarask=*, int_name=* transliterated from name:be=*.
Belgium
Belgium has Communities three official languages (Dutch, French and German) and four language areas (Brussels is considered a separate, bilingual French-Dutch area), see the map.
Brussels
Brussels is completely bilingual, which means that the city council must operate in both languages, and no language can be preferred. The city council solves this e.g. by alternating name signs with Dutch and French as top language.
In OSM, we have a consensus to use a fixed order. Since we refrain from involving politics, it has no further meaning to us than to keep data consistent for human and automated processing. The name=* tag in OSM contains both the French and Dutch name, separated by a spaced hyphen (f.e. name=Rue du Marché aux Poulets - Kiekenmarkt), and the first mapper needs to use the correct order of the names (changing the order of the names afterwards to "nl - fr" is considered vandalism if you are not a beginning mapper). Next to the bilingual name tags, there are also name:fr=* and name:nl=* tags which can be used to render or search the data in a specific language. Make sure to only include 1 spaced hyphen in a street name. Hyphens in street names are never spaced. Knowing this a computer program can easily analyse this data.
A few streets have a name that is absolutely identical in both languages. Needless to say, never concatenate the same name twice (e.g. "Tomberg - Tomberg" makes no sense).
The addr:street=* on buildings or address nodes must match the name=* tag of the street, i.e. in the bilingual form. addr:street:fr=* and addr:street:nl=* are optional.
Language facilities
Next to the completely bilingual Brussels, there are also municipalities with language facilities (see the map).
These municipalities are supposed to operate in the official language of the community, but must provide services to minority language groups upon request. This means f.e. that all street names also have an official translation and are normally signed with the translation too. But there's no language-equality as in Brussels.
These municipalities should have the official translated names under name:nl=*, name:fr=* and name:de=* (depending on which language facilities are offered), the name=* tag should contain only the official name in the primary language. For the moment, the municipalities bordering Brussels also follow the naming schema used in Brussels (with both languages in the name tag), while the other municipalities have a tendency to only include a single language in the name tag. Do not delete translated data by following this rule. If a good translation exists in a Dutch municipality in French, do not remove it. We only care for correct data, as much as possible without being intrusive in any way.
Combination with name:left=* and name:right=*
Belgium has many boundaries that follow roads, and different municipalities often opt to give different names to the boundary street, resulting in differing addresses on both sides of the road. These are mapped by adding an name:left=* and name:right=* tag to the way.
This becomes even more annoying when one (or both) of the municipalities are bilingual or have language facilities. In these cases, the Belgian community opted to extend the tags to f.e. name:right:fr=*. Note that in these cases, a name:fr=* tag isn't guaranteed to exist, as it's possible that only one side of the street has a translated name. name:left=* and name:right=* should exist in these cases.
Example (Komenstraat - Chemin des Quatre Rois Komenstraat - Chemin des Quatre Rois):
- name=Komenstraat - Chemin des Quatre Rois (format "fr - nl", see language facilities)
- name:right=Komenstraat
- name:left=Chemin des Quatre Rois (format "fr - nl" for Brussels, see language facilities)
- name:left:fr=Chemin des Quatre Rois
- name:left:nl=Vier Koningenweg
This tagging scheme is far from a perfect solution, JOSM validator will not let this pass, if you have multiple relation:associatedStreet relations on a single way, JOSM will complain on validation. This is a shortcoming in the tagging scheme for these kind of situations. And there is no appropriate alternative solution at this moment. In Brussels there are quite some streets with this problem. There is probably also not a huge amount of support for name:left:*=* in software at the moment.
Some more BXL examples:
- Chaussée de Jette - Jetse Steenweg Chaussée de Jette - Jetse Steenweg in "1090 Jette"
- Chaussée de Jette - Jetsesteenweg Chaussée de Jette - Jetsesteenweg in "1081 Koekelberg"
- Chaussée de Jette - Jetse Steenweg Chaussée de Jette - Jetse Steenweg in "1080 Molenbeek-Saint-Jean - Sint-Jans-Molenbeek"
With the problematic common way : Chaussée de Jette - Jetsesteenweg Chaussée de Jette - Jetsesteenweg
Another one:
- Rue de la Grosse Tour - Wollendriestorenstraat Rue de la Grosse Tour - Wollendriestorenstraat
- Rue de la Grosse Tour - Wollendriestoren Rue de la Grosse Tour - Wollendriestoren
With the problematic common way here : Rue de la Grosse Tour - Wollendriestorenstraat Rue de la Grosse Tour - Wollendriestorenstraat (but also the "Rue de la Grosse Tour - Wollendriestoren") (note : lacking straat is correct) At the time of updating this wiki, the name:left:nl=* and name:left:fr=* tags are lacking for all those examples.
About the first mapper rule
Note that the "first mapper rule" is deprecated now. The consensus in the .be community is to address "fr - nl" for all name=* and addr:street=* tags within the Brussels-Capital Region, and include specific languages in subtags. Consistency of data is more important than who came first and what their preferences are. A custom Urbis validation tool is available at github.
For municipalities with language facilities, is a name is written in two languages, the primary language is used first, then the language with facilities (i.e. "nl - fr" in Kraainem, "fr - nl" in Mouscron, and "de - fr" in Eupen).
Unofficial languages and dialects
Next to the official languages, some dialects can also be added as translations. Do not use loc_name=* for dialects.
In Wallonia, use "name" for the common French name, if you want to complete with the Walloon name, use name:wa=*. For example, for the city of Liège, we use :
- name=Liège
- name:wa=Lîdje
In West Flanders, name:vls=* is used to mark West-Flemish names. Please stick to the spelling of vls.wikipedia.org when adding translations.
- name=Dadizele
- name:vls=Deisel
Bulgaria
The official language in Bulgaria is Bulgarian written in Cyrillic, so name=
should be in Bulgarian Cyrillic. In addition, the name transliterated to Latin script should be added using the int_name=
tag.
By law, geographic names, names of historical persons and cultural items should be transliterated according to the Bulgarian transliteration law.
- The geographic terms: планина (mountain), равнина (plain), низина (valley), плато (plateau), град (city), село (village), река (river), езеро (lake), залив (bay) etc., which are part of the geographic name, are transliterated as follows:
Стара планина Stara planina
Атанасовско езеро Atanasovsko ezero - Geographic terms that are not part of the name, should be translated (here example in English):
Нос Емине Cape Emine
- The terms "северен" (northern), "южен" (southern), "източен" (eastern), "западен" (western), "централен" (central) and similar ones, in case they are part of the geographic name, should be transliterated:
Централен Балкан Tsentralen Balkan
София-юг Sofia-yug
Перник-север Pernik-sever - For geographic names and names of historical persons that are originally written in Latin script, the original spelling should be followed instead of transliterating the Bulgarian Cyrillic name.
Example:
name=
: name in Bulgarian (бул. Източен)int_name=
: transliterated name (bul. Iztochen)name:bg=
: same asname=
(recommended in border areas and where names in other languages are given, to ensure names are shown in Bulgarian for Bulgarian map users, see above)name:en=
(optional): Iztochen Blvd.
Note:
- Unofficial names, such as names of shops etc. should be given as seen on the ground
Canada
The official languages of Canada are English and French.
Signs are predominantly in English across the country, but in French in Quebec. They may also be in an Indigenous language as in reserves, Indigenous land claim areas and in Nunavut.
In Canada, the value in name=* is usually provided in English or French (whichever is predominant), but multilingual names (separated by slash where both languages are in Latin script or with space if in non-Latin script such as with Aboriginal syllabics) are used in certain cases (features at Quebec's boundaries, Indigenous territories, Nunavut)
New Brunswick
New Brunswick is officially bilingual. The value in name=* is usually English-only, but bilingual English–French names are used on streets and the name of the province. Language usage in street names are mixed: some are English-only, English-French and French-only.
The official languages in Nunavut is Inuktitut, English, French and Inuinnaqtun. Places are generally named in English or Inuktitut, the latter written in syllabics. Most places in the territory are dual-named in Inuktitut and English, but some are named trilingually in Inuktitut, English and French or monolingually in Inuktitut or English only.
Quebec
The predominant and only official language in Quebec is French. Signs are generally in French only, but where English or another language is used, a French translation is provided with the legal requirement it must be more prominent. Some Canadian chains operate in Quebec with a different name in French (e.g. PFK/Poulet frit Kentucky for KFC, Pharmaprix for Shoppers Drug Mart, Bureau en Gros for Staples)
The value of name=* in features in Quebec is generally the name in French only. Names in English or other languages are tagged separately. Dual naming exists at Indigenous territories or features spanning the boundaries of Quebec with Anglophone provinces (e.g. the Ottawa River and features spanning it).
Indigenous languages
List of some Indigenous languages spoken in Canada.
Name | ISO code | Location used | Scripts |
---|---|---|---|
Cree | cr
|
Alberta, Saskatchewan, Manitoba, Northern Ontario, northern Quebec | Aboriginal syllabics, Latin |
Inuktitut | iku
|
Northwest Territories, Nunavut | Aboriginal syllabics, Latin |
Ojibwe | oj
|
southwestern Quebec to Saskatchewan | Latin, Aboriginal syllabics |
Innu-aimun (Montagnais) | moe
|
Quebec and Labrador | Latin |
Chipewyan | chp
|
northern Alberta and Saskatchewan, Northwest Territories | Latin |
Oji-Cree (Severn Ojibwa) | ojs
|
Ontario and Manitoba | Aboriginal syllabics, Latin |
Mi'kmaq | ing
|
Atlantic provinces, Newfoundland, and the Gaspé region in Quebec | Latin |
Sioux | dak
|
southern Manitoba and Saskatchewan | Latin |
Atikamekw | atj
|
Quebec | Latin |
Blackfoot | bla
|
southern Alberta | Aboriginal syllabics, Latin |
Tłı̨chǫ (Dogrib) | dgr
|
Northwest Territories | Latin |
Algonquin | alq
|
Quebec and Ontario | Latin |
Dakelh (Carrier) | crx
|
Central BC Interior | Latin, Aboriginal syllabics |
Gitxsanimaax (Gitxsan) | git
|
Skeena region, BC Interior | Latin |
Tsilhqot'in (Chilcotin) | haa
|
Central BC Interior | Latin |
Sahtúgot’įné Yatı̨́/K’ashógot’įne Goxedǝ́/Shíhgot’įne Yatı̨́/Dené Dháh/Dene Yatıé/Dene Zhatıé (Slavey) | den
|
Northwest Territories | Latin |
Maliseet-Passamaquoddy | pqm
|
New Brunswick | Latin |
Inuinnaqtun | ikt
|
Nunavut and Northwest Territories | Latin |
Gwichʼin | gwi
|
Northwest Territories and the Yukon | Latin |
Kanienʼkéha (Mohawk) | moh
|
southeastern Ontario and southern Quebec | Latin |
China
For general tagging guidelines for China,see Index of China tagging guideline, not the Chinese tagging guidelines, later is just one piece of tagging guidelines.
Basic rule
- Try to give multilingual name. Most names in China are written with Simplified Han characters, but an English version and Hanyu Pinyin version can be very useful for foreigners. Hanyu Pinyin should be written with accents, as they would be otherwise identical to the English name.
- Try to give ethnic language name. (in discussion) The name=* in autonomous divisions (of Provincial, Prefectural, or County level; see Wikipedia:Autonomous administrative divisions of China) may be in multiple languages. Languages in the same script are separated by slashes. Languages in different scripts only need to be separated by spaces. The Mandarin name should be first for sociolinguistic reasons. (Most name tags in such divisions are Mandarin-only for now.) For discussion about this problem, you can refer to [tagging guidelines#Multilingual labeling of ethnic languages]
Example
Normal area | Autonomous divisions |
---|---|
name=<Chinese> name:zh=<Chinese> name:en=<English> name:zh-Latn-pinyin=<Chinese Pinyin (with tones, compliant with orthography)> |
name=<Chinese> or name=<Chinese>/<Local language> (the format is still in discussion) name:xx=<Local language> name:zh=<Chinese> name:en=<English> name:zh-Latn-pinyin=<Chinese Pinyin (with tones, compliant with orthography)> |
Langcode rule
What zh
means
- Main article: Key:name:zh
Romanization (罗马字)
Avoid transliteration except in special cases.
name:zh-Latn-pinyin=*
are used for labelling Hanyu Pinyin, i.e. "Chinese written in Latin script, specifically the Hanyu Pinyin variant". The historically used name:zh_pinyin=*
is not a standard BCP 47 language tag and should not be used again.
The key name:zh-Latn=*
indicates Chinese romanization in general; it could include other romanisation systems that are now obsolete in Mainland China, including Postal romanisation, Wade–Giles romanisation, romanisation based on local Chinese language variant, or Tongyong Pinyin. In general, if one want to transliterate Chinese names from Chinese characters into Latin characters for map rendering or other purposes, then one should consider the transliteration standard of the region those characters are being used. Generally they are transliterated using pinyin standard with the Standard Mandarin Chinese pronunciation in Pinyin, allowing for local readings of certain characters. In Hong Kong and Macau, the transliteration should be done using their Cantonese pronunciation.
Romanization/Transliteration system | defined code |
---|---|
Hanyu Pinyin Mandarin romanization | zh-Latn-pinyin |
Tongyong Pinyin Mandarin romanization | zh-Latn-tongyong |
Wade–Giles Mandarin romanization | zh-Latn-wadegile |
Jyutping Cantonese Romanization | yue-Latn-jyutping |
Local languages (当地语言/方言)
It is also possible to add local names using the same template name:code if the language has an IANA Language Subtag Registry BCP 47 language subtag or ISO 639-1, ISO 639-2, or ISO 639-3 code (for example 'yue' for Cantonese). Try to use BCP 47 tags first, but do not hesitate to use ISO 639-1, -2 and -3 codes if BCP 47 gives no good match.
- Mongolian: Multiple different scripts have been used in the tag for the language. Use name:mn=* for nationally most common Traditional Mongolian Script, name:mn-Cryl=* for Cyrillic.
- Mongolian traditional script and Manchu script: The traditional rendering of the scripts are vertical. This has no bearing on what you put into the editor: it will be rendered horizontal in a non-specialized editor. Nothing can be done about that; just rotate your head.
- Use
name:lzh=*
for Literary Chinese. name:zh-min-nan=*
for Minnan have been deprecated, please usename:nan=*
instead. Do not usename:zh-min=*
, use codes for individual Min languages instead.
Language name (English) | Language name (native) | langcode | notes |
---|---|---|---|
Tibetan (standard, Lhasa) | བོད་སྐད་ | bo |
Official script is Tibetan. |
Pögä | bo-Latn-pinyin |
||
Bod skad | bo-Latn-wylie |
Mostly academic. | |
Uyghur | ئۇيغۇرچە / ئۇيغۇر تىلى | ug |
Official script is Perso-Arabic. |
уйғурчә / уйғур тили | ug-Cyrl |
Rarely used. | |
uyghurce / uyghur tili | ug-Latn-ULY |
Used in modern times. | |
uyƣurqə / uyƣur tili | ug-Latn-UYY |
Used until 1982. | |
Mongolian | | ᠮᠣᠩᠭᠣᠯ ᠬᠡᠯᠡ (input as ᠮᠣᠩᠭᠣᠯ ᠬᠡᠯᠡ) |
mn |
Official script is Mong. |
mn-Mong |
Official script is Mong, so same as above and no need to write -Mong .
| ||
монгол хэл | mn-Cyrl |
Used in neighboring Mongolia. | |
Manchu | ᠮᠠᠨᠵᡠ ᡤᡳᠰᡠᠨ (input as ᠮᠠᠨᠵᡠ ᡤᡳᠰᡠᠨ) |
mnc (ISO 639-2)
| |
manju gisun | mnc-Latn-moellendorff
| ||
Yi | ꆈꌠ꒿ | ii
| |
Nuosuhxop | ii-Latn
| ||
Korean | 조선말 | ko / ko-CN
| |
Zhuang | Vahcuengh | za |
Official script is Latin. |
Name types
All the subkeys mentioned above can combine with all types of different ?_name keys, like alt_name:zh-Hant=*, old_name:zh-Hans-CN=*, short_name:yue-Latn=*, etc..
Translation Rule
Orthography (正词法)
It is strongly recommended to follow the Hanyu Pinyin Orthographic rules (汉语拼音正词法), especially with regard to spacing between words in Pinyin. Adding spaces aid searching and reading.
Other romanization methods should follow their own orthographical rules. If a word-based orthography is not defined, the pinyin method can be used as reference.
Road name (路名)
Road name word order rule
- Adj. Later
Typical City: Beijing, most of City in Shandong Province, Changsha and Xiangtan in Hunan.
For road names in the mode of "<special_name><direction><road_type>", such as "解放西路", as a rule, you do not need to advance the <direction> in the English word order, but translate it part by part, and result to "Jiefang West Road"
If <special_name> is named after a mountain or river, such as "黑龙江北路", you don't need to separate mount or river to special name, just use pinyin to instead. For this example you can translate it to "Heilongjiang North Road"
name=朝阳公园南路 name:zh=朝阳公园南路 name:en=Chaoyang Park South Road name:zh-Latn-pinyin=Cháoyánggōngyuán Nánlù |
- Adj. Before
Typical City: Shanghai
Position words indicating different sections of the same road should be placed in front of the road name, and use English.
Numerals in this type of attribute words are placed after the entire road name.
Attribute words that do not represent different sections of the same road should be transliterated, using pinyin.
name=南京东路 name:zh=南京东路 name:en=East Nanjing Road name:zh-Latn-pinyin=Nánjīng Dōng Lù |
name=中山东一路 name:zh=中山东一路 name:en=East Zhongshan Road Number One name:zh-Latn-pinyin=Zhōngshān Dōng Yī Lù |
name=南车站路 name:zh=南车站路 name:en=Nanchezhan Road name:zh-Latn-pinyin=Nánchēzhàn Lù |
Road name word dict
For road names, you should follow this dict at first. If some word don't show in this list, refer to official guideline that China government released. However, an indication of 大道 (avenue), 路 (road), etc. is customarily provided. Try to use official translations on the street signs for the English names; if unavailable, refer to the vocabulary in #Taiwan for entries like 巷 and 弄.
高速公路 | Expressway |
高架路 | Elevated Road |
公路 | Highway |
环路 | Ring Road |
支路 | Side Road (Beijing) / Branch Road (Shanghai) |
道/大道 | Avenue |
街/大街 | Street |
胡同 | Hutong |
弄 | Alley |
支弄 | Branch Alley |
巷 | Lane |
径 | Path |
Proprietary and generic name (专名与通名)
Places follow the same convention. The only difference is that Chinese maps add 市,镇,省,县 at the end of the name, so we follow this convention, but do not translate this part in English.
City
place=city name=自贡市 name:en=Zigong name:zh=自贡市 name:zh-Latn-pinyin=Zìgòng Shì |
City with ethnic language
place=city name=巴林左旗 or name=巴林左旗 ᠪᠠᠭᠠᠷᠢᠨ ᠵᠡᠭᠦᠨ ᠬᠣᠰᠢᠭᠤ name:zh=巴林左旗 name:mn=ᠪᠠᠭᠠᠷᠢᠨ ᠵᠡᠭᠦᠨ ᠬᠣᠰᠢᠭᠤ alt_name:mn=ᠪᠠᠭᠠᠷᠢᠨ ᠵᠡᠭᠦᠨ ᠬᠣᠰᠢᠭᠤ;Baɣarin Jegün qosiɣu;Баарин Жэгүн қосиу name:en=Bairin Left Banner alt_name=Bairin name:zh-Latn-pinyin=Bālín Zuǒ Qí |
County (also a city)
place=city name=淅川县 name:en=Xichuan name:zh=淅川县 name:zh-Latn-pinyin=Xīchuān Xiàn |
Town (Single character special name) (Because 杨镇 only have one character in special name)
place=town name=杨镇 name:en=Yang Zhen name:zh=杨镇 name:zh-Latn-pinyin=Yáng Zhèn |
Administrative division
Contrary to places, administrative divisions should retain their full names and suffixes.
type=boundary boundary=administrative name=泾县 name:en=Jing County name:zh=泾县 name:zh-Latn-pinyin=Jīng Xiàn |
type=boundary boundary=administrative name=双江拉祜族佤族布朗族傣族自治县 name:en=Shuangjiang Lahu, Va, Blang and Dai Autonomous County name:zh=双江拉祜族佤族布朗族傣族自治县 name:zh-Latn-pinyin=Shuāngjiāng Lāhùzú Wǎzú Bùlǎngzú Dǎizú Zìzhìxiàn |
Croatia
All name=* tags should be in Croatian. Bilingual places are no exception. Italian names should be in name:it=* tags, and Serbian names should be in name:sr=*.
This was decided by vote on our mailing list: https://lists.openstreetmap.org/pipermail/talk-hr/2013-May/001815.html
Ethiopia
With more than 90 recognized languages, OSM tagging in Ethiopia can be challenging. The national official language is Amharic name:am=* and the language of instruction in high schools and universities is English name:en=*. Each of the Regions (states) within the country have also adopted an official language for that region. Typically, official as well as unofficial signs in the various regions show names in two or more scripts: the local language, often using Roman or Latin script and then in the Amharic script. Transliteration from Amharic to English is not uniform due to the sounds not found in English.
For OSM tags the following convention should be used.
- name=* Amharic name / local name (bilingual separated with a slash /)
- name:am=* Amharic name in Ge'ez script (አማርኛ)
- name:en=* English name where appropriate
- name:om=* Oromo language in Oromia Region
- name:so=* Somali language in Somali Region
- name:ti=* Tigrinya language in Tigray Region
- name:aa=* Afar language in Afar Region
- name:sid=* Sidaamu Afoo language in portions of Southern Nations, Nationalities, and Peoples' Region Region
- name:wal=* Wolaytta language in portions of Southern Nations, Nationalities, and Peoples' Region Region
Finland
Some cities/places/streets have names in Finnish and Swedish. Use name key for the commonly used language (mostly Finnish, use Swedish version if municipality is mainly Swedish) and name:fi and name:sv for the specific language version.
Three Sami languages are recognized up in the north, Northern, Inari and Skolt Sami, in the following municipalities: Enontekiö, Utsjoki, Inari and Sodankylä. The ISO 639-1 code system covers only Northern sami (tagged as name:se). But with the ISO 639-2 code system all three languages are taggable with the name key. Northern Sami is tagged with name:sme, Inari Sami with name:smn and Skolt Sami with name:sms.
More information on the Finland page.
France
France has many regional languages besides French. None of them are recognized nationally, but may have some limited support from regional or local collectivities (including in schools and universities). There are also bilingual street signs. Some language codes are :
- name=* for the default official name, as defined by the State-runned INSEE or by the municipal land registry (the cadastre). It may contain a local language name in bilingual areas, none of them official in France.
- name:fr=* for the vernacular French name (needed exclusively off territories of the French Republic, especially for French variants like Londres for London or Munich for München))
- name:br=* for Breton ; see the specific French project in name:br=*
- name:ca=* ca for Catalan
- name:co=* co for Corsican
- name:frp=* frp for Arpitan (or Franco-Provençal)
- name:gcf=* gcf for Guadeloupean Creole
- name:gsw=* gsw for Alsatian, the French variant of Allemanic (note: gsw is also used for other Allemanic variants in Switzerland and in Südbaden, Germany)
- name:oc=* oc for Occitan (including Auvergnat, Bearnese, Bigourdan, Cévenol, Gascon, Limousin and Provençal)
- name:ty=* ty for Tahitian (in French Polynesia)
- name:eu=* eu for Basque (Gascon must be under name:oc),
- name:vls=* vls for West Flemish (around Dunkirk)
In Britanny and Normandy, there are also the "Gallo" and "Norman" languages but they still have no specific ISO 639 code assigned (they may be represented in conforming BCP 47 tags as "fr-gallo" or "fr-x-norman" using a private extension only to collect the data, that won't be used interoperably before there's a documented agreement on which subtags to use; for Norman the assigned code "nrf" refers ambiguously to modern Jersiais, Guernésiais or Continental Norman and don't seem to discriminate their own local dialects, so it would still safely replace the "fr-x-norman" private use extension of French, or we could use "nrf-FR" font continental Norman, "nrf-JE" for Jersiais, and "nrf-GG" for Guernésiais if a distinction is really needed at the same place).
Germany
In 70 municipalities in the official Sorbian settlement area in the federal states of Brandenburg and Saxony, Sorbian is recognized as a second official language. Towns and villages, that bear an official (!) name in German and Sorbian, should be tagged as follows:
Lower Sorbian [for Brandenburg]:
- name=* : Names in both languages German - Sorbian
- name:de=* : Name in German
- name:dsb=* : Name in Lower Sorbian
Upper Sorbian [for Saxony]:
- name=* : Names in both languages German - Sorbian
- name:de=* : Name in German
- name:hsb=* : Name in Upper Sorbian
Sorbian placenames in Wikipedia:
- Wikipedia: Deutsch-Niedersorbische Ortsnamensliste
- Wikipedia: Deutsch-Obersorbische Ortsnamensliste
Greece
The official language in Greece is Modern Greek. Street signs usually have 2 or 3 lines :
- name:prefix=* "Οδός" (=street) can be omitted, we add anything else such as "Πλατεία" (=square), "Λεωφόρος" (=avenues and boulevards).
- name=* name in Greek e.g., "Σταδίου", "Ελευθερίου Βενιζέλου".
- int_name=* transcribed name as seen on the street sign e.g., "Stadiou", "Εleftheriou Venizelou", "Eleftherias". Transcribed/transliterated to the Latin alphabet using ISO 843 type 2 (same as ELOT 743).
We can also optionally add
- old_name=* old Greek name; e.g., "Πανεπιστημίου".
- alt_name=* when a street is also known with another name; e.g., "Γρηγορόπουλου"
When there is a first and a last name, like in Eleftheriou Venizelou (Ελευθερίου Βενιζέλου) the order of first and last names is kept, unlike in printed guides where they were reversed for indexing reason.
Transliteration and transcription links:
Haiti
The country has two official languages : French and Haitian Creole. Street names generally are only noted in French though.
name=* Names in both languages (Haitian Creole first, followed by French)
name:ht=* Name in Haitian Creole
name:fr=* Name in French
Example:
name=Okay Les Cayes
name:ht=Okay
name:fr=Les Cayes
Hong Kong
- Main article: zh-hant:Hong Kong tagging
Under "One Country, Two Systems", in Hong Kong, one of the special administrative regions of China, both Chinese and English are gazetted as the official languages. As a result, both Chinese and English names are used. The current bilingual (Chinese zh and English en) tagging conventions as follows:
name=* Names in both languages (Traditional Chinese first, followed by English)
name:zh=* Name in Traditional Chinese
name:en=* Name in English
Take Connaught Road Central (干諾道中) in Central for example.
name=干諾道中 Connaught Road Central (note the space between the languages)
name:zh=干諾道中
name:en=Connaught Road Central
Please exercise discretion when you see an object that's named by neither Chinese nor English, or try to discuss with other editors if you cannot decide it alone.
Cantonese transliteration of place name can be stored in name:yue-Latn=* tag but it is not that common in the OpenStreetMap database for now. Data users intended to transliterate Chinese place name in Hong Kong into English should also use Cantonese pronunciation instead of Mandarin pronunciation of those Chinese characters.
India
See India#Naming in different scripts and languages for more information on conventions followed for multilingual names in India.
See also Map internationalization (India)
Indonesia
The national and sole official language of Indonesia is Indonesian (bahasa Indonesia).
Signs are usually in Indonesian across the country, but some may be written in a regional language (usually in a non-Latin script) in addition to Indonesian. Names in regional or foreign languages are tagged separately; bilingual names in Indonesian and a regional language are not used. The value of name=* of features in Indonesia is generally the name in Indonesian.
Regional languages
Name | ISO code | Location used | Script |
---|---|---|---|
Acehnese | ace
|
Aceh | Latin |
Balinese | ban
|
Bali | Latin, Balinese |
Batak Karo | btx
|
North Sumatra | Latin |
Bugis (Buginese) | bug
|
southwestern Sulawesi | Latin, Lontara |
Javanese | jv
|
central and eastern Java | Latin, Javanese, Arabic |
Madurese | mad
|
Madura | Latin, Balinese, Arabic |
Makassar | mak
|
southwestern Sulawesi | Latin, Lontara |
Malay | ms
|
south and central Sumatra (Riau, Jambi, Bengkulu) and Bangka Belitung Islands. Also as various creole and trade languages spoken across the archipelago. | Latin, Arabic (Jawi) |
Minangkabau | min
|
western Sumatra | Latin |
Sasak | sas
|
Lombok | Latin |
Sundanese | su
|
western Java | Latin, Sundanese |
Iran
We use name=* and full_name:fa=* for Persian street names and name:en=* for English street names . See Iran/Tagging rules#Naming for more information.
Ireland (Republic)
Officially, all street signage must be bilingual, Irish and English, unless the name is of a place in a Gaeltacht (area where a majority speaks Irish as a first language), in which case signs must be Irish-language only.
Certain rare examples exist of placenames outside Gaeltachts where the English version has been successfully supplanted by the Irish version, at least when written. Such towns (including Portlaois/Port Laoise and Dunleary/Dún Laoghaire, formerly Kingstown). Examples (past and current) do exist of places where the English name has endured despite signage that would suggest differently (Kells/Ceanannas, Bagenalstown/Muine Bheag, Charleville/Rath Luirc/An Rath). For these places, only local knowledge will allow you to tag "correctly".
Safest tagging practise is generally to use the English-language version, where given, as the primary name, including the Irish-language version under name:ga=*. Where only a single name is provided, this name will be in Irish, but is likely, in the absence of local knowledge to the contrary, to be the best primary name.
In Gaeltacht areas, it is probably best to use the Irish version of a name as primary name and tag the English version (where known) under name:en=*. This simple rule of thumb does break down where a Gaeltacht place is better known in English, or whose popularly used local Irish version is different to the officially recorded name, as in Dingle, a mostly English-speaking town in a Gaeltacht whose local Irish name is Daingean Uí Chúis but which is officially known as An Daingean.
Israel/Palestine
Officially the State of Israel has Hebrew as an official language, and Arabic, up till 2018 as a co-official language, and since then as a language with "special status in the State". The State of Palestine, with claimed sovereignty over the West Bank, including East Jerusalem, and the Gaza Strip, and civil jurisdiction over the Gaza Strip and portions of the West Bank, has Arabic as its official language.
Two facts are to keep in mind: 1. Palestinian and Syrian Arabs are a significant minority within 1948 borders of Israel. 2. Hebrew-speaking Israelis are a significant minority within the West Bank, including East Jerusalem, living in settlements that are illegal under the International Law.
The main objective is to respect and represent both native Arabic speakers and native Hebrew speakers living in the Holy Land, and not to externally impose on each of the two languages.
Thus it is impossible to draw a solid lingual line in the small territory that is the Holy Land. The naming practice in OSM has been that the name=* tags are either Arabic or Hebrew, whichever one is (locally) more commonly used (most of the time this will be the language, which dominates in the municipality).
Regardless of the name tag, Hebrew names should be in name:he=* tags, Arabic names should be in name:ar=*, and English names should be in name:en=*.
Hebrew Name Tag | Arabic Name Tag |
---|---|
name=<Hebrew> name:he=<Hebrew> name:ar=<Arabic> name:en=<English> |
name=<Arabic> name:he=<Hebrew> name:ar=<Arabic> name:en=<English> |
Alternative Arabic transliteration of Hebrew names, as well as Alternative Hebrew transliteration of Arabic names should be inputted in the alt_name tag. For Arabic transliterations of Hebrew names, please choose the spelling that contains special letters such as چ and ڤ, as the primary one, and display the variant that does not contain these letters in the alt name tag. Similarly, for Hebrew transliteration of Arabic names, please choose the spelling that contains the diacritic geresh as the primary Hebrew name, and the spelling that does not contain geresh, in the alt name tag.
Hebrew Name Tag | Arabic Name Tag |
---|---|
name=נוף הגליל name:he=נוף הגליל name:ar=نوف هچليل alt_name:ar=نوف هجليل name:en=Nof HaGalil |
name=جسر الزرقاء name:he= ג'סר א-זרקא alt_name:he= גסר א-זרקא name:ar=جسر الزرقاء name:en=Jisr az-Zarqa |
Since 1948, the State of Israel has been trying to change the Arabic spelling of certain historic cities in territories that became Israel in 1948. Examples are the city of Ashkelon, عسقلان in Arabic, whereas the State of Israel has been using the spelling اشكلون, or Beersheba, بئر السبع in Arabic, whereas the State of Israel has been using the spelling بئير شيبع. The new State-imposed spellings are modern creations, not native to Arabic, nor common among native Arabic speakers of Israel/Palestine. The common and historic spelling is to be the primary Arabic one, whereas the Official Israeli Arabic spelling is to be presented in the alt name tag. This is to respect the variant that is commonly accepted by Native Arabic speakers living in the Holy Land.
Example |
name=בית שאן name:he=בית שאן name:ar=بيسان <Common and Historic Arabic spelling> alt_name:ar=بيت شان <State of Israel's Arabic spelling> name:en=Beit She'an |
---|
As for the English name tag, there's several general categories to follow:
- Historic cities with well-known and accepted English names, different from both Hebrew and Arabic: Eg. Hebron, in Arabic it is الخلیل (Al-Khalil), and in Hebrew it is חברון (Hevron). Hebron is to be used as the English name tags. English transliterations of Arabic and Hebrew names can be added to alt name tags.
- Localities within 1948-Israeli borders (Excluding the first category): These are to have the English spelling recognized by the State of Israel as the English name tag.
- Israeli settlements in the West Bank (including East Jerusalem): These are to have the English spelling recognized by the State of Israel as the English name tag.
- Palestinian localities in the West Bank (including East Jerusalem) and the Gaza Strip (Excluding the first category): These are to have the English spelling recognized by the Palestinian Authority as the English name tag.
Italy
Friuli-Venezia Giulia
In Friuli Venezia Giulia many places and geographical features (rivers, mountains...) have a toponym in Friulian. These names should be added as name:fur=*. In some villages the names of the roads are both in Italian and Friulian so you should add them in the same way. In certain cases there are two version of the toponym, one in standard Friulian and one in the local form; you should add the local form too using loc_name:fur=*. Here you can find a document with a complete list of toponyms in standard Friulian. There's a rendering which shows Friulian names and you can find it here.
Some features have also a name in German; you should add them using name:de=* and name:sl=* There seems to be consensus in including italian and slovenian languages in the general name-tag separated by a slash, where the italian name comes first.
Examples:
name=Duino / Devin
name:sl=Devin
name:it=Duino
Südtirol - Alto Adige (South Tyrol) and Trentino
German and Italian are both official languages of South Tyrol. In some eastern municipalities Ladin is the third official language. (c.f. Wikipedia). Every town has two (or three) official names; but even the street names are mostly bilingual (trilingual).
The German and Italian (and Ladin) names of towns, streets, POIs, etc. are tagged separately with the respective name:* tags (name:it=* for Italian, name:de=* for German and name:lld=* for Ladin). There seems to be consensus in including both languages in the general name-tag separated by a dash, where the (locally) more commonly used name comes first (most of the time this will be the language, which dominates in the municipality). For most areas it is German, while in some urban areas Italian is dominant or equally used by the population. In the Dolomitic area Ladin is dominant. Examples are "Bolzano - Bozen" (Italian first), "Brixen - Bressanone" (German first), "Urtijëi - St. Ulrich - Ortisei" (Ladin - German - Italian).
Examples:
name=Bolzano - Bozen
name:de=Bozen
name:it=Bolzano
name=Brixen - Bressanone
name:de=Brixen
name:it=Bressanone
name=Urtijëi - St. Ulrich - Ortisei
name:de=St. Ulrich
name:it=Ortisei
name:lld=Urtijëi
In Trentino also all three languages exist. While Italian is widely dominant, the other two are also recognized as official and dominant in some areas. The Ladin language in the Northeast Dolomitic area and in two areas the local German dialects: Bersntol - Valle dei Mocheni and Lusern - Luserna. Historically many places in Trentino also have German names not anymore recognized as official. Some of them are still used and others reused by traditional associations. A discussion about how non official names should be included might be useful, see tags alt_name=* and old_name=*.
Sardegna (Sardinia)
In Sardinia Sardinian and Catalan toponyms are protected by the national law 482/1999 and all the names in the local languages are co-official with Italian. These names should be added as name:sc=* (for Sardinian), or name:ca=* (for Catalan) and also the name tag must contain both the local and the italian name. You can find the local toponyms here. Other local languages, and related place names, are Corsican (Sassarese and Gallurese) name:co=* and name:lij=* for Ligurian (tabarchino).
Many places and geographical features (rivers, mountains...) have a toponym in the local languages. In some villages the names of the roads are both name so you should add them in the same way. In certain cases there are two version of the toponym, one in standard form and one in the local form; you should add the local form too using loc_name=*.
The correct tagging would be like:
name=Nùgoro/Nuoro
name:it=Nuoro
name:sc=Nùgoro
or
name=L'Alguer/Alghero
name:it=Alghero
name:ca=L'Alguer
name:co=L'Aliera
name:sc=S'Alighera
Japan
See Japan tagging and JA:Naming sample for more information.
Usage | Description | Example |
---|---|---|
name=* | Japanese name | name=首都高速道路 |
name:en=* | English name, which can be a romanisation of Japanese if it's used by English speakers | name:en=Metropolitan Expressway |
name:ja=* | Japanese name | name:ja=首都高速道路 |
name:ja-Hira=* | Pronounciation of Japanese name in Hiragana | name:ja-Hira=しゅとこうそくどうろ |
name:ja-Latn=* | Romanisation of Japanese name | name:ja-Latn=Shuto Kōsoku Dōro |
Pronounciation of Japanese name in Kana (typically Hiragana), deprecated in favour of name:ja-Hira=* | ||
Romanisation of Japanese name, deprecated in favour of name:ja-Latn=* |
name:ja_rm=* and name:ja_kana=* are traditionally used key values with non-standard code. Standard language code for romanised Japanese should be name:ja-Latn=*, and the Hiragana form should be name:ja-Hira=*. See also BCP 47.
If one want to transliterate Japanese name into latin characters for various different purpose on objects that have no name:ja-Latn=* tags, then they should use the Japanese transliteration engine for Japanese characters instead of Chinese transliteration for the Kanji in Japanese names, as the pronunciation and transliteration will be unintelligibly different.
Kazakhstan
Kazakhstan has two official languages (Kazakh and Russian), Kazakh language has two variants (Cyrillic and Latin). As Russian language is used more widely, community decided that the name=* tag value should be in Russian if it exists and make sense. A Russian name value also should be duplicated in name:ru=* tag, Kazakh Cyrillic should be in name:kk=*, int_name=* transliterated from name:kk=*.
Korea
Korean is the only official language in Korea. Korean is written in Korean (using Hangeul). However, South and North Korea use slightly different notations. Therefore, South Korean notation should be used for South Korean names, and North Korean notation should be used for North Korean names.
Street signs often incorporate romanised or translated versions of names. Most often they are in English, but Chinese and Japanese can also be found. The romanisation should follow the Revised Romanisation of Korean for South Korea, and the McCune–Reischauer romanisation for North Korea. → Key:name:ko - Subkeys
Usage | Example |
---|---|
name=Korean | name=경부고속도로 |
name:en=English | name:en=Gyeongbu Expressway |
name:ko=Korean | name:ko=경부고속도로 |
name:ko-Latn=romanisation of Korean | name:ko-Latn=Gyeongbugosokdoro |
name:ko-Hani=Hanja form | name:ko-Hani=京釜高速道路 |
See also:
- Ko:Map Features#표기법 (English version: Korea Naming Convention)
- Korea Streetsigns
- Key:name:ko
Kuwait
Signs (including street signs) in Kuwait are written in Arabic and in English, tagging is:
name=شارع القاهرة for Arabic name
name:en=Cairo Street for the English name
name=شارع 25 for Arabic name
name:en=Street 25 for the English name
Latvia
Lebanon
Street signs in Lebanon are written in Arabic and in French, tagging is:
name=طرابلس for Arabic name
name:ar=طرابلس for Arabic name
name:fr=Tripoli for the French name
Luxembourg
In Luxembourg, Village names and their signs are bilingual, Luxembourgish and French. For example, Bascharage in French is Nidderkäerjeng in Luxembourgish. Most street names generally are only noted in French, but some bilingual street signs have been installed.
name:lb=* can be used for Luxembourgish names when there is one.
Examples
for Rue de Koerich / Kärcherwee, the correct tagging is:
name=Rue de Koerich
name:lb=Kärcherwee
for Rue Saint-Ulric / Tilleschgaass, the correct tagging is:
name=Rue Saint-Ulric
name:lb=Tilleschgaass
Lithuania
Macau
Official languages in the territory are Chinese [usually written in Traditional script] and Portuguese, put both of them in the name=* tag and then separately in name:zh=* and name:pt=*, like this:
Other language tags like name:en=* for English or name:zh-Hans=* for Simplified Chinese can also be added.
Malaysia
- Main article: Malaysia/Other tagging aspects
The national and sole official language of Malaysia is Malay (bahasa Melayu or bahasa Malaysia). It is generally written in Latin script, but sometimes in a variety of the Arabic script know as Jawi.
Signs are usually in Malay across the country, but English (which is not an official language) is also sometimes used. Names in English or other ethnic or foreign languages (e.g. Chinese, Tamil, Thai, indigenous languages) are tagged separately; bilingual names in Malay and/or English and another language are not used. The value of name=* of features in Malaysia is generally the name in Malay.
- name=Malay name
- name:ms=Malay name in Latin script
- name:ms-Arab=Malay name in Jawi
- name:en=English name
- name:zh=Chinese name (in simplified characters)
- name:zh-Hans=Chinese name in simplified characters
- name:zh-Hant=Chinese name in traditional characters
- name:ta=Tamil name
Morocco
By consensus of the community, names of cities and other administrative areas (from the country as a whole down to arrondissements) are written in French, Tamazight (Berber) and Arabic, in that order.
name=Casablanca ⵜⴰⴷⴷⴰⵔⵜ ⵜⵓⵎⵍⵉⵍⵜ الدار البيضاء
name:ar=الدار البيضاء
name:fr=Casablanca
name:zgh=ⵜⴰⴷⴷⴰⵔⵜ ⵜⵓⵎⵍⵉⵍⵜ
NOTE: the following is acceptable as an alternative for the name:zgh=* tag:
name:ber=ⵜⴰⴷⴷⴰⵔⵜ ⵜⵓⵎⵍⵉⵍⵜ
Street signs in Morocco are principally written in Arabic, with some also including French and/or Tamazight. If the French or Tamazight names are known (even if they are not on a particular sign), the preferred tagging includes them. The order is the same as for cities.
name=Avenue Rabat شارع الرباط
name:ar=شارع الرباط
name:fr=Avenue Rabat
As with city names, the Berber (or Tamazight) version is included, it should be between the French and Arabic versions in the full name, with a key of name:zgh=* or name:ber=*.
About the first mapper rule
Note that the "first mapper rule" is deprecated now. The consensus in the .ma community is to use "fr - ar" (or "fr - zgh - ar") for all name=* and addr:street=* tags, if known, and include specific languages in subtags. Consistency of data is more important than who came first and what their preferences are.
About "mapping what's on the ground"
If the French or Tamazight names are known (even if they are not on a particular sign), the preferred tagging includes them. In general, Arabic terms are translated (not transliterated) into their French equivalents: "Rue" not "Zanqat" (for زنقة) and "Avenue" (or "Boulevard") not "Chari" (for شارع). However, if the sign on the ground uses a word that has been transliterated into Latin script, follow that.
Myanmar
Besides from using name=*, for Burmese names use name:my=*, for Shan names use name:shn=*.
Netherlands
Frisia
In the province of Fryslân, also known as Frisia (English exonym) and Friesland (Dutch vernacular), most towns have both a Frisian and a Dutch name. Use the official name as name=*. In addition to the official name, use name:nl=* for Dutch names and name:fy=* for Frisian names. It is up to each municipality to decide what its name and that of the places within it are. For villages, towns, and cities, the official blue signs marking the village/town/city-limits tend to show the status quo:
- If only one name is shown, name=*, name:nl=*, and name:fy=* are all the same — old_name:nl=* and old_name:fy=* may be used for names in either language no longer in current use.
- If two names are shown, the upper name is the default name=*. Which one is name:nl=* and which one is name:fy=* is not noted on the sign, but locals know, as do most Frisians (so ask when in doubt).
In some rare cases these blue signs may be slightly out-of-date, but lacking local knowledge they act as suitable representatives of ground-truth.
Examples
name Leeuwarden name:fy Ljouwert name:nds Liwwadden name:nl Leeuwarden
name Damwâld name:fy Damwâld name:nl Damwoude
name Eastermar name:fy Eastermar name:nl Eastermar old_name:nl Oostermeer
Limburg
In the South-Eastern province of Limburg the local dialect may be used (name:li=*).
Examples
name Maastricht name:li Mestreech
Many villages, towns, and cities in (predominantly, but not exclusively) the southern parts of the Netherlands take their annual carnival celebrations quite seriously. A long-standing and well-documented custom is the use of pseudonyms for the places concerned during the festivities. These names are recorded in name:carnaval=* (cf. name:carnaval=*).
Examples
Shown here is a representative sample of the name tags of the city of 's Hertogenbosch, including name:carnaval=* (with most other exonyms omitted for brevity):
alt_name:ja デン・ボス alt_name Den Bosch name 's-Hertogenbosch name:carnaval Oeteldonk name:de Herzogenbusch name:fr Bois-le-Duc name:ja スヘルトーヘンボス name:li De Bósj name:nl 's-Hertogenbosch
Low German
In Eastern parts of the Netherlands, some places have a Low German (Nederduits) name as well. Use name:nds-nl=* for these:
name Oldeberkoop name:fy Aldeberkeap name:nds-nl Berkoop
New Zealand
Some places in New Zealand have official dual English-Māori names. Correct tagging for these is as follows:
name=Aoraki / Mount Cook (official dual name)
name:en=Mount Cook (English name)
name:mi=Aoraki (Māori name)
North Macedonia
The official languages in North Macedonia are Macedonian written in Cyrillic and Albanian written in Latin.
Even though it is official language Albanian is not used for road names and most of other signs in most Macedonia. Across the country For road names and signs only Macedonian is used and it also is transcribed (when available) to the Latin alphabet according to the Macedonian transliteration rules.
- The geographic terms: планина (mountain), низина (valley), плато (platteau), град (city), село (village), река (river), езеро (lake), залив (bay) etc., which are part of the geographic name, are generally transliterated as follows:
Шар планина → Shar planina
- Geographic terms that are not part of the name, should be translated (here an example in English):
Охридско езеро → Lake Ohrid
- The terms "северен" (northern), " јужeн" (southern), "источeн" (eastern), "западен" (western), "централен" (central) and similar ones, in case they are part of the geographic name, should be transliterated:
Скопје Север → Skopje Sever
- Dates that are part of road names or signs should be transliterated. The number should be separated from the ordinal suffix with a dash ("-"):
1-ви Мај → 1-vi Maj
- Ordinal numbers should also be transliterated. The number should be separated from the ordinal suffix with a dash ("-"). The ordinal suffix should be declined according to the corresponding gender:
15-та Бригада → 15-ta Brigada
Examples:
name=Методиjа Патчев
int_name=Metodija Patčev (transliterated name using diacritics system)
name:en=Metodija Patchev (transliterated name using digraphs system)
name=Булевар Ослободување
int_name=Bulevar Osloboduvanje (transliterated name using diacritics system)
name:en=Boulevard Osloboduvanje (translated to target language)
name=3-ти Ноември
int_name=3-ti Noemvri (transliterated name using diacritics system)
name:en=3-ti Noemvri (optional since it's same as int_name)
Norway
Most names in Norway will be in Norwegian only and are tagged with name only. Wherever other languages are used as well, the Norwegian name is also tagged with name:no, including for the Norwegian name of countries and other names abroad.
There are two written Norwegian languages, bokmål and nynorsk, which are tagged name:nb and name:nn, respectively. The two languages are very similar with only slight variations in spelling. Each municipality decides which of the two languages is the official language for that area, so names will generally exist in only one of the two languages. For this reason name:nb and name:nn are only used in the few exceptional cases were a distinction between names in both languages are needed. Examples of names with both bokmål and nynorsk spelling:
- 15 country names (e.g. Norway, Austria, Belarus, East Timor) and a few other names abroad
- National institutions - Official spelling
Sami and Kven names are tagged as follows:
- Northern Sami: name:se - Official language in the municipalities of Guovdageaidnu - Kautokeino, Kárášjohka - Karasjok, Porsanger - Porsáŋgu, Deatnu - Tana, Unjárga - Nesseby, Gáivuotna - Kåfjord and Loabák - Lavangen
- Lule Sami: name:smj - Official language in the municipality of Hábmer - Hamarøy
- Southern Sami: name:sma - Official language in the municipalities of Snåase - Snåsa and Raarvihke - Røyrvik
- Skolt Sami: name:sms
- Pite Sámi: name:sje
- Kven (Finnish origin): name:fkv - Third administrative language in the municipality of Porsanger - Porsanki
Within the municipalities listed above all Norwegian names should be tagged with name:no. Outside of these municipalities Norwegian names should be tagged with name:no wherever multiple languages are present for the name of an object. If only the Norwegian name is present (outside of the listed municipalities) it should be tagged with name only.
The name key should always be used in addition to the language specific key. If names are present in more than one of the Norwegian, Sami or Kven languages for a given object, they should all be included in name with a spaced hyphen " - " between them. In the municipalities listed above, the Sami name should be the first, otherwise the Norwegian name should be the first.
Example (in Porsanger municipality):
See also:
- Import files with all official place names and correct language tagging: No:Import av stedsnavn fra SSR2
- Norwegian names for other nations
- Norwegian names for other places abroad
- Transliteration of modern greek and cyrillic names to Norwegian
Pakistan
The official languages of Pakistan are Urdu (name:ur=*) and English (name:en=*). These languages are lingua franca; their official status serves to facilitate inter-communication between native speakers of a wider variety of languages. Urdu and/or English are commonly used in official documentation, education, and media in Pakistan. About 7% of Pakistanis speak Urdu as a first language, but is understood by the majority of the population as a secondary language. English is understood by a large minority of Pakistanis. Internet usage has proliferated rapidly in recent years, and Pakistan has 8th highest number of internet users in the world as of 2021.
Most people in Pakistan speak a regional language natively. Common regional languages include but are not limited to:
- Punjabi (name:pnb=* for Shahmukhi script used in Pakistan)
- Pashto (name:ps=*)
- Sindhi (name:sd=*)
- Balochi (name:bal=*)
- Brahui (name:brh=*)
Many of these languages are also spoken in neighboring countries, and the conventions for distinguishing differences in use of the same language across different locales in South Asia is currently not accurately defined by any of the existing ISO standards. The long-standing convention OSM and on other multi-lingual sites such as Wikipedia has been to use different language codes for different variants of the same language. name:pa=* refers to Punjabi written in Gurmukhi script used in India, and name:pnb=* refers to Punjabi written in Shahmukhi script used in Pakistan. Besides the difference in script, these codes refer to the same language. Suffixes to specify script are typically not used in this case and are unlikely to be supported or expected by data consumers for Punjabi. (The ISO 15924 suffix which comes closest to describing Shahmukhi is "Aran," or "Arabic Nastaliq," which confusingly describes the typesetting most commonly used for various languages in Pakistan rather than a particular script variant and is outside of the scope of what Unicode accounts for. It is unlikely this is ever used or expected.)
There are some language terms you may come across in references which are not easy to define, or lack a clear definition. Saraiki describes the native language to various people in and around southern Punjab which is mutually intelligible with Punjabi; sources vary as to whether or not it constitutes a separate language. Hindko is used as an umbrella term for variety of dialects across discontinuous areas of Pakistan which are also mutually intelligible with Punjabi. Lahnda and Western Punjabi are exonyms which have been used by linguists in varying ways to describe a non-specific regional variant, or group of variants spoken in Pakistan or western Punjab more generally - these terms are not valid descriptors of any particular variant and are not recognizable to most Punjabi speakers. Sources referring to either of these two terms as if they constitute a separate language or variant can be disregarded as they have no bearing to ground truth.
"Default" official names or signposted names can vary in their origin; tags with language suffixes can be added in conjunction with a default name=* to help clarify the language a name is associated or where a name in another language exists.
Pakistan is home to many immigrants and refugees, and surrounded by countries which have people groups in common and are also multi-lingual. Translations where available to any applicable languages are potentially useful. Examples of languages that residents of Pakistan may speak natively can include, but is not limited to, Persian/Dari, Bengali, Rohingya, Uzbek, Turkmen, Tajik, Somali, Mandarin Chinese, Tibetan, Uyghur, Arabic, and Russian.
Philippines
- Main article: Philippines/Mapping conventions
The official languages of the Philippines are English and Filipino (a standardized form of Tagalog).
Signs are predominantly in English across the country, but some are in Filipino or a regional or foreign language. Most features are named in English (or sometimes Filipino or regional languages); any other names are tagged separately.
The current community consensus on naming is to use the official English name for most geographical features (country name, places, landforms, waterbodies). For POIs and road names, follow the predominant name in signage.
Where tagging a Filipino name, generally the tl
suffix is preferred, as Filipino is basically a standard variety of Tagalog.
Recognized regional languages
Name | Variety | ISO code | Location used | Scripts |
---|---|---|---|---|
Aklanon (Akeanon) | akl
|
Aklan | Latin | |
Cebuano (Bisaya, Sinugboanon) | ceb
|
Cebu, Bohol, Negros Oriental, western and southern Leyte, most of Mindanao | Latin, Baybayin (Badlit) | |
Central Bikol | bcl
|
Bicol region | Latin, Baybayin (Basahan) | |
Chavacano (Chabacano) | cbk
|
Zamboanga City, Cavite | Latin | |
Hiligaynon (Ilonggo) | hil
|
Iloilo, Negros Occidental, parts of central Mindanao | Latin | |
Ilocano | ilo
|
Ilocos region, Cagayan Valley, Cordillera region | Latin, Baybayin (Kur-itan) | |
Ivatan | Babuyan Ivatan (Ibatan) | ivb
|
Babuyan Island | Latin |
Batanes Ivatan | ivv
|
Batanes | Latin | |
Kapampangan | pam
|
Pampanga and Tarlac | Latin | |
Karay-a | krj
|
Antique | Latin | |
Maguindanao | mdh
|
Maguindanao provinces (Maguindanao del Norte and Maguindanao del Sur) | Latin, Arabic (Jawi) | |
Maranao | mrw
|
Lanao provinces | Latin, Arabic (Jawi) | |
Pangasinan | pag
|
Pangasinan | Latin | |
Sambal (Zambaleño) | xsb
|
Zambales | Latin | |
Surigaonon | Surigao | sgd
|
Surigao del Norte, Dinagat Islands | Latin |
Tandaganon | tdg
|
Surigao del Sur | Latin | |
Tagalog | tl
|
Metro Manila, Bataan, Bulacan, Nueva Ecija, CALABARZON, Mindoro, Marinduque | Latin, Baybayin | |
Tausug | tsg
|
Sulu | Latin, Arabic (Jawi) | |
Waray-Waray (Waray) | war
|
Samar and eastern Leyte | Latin | |
Yakan | yka
|
Basilan | Latin |
Poland
Poland has one official language (Polish), one recognized regional language (Kashubian) and one unrecognized, de-facto minority language (Silesian). There are also regions where two names are used (also on street signs) because of big percentage of minorities (mostly German and Kashubian). Correct tagging for these is as follows:
- name=Białystok (official name in Polish)
- name:be=Беласток (Belarusian name for Białystok)
- name:lt=Vaičiuliškės (Lithuanian name for Wojciuliszki)
- name:csb=Miechùcëno (Kashubian name for Miechucino)
- name:de=Sankt Annaberg (German name for Góra Świętej Anny)
- name:szl=Anaberg (Silesian name for Góra Świętej Anny)
- name:rue=Бiлянка (Rusyn name for Bielanka)
Portugal
Portugal has one official language (Portuguese) and one recognised regional language (Mirandese). Correct tagging for these is as follows:
- name=Cicouro/Cicuiro (official dual name)
- name=Cicuiro (official name in Mirandese)
- name:pt=Cicouro (Portuguese name)
- name:mwl=Cicuiro (Mirandese name)
Qatar
Signs (including street signs) in Qatar are written in Arabic and in English, tagging is:
name=شارع القاهرة for Arabic name
name:en=Cairo Street for the English name
name=شارع 25 for Arabic name
name:en=Street 25 for the English name
The refs for the ring roads are displayed in English with "Ring" spelled out.
ref=C Ring
Many roads have two names - one word name and one number name. The number name should go into the alt_name tag.
Romania
In cities and villages where there is a minority representing at least 20% of the population, the local signs must be multilingual. In this case, street and city names should be written in Romanian; additionally, one can add the name in the secondary language using a different tag.
For cities without a significant minority population, street names must be written in Romanian. City names can be added in different languages using name:iso_code=* if there are significant sources supporting that name.
For example:
- in Târgu Mureș, tagging should be:
- in Bucharest, tagging should be:
For features that have Transylvanian Saxon names, the tag name:gem=* is being used.
Russian Federation
Since Russian is the official language of Russian Federation name=* tags should contain the name in Russian (Cyrillic). For Russian regions having own official languages, native names should also be tagged.
For example, Altai republic uses Altay language in addition to Russian.
name=Катунь + name:ru=Катунь + name:alt=Кадын
In case of international brands, an original name may be used without translation if a brand holder prefers to use it without localization. For example:
name=KFC, name=Subway or name=Toyota should not be transliterated at all since brand holders uses original names.
Please, don't forget to put the same value to name:code=* key in the favor of data completeness (name=value + name:code=value).
If international company use cyrillic name:
name=Макдоналдс + name:ru=Макдоналдс + name:en=McDonald's or name=Папа Джонс + name:ru=Папа Джонс + name:en=Papa John's.
Serbia
The Serbian language is using both Cyrillic (official) and Latin (popular) alphabets, so the naming scheme needs to support both. The current proposal is to use name:sr=* for the Cyrillic script, and name:sr-Latn=* for Latin. The locale tags have been chosen according to BCP 47.
For names of places or natural features, default name=* tag should be filled in using Serbian Cyrillic, unless the feature is in an area where the language and script of the sizable ethnic minority is in official use (e.g. Subotica or Preševo). In that case, name:sr=* must be added, as well as the tag specifying the language of the default tag (e.g. name:hu=*, name:sq=*, etc.).
If name represent shop/amenity which is written/branded in Latin (looking at ground truth, signs, web site...), or name is clearly in English, "name=*" tag should be written in original (Latin) language, where name:sr=* can be added with common transliteralization (example are "Tempo"/"BENU apoteka"/"Pepco", or English names like "Black & White", "Café du Rendez-vous", "Black Turtle Pub" with transliteralization like "Макси", "Темпо" when that transliteralization makes sense).
Slovakia
There are regions in Slovakia in which a minority language is spoken by a large percentage or even the majority of local inhabitants (e.g. Hungarian in Southern Slovakia). Some of those places (villages, towns) do have official names in the local language, the state does recognize the minority language at those municipalities. In those cases, the current state of tagging is this:
name=official name in Slovak
name:hu=official name in Hungarian
The current opinion of the majority of the active Slovak mapping community is to NOT put both names into the name=* tag. If you'd like to discuss this, please visit the Slovak forum.
Slovenia
There are 2 regions in Slovenia in which an officially recognized minority language are spoken by a large percentage of local inhabitants, namely:
Those 2 minority languages are officially recognized by the Constitution (unlike some newer, albeit larger ex-Yugoslav minorities) and co-official in these areas. In these 2 parts some of the places (cities, villages, towns, hamlets) and/or streets have an official names also in that official language.
In those areas, the tagging is done like this:
- name=official name in Slovenian / official name in minority language (= names separated by "/" sign, same as on the signs, example shown on the right)
- name:sl=official name in Slovenian
Followed by the name in minority language:
Names in other languages can be added to separate tags, but NOT to the main name=* tag.
- name:de=name in German
- name:hr=name in Croatian
- name:it=name in Italian (eg in areas of Slovenia where Italian is not officially recognized as minority language)
- name:ja=name in Japanese
- ... other languages as needed / known ...
South Africa
Official languages are:
Language | Tag | Tag uses |
---|---|---|
Afrikaans | name:af=* | |
English | name:en=* | |
Northern Sotho Pedi/Sepedi |
name:nso=* | |
Southern Ndebele | name:nr=* | |
Southern Sotho Sotho/Sesotho |
name:st=* | |
Swazi | name:ss=* | |
Tsonga | name:ts=* | |
Tswana | name:tn=* | |
Venda | name:ve=* | |
Xhosa | name:xh=* | |
Zulu | name:zu=* |
Other spoken languages:
Language | Tag | Tag uses |
---|---|---|
Khoekhoe Nama/Damara |
name:naq=* | |
Northern Ndebele | name:nd=* |
Spain
Depending on the location you could find 7 additional languages:
- Galician (name:gl=*)
- Asturian (name:ast=*)
- Basque (name:eu=*)
- Extremaduran (name:ext=*)
- Aragonese (name:an=*)
- Aranese (name:oc=*)
- Catalan (name:ca=*)
Catalan is spoken in Catalonia, the Balearic Islands and several places in the Valencian Community. Usually the official name for the places is in Catalan but sometimes you are going to find names in Spanish. For example the official name for one of the provinces is Lleida, but also for tradition this place is known and marked in several maps as Lérida.
The correct tagging would be:
name=Lleida
name:es=Lérida
name:ca=Lleida
The same happens with Galician, spoken in Galicia, and with Basque in the Basque Country and Navarre. There are few exceptions like Donostia/San Sebastián and Vitoria-Gasteiz where the official form depends on the local administration and historic use of the names, so the correct tagging in this case would be:
name=Vitoria-Gasteiz
name:es=Vitoria
name:eu=Gasteiz
Please check out the right situation in each placename.
Switzerland
The ISO code for Rhaeto-Romance languages including the 4. national language Romansh is rm (ISO 639-1; ISO 639-2: roh) Currently ISO 639-1 and -2 specifications do not provide any differentiation between Romansh dialects, therefore rm should be used mainly for the more or less official "Rumantsch Grischun". The problem of missing ISO codes for different Romansh dialects seems still unresolved and needs discussion.
For names in Swiss german dialects ('Schwiizertüütsch','Schwyzerdütsch') add following tag to name=* tags: name:gsw=a Swiss german name. For explanations about the notation of Swiss german dialects see GISpunkt HSR Wiki.
Example: name:gsw=Züri as an addition to name=Zürich and name:en=Zurich. Code gsw
most probably means "German SWiss". See [3] and [4].
See de:Switzerland/Map Features#Mehrsprachige Benennung (name).
Taiwan
Translating Taiwan names
Taiwan uses Traditional Han characters. Names in Chinese should use these characters. Romanised names should be mentioned as the name:en=Street Name field.
Taiwan#Translation (中文地址英譯) mentions how to translate names.
Following the Taiwan Post Office guide, the following rules should be applied:
Name (Chinese) | Name (English) |
---|---|
大街 | Avenue |
大道 | Boulevard |
路 | Road |
西 | West |
東 | East |
段 | Section |
街 | Street |
巷 | Lane |
弄 | Alley |
Since "Aly." and "Ln." sound quite cryptic and don't save that many characters, the whole English name will be used for Lanes and Alleys.
A whole standard entry should include:
name=<Chinese> name:zh=<Chinese> name:en=<English>
Here is a real life example:
name=南京東路三段256巷28弄 name:zh=南京東路三段256巷28弄 name:en=Alley 28, Lane 256, Section 3, Nanjing East Road
Taiwan Romanisation
Avoid transliteration except in special cases.
Different Romanisations are in use in Taiwan. See WikiProject_Taiwan/Taiwan_tagging#Romanization. name:en=* should use the name given on the street sign.
There's not yet a consensus on how to enter other romanisations. It might be useful as different forms are sometimes used (e.g. on maps or on business cards) and it should be possible to find streets based on such variants.
A possible method to enter names in different romanization could be using alt_name:en=* for different English spelling variants. Or use name:zh-Latn-pinyin=*, name:zh-Latn-tongyong=*, name:zh-Latn-wadegile=* (See also Type:variant entries in IANA language subtag registry), but this is not too popular in OSM for the time being.
(There might even be a point in romanizing Hakka and Hokkien, hak-Latn and nan-Latn. It's fortunately not as hard, as the systems are much less controversial.)
Other zh in Taiwan
name:zh-Hans=*
can be used to label Simplified Chinese variant of name, name:nan=*
and name:hak=*
can be used to represent Minnan/Hokkien and Hakka name, see also #China.
Some features currently use name:zh-Bopo=*
should be used to represent their Mandarin Chinese name pronunciation in Zhuyin symbols, as the ISO 15924 standard code for Zhuyin symbols is Bopo (stand for Bopomofo). The historically used code zh_zhuyin is not a standard BCP 47 language tag and should not be used again.
Taiwan's Austronesian languages
Taiwan is home to many Austronesian aboriginal peoples with their own languages. If there is an aboriginal name known for a place, it should be added to a name:LANG tag, where LANG is the language code of the specific language in ISO 639-3. The writing should conform to the current Writing systems of Formosan languages (原住民族語羅馬字).
See Formosan languages or WikiProject_Taiwan/Taiwan_tagging#Naming scheme for codes to represent Formosan languages. (Note the Formosan classification leaves out the Yami language.)
Thailand
Thailand has names written in Thai script. Many street signs list RTGS transliterated (English) names as well.
We state the local (Thai) name in the name tag. For other languages the name-tag is extended by the language code. A special rendering allows selection of the language to display as well as bilingual naming: http://thaimap.osm-tools.org/
Transliterated Thai script (using RTGS) is usually entered in the name:en tag. Whether it is a translation or a full transliteration depends on the context and on the ground-truth. A good rule of thumb is to check what locals would use when describing the feature to a foreigner or how it is listed in the english Wikipedia. For example "วัดโพธิ์" is called "Wat Pho", not "Pho Temple". Here a full transliteration is used. On contrast "ถนนสุขุมวิท" is called "Sukhumvit Road" (also on street signs), not "Thanon Sukhumvit". The name is still a RTGS transliteration but the word for Road is translated.
Example:
name=เชียงใหม่ name:en=Chiang Mai name:th=เชียงใหม่
If the English name and the direct romanization are different, the latter can be listed under the name:th-Latn=* tag, e.g. name:th-Latn=Thanon Sukhumwit.
In some areas of Thailand other languages are common as well. Often signs contain words in those languages as well. Use the appropriate language code to enter them in OSM.
The Language spoken in Northern Thailand is Kam Muang (ᨣᩴᩤᨾᩮᩥᩬᨦ) and can often be found on street signs with the ISO639-3 code of nod.
Example:
name=เชียงราย name:th=เชียงราย name:en=Chiang Rai name:nod=ᨩᩭᨦᩁᩣᩭ
In the 4 provinces of Songkla, Patani, Yala and Narathiwat Bahasa Jawi (بهاس جاوي) is used widely, these are sometimes written in either Roman, Arabic or Thai script.
Example:
name=ปัตตานี name:th=ปัตตานี name:en=Pattani name:mfa-Latn=Patani name:mfa-Arab=ڤطاني name:mfa-Thai=ปัตตานี
In general, place names in Thailand used in the name=*
tag should be written in Thai script. However, there is an exception. If the owner of the place (a business, for example) prefers another language than Thai (usually English), as indicated by signage, that language should be used instead.
Tunisia
Street signs in Tunisia are written in Arabic and in French, tagging is:
name=عربي for Arabic name
name:ar=عربي for Arabic name
name:fr=français for the French version
Turkmenistan
- Main article: Turkmenistan#General_Naming_Conventions
Turkmenistan has one official language, Turkmen, and by the year 2000 had officially transitioned from the Turkmen Cyrillic alphabet to the Turkmen Latin alphabet. Thus name=* should be in Turkmen in the Turkmen Latin alphabet. Much legacy signage remains in Russian, and many public buildings now feature bilingual signs in Turkmen and English. Hence, name:ru=*and name:en=* tags are often warranted.
Many street and municipality names have been changed from Soviet-era names celebrating Communists, Communist ideals, heroes of the Bolshevik Revolution, and Russian cultural figures to names celebrating Turkmen, Persian, and Arabic figures. It is incorrect to tag the former names in Russian as name:ru=*. They should be tagged as old_name:ru=* to indicate that the name has changed.
Ukraine
Ukraine has one official language (Ukrainian). However due to historical background of many territories in some areas Polish is also in use. Additionally, as a post-Soviet cultural phenomenon, Russian is extremely widespread as a second language, in some areas (Crimea, Eastern Ukraine) dominating over official Ukrainian. Finally, in Crimea there is another language used by the peninsula's indigeous people, Crimean Tatars, who constitute a notable part of the population there. Considering these factors, Ukrainian OSM community widely uses Relation:associatedStreet to provide scalable multilingual support. Generally the following scheme is used:
name on the way (street) - in Ukrainian or in Russian, according to the truth on ground rule. There had been several holywars concerning "default" language. While inside a city it is recommended to keep this tag to a single language prevalent there (i.e. on the street signs). "Default" for Ukraine is Ukrainian, however one should use it reasonably. As an example many signs in Crimea installed during Soviet period are still in Russian. In questionable situations DWG recommends to keep to the "Truth on the Ground" rule.
name on the relation (associatedStreet) - same as above.
name:uk, name:ru on the relation (associatedStreet) - for multilanguage support. May be accompanied by the less widespread name:pl (Polish), name:crh (Crimean Tatar) as well as international name:en etc.
Note that all street ways sould be included in the relation with "street" role, while the houses related to the street should be included with "house" role for correct address processing.
Regarding 2022 war with Russia, see also Russian–Ukrainian war
United Arab Emirates
Signs (including street signs) in the UAE are written in Arabic and in English, tagging is:
name=شارع القاهرة for Arabic name
name:en=Cairo Street for the English name
The street signs in the locations noted below that have English names for numbered streets are displayed in a slightly different order from each other.
{{tag|name||شارع 25} for Arabic names with street numbers
name:en=Street 25 for the English name in Abu Dhabi (numbered streets only)
name:en=25 Street for the English name in Dubai (numbered streets only)
name:en=25th Street for the English name in Al Ain (numbered streets only)
United Kingdom
Cornwall
Cornwall is a county in the UK. People spoke Cornish (Kernewek) up to the 19th Century. There are some people that think Cornwall should/could be its own country, or at least keep its own identity and so some road signs to attractions get the Cornish flag spray painted over the English Heritage sign.
Some of the street signs of Kerrier District Council have the names also written in Cornish. It seems good to add this data to OSM, though the English name is likely to be the only one used.
The ISO 639-1 code is kw. So name=English Street, and name:kw=Cornish Translation (if shown).
Isle of Man
Many street signs in the Isle of Man have both an English version and a Manx version of the name. The Manx version should be added to the object using the name:gv=* tag, and the English version added with the name:en=*. Whichever version is used as the primary name (usually the English version) should be used in the main name=* tag as well.
Northern Ireland
Some street signs in Northern Ireland, particularly in West Belfast, are in both English and Irish, and most place names have an Irish translation. The English name should be tagged with name=*, and the Irish with name:ga=*. The rule in the Republic where the Irish name is listed with name=* in Gaeltachts (Irish-speaking areas) also applies here, however as of yet there are no official Gaeltachts in the North.
There are also street signs which are in both English and Ulster Scots. Examples can be seen in villages such as Ballywalter and Greyabbey on the Ards peninsula. The Scots tag is name:sco=*.
Scotland
Some signs in the Highlands of Scotland have names in both English and Gaelic, almost always for place names (Mallaig, Fort William etc.), but often also on street signs, such as this one in Oban. Gaelic names can be tagged using name:gd=*, with name=* for the name in English. Note there are a few place names where the Gaelic name is the official name, for example Drochaid a' Chaolais Chumhaing in Sutherland.
gd is the ISO 639-1 code for Scottish Gaelic, which isn't the same as the other Gaelic languages (Irish and Manx), so this code is only for Scottish Gaelic. This is the Gaelic which is used in Canada as well.
An OSM rendering showing the Gaelic names is available at OSM Alba.
Scots names can be tagged using name:sco=*, with name=* for the name in English. Names in Scots are not usually listed on signs. Often the Scots name for a place can only be determined with local knowledge.
Some places (mainly islands) have Old Norse names as well, use name:non=* for these. (non is the ISO 639-2 code for Old Norse)
Na h-Eileanan Siar
In the Western Isles (officially Na h-Eileanan Siar), Gaelic is the primary language. The Gaelic name can be tagged using name=*, with name:en=* for the English name. Most street signs primarily show the Gaelic name. An example of this in the wild is Steòrnabhagh (Stornoway).
Wales
In Wales many, but by no means all, places and features are named differently in Welsh and English.
Instances where the name is different in Welsh and English
The name tag should contain the name widely used by the local population.
This should be either the name used in English or the name used in Welsh but not both.
If the name included in the name: tag is that used in English, name:cy can be added to show the alternate name (cy is the two letter ISO639-1 language code for the Welsh language).
If the name included in the name: tag is the name used in Welsh, name:en can be added to show the alternate name (en is the two letter ISO639-1 language code for the English language).
Examples:
- name: Welshpool
- name:cy Y Trallwng
- name: Biwmares
- name:en Beaumaris
It should not be necessary to add both name:en and name:cy though it is not harmful to do so.
Instances where the name is the same in Welsh and English
The name: tag should contain the name.
It is not, in principle, necessary to add either a name:cy or a name:en (since there is only one name in both languages).
However, multi-lingual tagging in Wales is currently patchy. Adding a name:cy tag even though this will duplicate the information in the name: tag would help other mappers distinguish between cases where multi-lingual tagging has not yet been applied and cases where the name is the same in Welsh and English.
Example:
- name: Ynysybwl
- name:cy Ynysybwl
Note: This has been the subject of much discussion discussion, also with editions of this article of the wiki. The most recent discussion can be found on this thread. For earlier discussions please see this thread and this of talk-gb for more information.
United States of America
Alaska
Languages of indigenous peoples of Alaska:
Name | ISO code | Location used |
---|---|---|
Inupiat (Inupik) | ik
|
Arctic Northwest Arctic |
Central Siberian Yupik | ess
|
St. Lawrence Island |
(Central Alaskan) Yup'ik | esu
|
Norton Sound to Alaska Peninsula |
Alutiiq | ems
|
Koniag, coastal Chugach, Kodiak |
Unangan (Aleut) | ale
|
Aleutians |
Dena'ina (Tanaina) | tfn
|
Southcentral Alaska |
Deg Xinag (Ingalit) | ing
|
Interior Alaska |
Holikachuk | hoi
|
Innoko River |
Koyukon | koy
|
Interior Alaska |
Dinak'i (Upper Kuskokwim) | kuu
|
Upper Kuskokwim River |
Gwich’in (Kuchin) | gwi
|
Arctic Northeast Alaska |
Lower Tanana | taa
|
Interior Alaska |
Upper Tanana | tau
|
Interior Alaska |
Tanacross | tcb
|
Interior Alaska |
Hän | haa
|
Interior Alaska |
Ahtna | aht
|
Copper River |
Eyak | eya
|
Copper River Delta |
Tlingit | tli
|
Alexander Archipelago |
Haida | hai
|
Haida Gwaii |
Sm’algyax̣ (Coast Tsimshian) | tsi
|
New Metlakatla, lower Skeena River |
American Samoa
With only 3% of the population speaking English only, and 88.6% speaking Samoan, most names should be in Samoan, with name:sm=* and name:en=* if applicable.
Samoan | sm
|
American Samoa |
Guam
The Filipino language (name:fil=* has a notable presence in Guam, however, English remains the majority. Chamorro name:ch=* is also spoken by about 17% of the population. Some place names retain names originating from these languages.
Chamorro | ch
|
Guam, Northern Mariana Islands |
Northern Mariana Islands
Like American Samoa, English speakers are a minority. According to the CIA World Factbook, 33% of the population speak "Philipine languages", the majority of which is most likely Filipino (name:fil=*). The official languages are Chamorro, Carolinian, and English. In general, use the names of places on USGS topographic maps or signed names if possible.
Carolinian | cal
|
Northern Mariana Islands |
Chamorro | ch
|
Guam, Northern Mariana Islands |
Tanapag | tpv
|
Northern Mariana Islands |
Hawaiʻi
The US state of Hawaiʻi has both English and Hawaiian (name:haw=*) as its official languages. Most place names retain the aboriginal Hawaiian names, with a few notable examples like Pearl Harbor. Most place names are now officially spelled with the ʻokina (glottal stop) and kahakō (macron) where appropriate. Use the ʻokina ( ʻ ) on names of Hawaiian origin even when signs appear to use the straight apostrophe ( ' ) or a curly quotation mark ( ‘ ’ ).
Puerto Rico
The predominantly spoken language in Puerto Rico is Spanish (name:es=*).
Uzbekistan
Uzbekistan has one official language: Uzbek. Additionally, Karakalpak is recognized for the Autonomous Republic Karakalpakstan.
Historically, most places had Russian names, because of the Soviet Union. Many minorities of Russian, Tatar, Kyrgyz, Turkmen, and even German origin had been living or are still living in Uzbekistan. Therefore, nearly all places had Russian names that have only in the past years been substituted with Uzbek names in Latin letters or have traditional names in other languages. Russian continues to be widely used, especially in larger cities. On their websites or on social media, many businesses in Uzbekistan refer to their address in Russian. Hence, the current naming practice in Uzbekistan is to use Uzbek (in Latin script) for default names, while Russian names are thoroughly added in name:ru=*. In Karakalpakstan, the default name shall be in Karakalpak.
name=Toshkent for official Uzbek name in Latin letters
name:kaa=Tashkent for the Karakalpak name
name:ru=Ташкент for the Russian name
name:en=Tashkent for the main English name
name:de=Taschkent for the German name
alt_name:uz=Тoшкент for the alternative Uzbek name in Cyrillic or other Latin versions of the name
alt_name:en=Toshkent for the alternative English names
Vietnam
Vietnamese is the national language of Vietnam. Vietnamese-language names are tagged name:vi=*. See Key:name:vi for details about orthography and tips for non-Vietnamese speakers who need to map Vietnamese-language names. In many rural parts of Vietnam, languages other than Vietnamese are commonly spoken; names in these languages should also be tagged if known.
Sometimes a boundary is a shared feature like a river with different names on each side of the border. One example is the Rhine river separating Germany and France.
Always add name:code=* for each involved language, and for compatibility with older rendering engines, also set name=* to both names, separated by a forward slash with spaces in between, sorted in (a somewhat neutral) Unicode alphabetical order.
For the Rhine river, this would be:
- name=Le Rhin / Rhein
- name:fr=Le Rhin
- name:de=Rhein
Note that, in the rare case when the feature borders multiple language regions, like the Danube river, joining all names within name=* can produce an inconveniently long string. Though not implemented anywhere yet, one could:
- create a relation for the whole feature without name=*, only name:code=* tags
- break down the feature for each pair of adjacent regions (usually countries)
- for each pair of regions, create a relation for the feature's parts separating the two regions with name=* containing the two local names
and no name:code=* tags
Finally, if only part of the feature is used as a boundary, set name=* of the non-boundary parts to the name used in the containing region, as in most other objects.
Key variants can be suffixed with date namespace suffix (such as "old_name:en:1921-1932").
All documented suffixed subkeys:
- Key:name:TEC
- Key:name:aaq
- Key:name:ab
- Key:name:abe
- Key:name:ace
- Key:name:ady
- Key:name:af
- Key:name:ak
- Key:name:aln
- Key:name:alq
- Key:name:als
- Key:name:alt
- Key:name:am
- Key:name:an
- Key:name:ang
- Key:name:ar
- Key:name:arc
- Key:name:arz
- Key:name:as
- Key:name:ast
- Key:name:aus
- Key:name:av
- Key:name:ay
- Key:name:az
- Key:name:azb
- Key:name:ba
- Key:name:bal
- Key:name:ban
- Key:name:bar
- Key:name:bat-smg
- Key:name:bcl
- Key:name:be
- Key:name:be-tarask
- Key:name:ber
- Key:name:bg
- Key:name:bh
- Key:name:bi
- Key:name:bjn
- Key:name:bm
- Key:name:bn
- Key:name:bo
- Key:name:botanical
- Key:name:bpy
- Key:name:br
- Key:name:brh
- Key:name:bru
- Key:name:brx
- Key:name:bs
- Key:name:bug
- Key:name:bxr
- Key:name:ca
- Key:name:car
- Key:name:carnaval
- Key:name:cdo
- Key:name:ce
- Key:name:ceb
- Key:name:ch
- Key:name:chm
- Key:name:cho
- Key:name:chp
- Key:name:chr
- Key:name:chy
- Key:name:ckb
- Key:name:clc
- Key:name:cnr
- Key:name:cnr-Cyrl
- Key:name:co
- Key:name:cr
- Key:name:crh
- Key:name:cs
- Key:name:csb
- Key:name:cu
- Key:name:cv
- Key:name:cy
- Key:name:da
- Key:name:dak
- Key:name:de
- Key:name:del
- Key:name:diq
- Key:name:doi
- Key:name:dsb
- Key:name:dv
- Key:name:dyu
- Key:name:dz
- Key:name:ee
- Key:name:egl
- Key:name:el
- Key:name:en
- Key:name:eo
- Key:name:es
- Key:name:esu
- Key:name:et
- Key:name:etymology
- Key:name:etymology:wikidata
- Key:name:etymology:wikipedia
- Key:name:eu
- Key:name:ext
- Key:name:fa
- Key:name:ff
- Key:name:fi
- Key:name:fil
- Key:name:fit
- Key:name:fj
- Key:name:fkv
- Key:name:fo
- Key:name:fr
- Key:name:frp
- Key:name:frr
- Key:name:fur
- Key:name:fy
- Key:name:ga
- Key:name:gaceria
- Key:name:gag
- Key:name:gan
- Key:name:gc
- Key:name:gcf
- Key:name:gd
- Key:name:gem
- Key:name:gil
- Key:name:gl
- Key:name:glk
- Key:name:gn
- Key:name:gom
- Key:name:gr
- Key:name:grc
- Key:name:gsw
- Key:name:gu
- Key:name:gv
- Key:name:ha
- Key:name:hak
- Key:name:haw
- Key:name:he
- Key:name:hi
- Key:name:hif
- Key:name:hil
- Key:name:hop
- Key:name:hr
- Key:name:hsb
- Key:name:ht
- Key:name:hu
- Key:name:hy
- Key:name:ia
- Key:name:id
- Key:name:ie
- Key:name:ig
- Key:name:ii
- Key:name:ik
- Key:name:ilo
- Key:name:inh
- Key:name:io
- Key:name:is
- Key:name:it
- Key:name:iu
- Key:name:ja
- Key:name:ja-Hira
- Key:name:ja-Latn
- Key:name:ja kana
- Key:name:ja rm
- Key:name:jbo
- Key:name:jv
- Key:name:ka
- Key:name:ka-Latn
- Key:name:kaa
- Key:name:kab
- Key:name:kbd
- Key:name:kg
- Key:name:ki
- Key:name:kio
- Key:name:kk
- Key:name:kl
- Key:name:km
- Key:name:kmr
- Key:name:kn
- Key:name:kn:iso15919
- Key:name:ko
- Key:name:ko-Hani
- Key:name:ko-Latn
- Key:name:koi
- Key:name:kr
- Key:name:krc
- Key:name:krj
- Key:name:krl
- Key:name:ks
- Key:name:ksh
- Key:name:ku
- Key:name:kum
- Key:name:kv
- Key:name:kw
- Key:name:ky
- Key:name:la
- Key:name:lad
- Key:name:language
- Key:name:lb
- Key:name:lbe
- Key:name:left
- Key:name:lez
- Key:name:lfn
- Key:name:lg
- Key:name:li
- Key:name:lij
- Key:name:lkt
- Key:name:lld
- Key:name:lmo
- Key:name:ln
- Key:name:lo
- Key:name:lrc
- Key:name:lt
- Key:name:ltg
- Key:name:lus
- Key:name:lv
- Key:name:lzh
- Key:name:mai
- Key:name:mak
- Key:name:mdf
- Key:name:mfe
- Key:name:mg
- Key:name:mh
- Key:name:mhn
- Key:name:mhr
- Key:name:mi
- Key:name:mic
- Key:name:min
- Key:name:mk
- Key:name:ml
- Key:name:mn
- Key:name:mnc
- Key:name:mni
- Key:name:moe
- Key:name:moh
- Key:name:mos
- Key:name:mr
- Key:name:mrj
- Key:name:ms
- Key:name:ms-Arab
- Key:name:mt
- Key:name:mtp
- Key:name:mus
- Key:name:mwl
- Key:name:my
- Key:name:myv
- Key:name:mzn
- Key:name:na
- Key:name:nah
- Key:name:nan
- Key:name:nan-Hant
- Key:name:nan-Latn-pehoeji
- Key:name:nan-Latn-tailo
- Key:name:nap
- Key:name:nb
- Key:name:nds
- Key:name:ne
- Key:name:network:*
- Key:name:new
- Key:name:nl
- Key:name:nn
- Key:name:no
- Key:name:non
- Key:name:nov
- Key:name:nrf
- Key:name:nrm
- Key:name:nso
- Key:name:nuk
- Key:name:nv
- Key:name:ny
- Key:name:oc
- Key:name:oj
- Key:name:oka
- Key:name:om
- Key:name:or
- Key:name:os
- Key:name:osa
- Key:name:ota
- Key:name:pa
- Key:name:pag
- Key:name:pam
- Key:name:pap
- Key:name:pcd
- Key:name:pdc
- Key:name:pfl
- Key:name:pi
- Key:name:pih
- Key:name:pjt
- Key:name:pl
- Key:name:pms
- Key:name:pnb
- Key:name:pnt
- Key:name:pot
- Key:name:prefix
- Key:name:pronunciation
- Key:name:ps
- Key:name:pt
- Key:name:pwn
- Key:name:qu
- Key:name:qua
- Key:name:rgn
- Key:name:right
- Key:name:rm
- Key:name:rmy
- Key:name:rn
- Key:name:ro
- Key:name:rrm
- Key:name:ru
- Key:name:ru:word stress
- Key:name:rue
- Key:name:rup
- Key:name:rw
- Key:name:sa
- Key:name:sah
- Key:name:sat
- Key:name:sc
- Key:name:scn
- Key:name:sco
- Key:name:sd
- Key:name:se
- Key:name:sg
- Key:name:sgs
- Key:name:sh
- Key:name:shn
- Key:name:shs
- Key:name:si
- Key:name:sjd
- Key:name:sje
- Key:name:sju
- Key:name:sk
- Key:name:skr
- Key:name:sl
- Key:name:sm
- Key:name:sma
- Key:name:smj
- Key:name:smn
- Key:name:sms
- Key:name:sn
- Key:name:so
- Key:name:sq
- Key:name:squ
- Key:name:sr
- Key:name:sr-Latn
- Key:name:srn
- Key:name:ss
- Key:name:st
- Key:name:stq
- Key:name:str
- Key:name:su
- Key:name:sv
- Key:name:sw
- Key:name:tr
- Key:name:ts
- Key:name:tt
- Key:name:tw
- Key:name:ty
- Key:name:tyv
- Key:name:tzl
- Key:name:udm
- Key:name:ug
- Key:name:uk
- Key:name:uk-Latn
- Key:name:uk:word stress
- Key:name:umu
- Key:name:unm
- Key:name:ur
- Key:name:uz
- Key:name:ve
- Key:name:vec
- Key:name:vep
- Key:name:vi
- Key:name:vi-Hani
- Key:name:vls
- Key:name:vo
- Key:name:vro
- Key:name:wa
- Key:name:war
- Key:name:was
- Key:name:wikipedia
- Key:name:wo
- Key:name:wuu
- Key:name:xal
- Key:name:xh
- Key:name:xmf
- Key:name:yi
- Key:name:yo
- Key:name:yue
- Key:name:yuf
- Key:name:za
- Key:name:zea
- Key:name:zgh
- Key:name:zh
- Key:name:zh-Bopo
- Key:name:zh-Hans
- Key:name:zh-Hans-CN
- Key:name:zh-Hans-MY
- Key:name:zh-Hans-SG
- Key:name:zh-Hant
- Key:name:zh-Hant-HK
- Key:name:zh-Hant-MO
- Key:name:zh-Hant-TW
- Key:name:zh-Latn
- Key:name:zh-Latn-CN-pinyin
- Key:name:zh-Latn-TW-pinyin
- Key:name:zh-Latn-TW-tongyong
- Key:name:zh-Latn-pinyin
- Key:name:zh-Latn-tongyong
- Key:name:zh-Latn-wadegile
- Key:name:zu
- Key:name:zza
Notes and references
See also
- OSM Localization Tool – a tool for adding names
- Semicolon value separator
- User:Wkentaur/OSM-Wikipedia_place_name_tool