Метка языка идентифицирует естественный язык: разговорный, письменный, или другой используемый людьми для обмена информацией с другими людьми. Машинные языки являются исключением. http использует метки языка внутри полей Accept-Language и Content-Language.
Синтаксис и запись http меток языка такие же, как определяемые RFC 1766 [1]. В резюме, метка языка состоит из одной или нескольких частей: метка первичного языка и, возможно пустой, ряд подчиненных меток:
language-tag = primary-tag *( "-" subtag ) primary-tag = 1*8ALPHA subtag = 1*8ALPHA
Внутри метки не допустим пробел и все метки не чувствительны к регистру. Пространство имен меток языка управляется IANA. Например метки содержат:
en, en-US, en-cockney, i-cherokee, x-pig-latin
Любая двухсимвольная первичная метка является меткой аббревеатуры языка ISO 639, а любая двухсимвольная подчиненная метка является меткой кода страны ISO 3166. (Последние три метки из вышеперечисленных - не зарегистрированные метки; все, кроме последней - примеры меток, которые могли бы быть зарегистрированы в будущем.)