IETF language tag

An IETF language tag is a standard identifier for a human language or dialect. It is a short string of text; an example is "en-US".

A language tag consists of a sequence of hyphen-separated subtags, which define and refine the language.

Registration of subtags is handled by IANA. Language tags are no longer registered directly.

[TODO: What exactly is the relationship between this and ISO 639?]

Specifications

 * RFC 5646: Tags for Identifying Languages
 * RFC 4647: Matching of Language Tags
 * BCP 47: Tags for Identifying Languages

Obsolete RFCs

 * RFC 1766: Tags for the Identification of Languages
 * RFC 3066: Tags for the Identification of Languages
 * RFC 4646: Tags for Identifying Languages

Links

 * IANA Protocol Registries, "Language Tags" section
 * IETF language tag
 * ISO 639
 * langtag.net