NOTICE: is no longer in use from 1st March 2024. Please use the OpenStreetMap Community Forum


Is it acceptable to use ISO 639-2 language codes for tags in languages that do not have a ISO 639-1 code? Examples are Cherokee (chr) and Muscovee (mus).

asked 16 Feb '11, 16:59

Baloo%20Uriza's gravatar image

Baloo Uriza
accept rate: 9%

edited 30 Oct '14, 13:16

aseerel4c26's gravatar image

aseerel4c26 ♦

Yes. The only reason for using ISO 639-1 is that it's familiar to a lot of people, but since you can use any tags you like in OpenStreetMap, it's OK to use ISO 639-2 for languages that need three letters.

permanent link

answered 16 Feb '11, 17:08

Jonathan%20Bennett's gravatar image

Jonathan Ben...
accept rate: 18%


Tagging is open but it is also a good practice to document the tags on the wiki. So if you decide to use ISO 639-2 in tag "name:*", you should explain it in, section i18n

(16 Feb '11, 17:18) Pieren

Looks like it's actually l8n

(16 Feb '11, 17:21) Baloo Uriza

There is also the wiki page for

It says to use the language's ISO 639-1 code, or ISO 639-2 if an ISO 639-1 code doesn't exist. The Wiki page for key:name should probably mention this, and link to that page.

(16 Feb '11, 17:30) Vclaw

According to wikipedia, ISO 639-3 is an even more comprehensive list than ISO 639-2

(30 Oct '14, 13:40) neuhausr

Actually the codes to use are the standard codes from the "BCP 47" standard, which contains:

  • a part of ISO 639-1 (excepting special codes not for languages and obsolete codes, or legacy codes for families),
  • a part of ISO 639-2 (same remark, but don't use them if there's a code in the previous list),
  • a part of ISO 639-3 (same remark, but don't use them if there's a code in the two previous lists)

These codes (in lowercase only) may be followed by suffixes separated by dashes (-) for

  • a (lowercased) script code from ISO 15924 (e.g. "latn")
  • a (lowercased) country or region code from ISO 3166-1 for the regional variant of the language
  • a (lowercased) variant code (e.g. "fonipa" for the IPA phonetics)

Those codes are to be used to mark tags that contain translated values, such as

  • "name=*" which can be derived into
  • "name:de=*" for the name in German.

Do not confuse these codes with those used as tag suffixes or prefixes to mark that a tag interpretation is country-specific (in that case the ISO 3166-1 regions codes are all uppercase), independantly of the language, such as:

  • "admin_type:FR=*" for an administrative type whose value is specific for France (giving additional status details not detailed in "admin_level" tags, or
  • "ref:FR:SIREN=*" for the normative references to organisations, collectivities, and professionals registered in France (a mandatory reference for all accounting and billing purpose).
permanent link

answered 29 Apr '16, 16:43

verdy_p's gravatar image

accept rate: 0%

edited 29 Apr '16, 16:46

Follow this question

By Email:

Once you sign in you will be able to subscribe for any updates here



Answers and Comments

Markdown Basics

  • *italic* or _italic_
  • **bold** or __bold__
  • link:[text]( "title")
  • image?![alt text](/path/img.jpg "title")
  • numbered list: 1. Foo 2. Bar
  • to add a line break simply add two spaces to where you would like the new line to be.
  • basic HTML tags are also supported

Question tags:


question asked: 16 Feb '11, 16:59

question was seen: 7,951 times

last updated: 29 Apr '16, 16:46

NOTICE: is no longer in use from 1st March 2024. Please use the OpenStreetMap Community Forum