CINXE.COM

RFC 1766 - Tags for the Identification of Languages

<!DOCTYPE html> <html data-bs-theme="auto" lang="en"> <head> <meta charset="utf-8"> <meta http-equiv="X-UA-Compatible" content="IE=edge"> <title> RFC 1766 - Tags for the Identification of Languages </title> <meta name="viewport" content="width=device-width, initial-scale=1"> <link href="https://static.ietf.org/fonts/inter/import.css" rel="stylesheet"> <link href="https://static.ietf.org/fonts/noto-sans-mono/import.css" rel="stylesheet"> <link rel="stylesheet" href="https://static.ietf.org/dt/12.28.2/ietf/css/document_html_referenced.css"> <script type="module" crossorigin="" src="https://static.ietf.org/dt/12.28.2/assets/embedded-e653257c.js"></script> <link href="https://static.ietf.org/dt/12.28.2/assets/create-pinia-singleton-091c62b7.js" type="text/javascript" crossorigin="anonymous" rel="modulepreload" as="script" /> <link href="https://static.ietf.org/dt/12.28.2/assets/Scrollbar-7de50899.js" type="text/javascript" crossorigin="anonymous" rel="modulepreload" as="script" /> <script src="https://static.ietf.org/dt/12.28.2/ietf/js/document_html.js"></script> <script src="https://static.ietf.org/dt/12.28.2/ietf/js/theme.js"></script> <link rel="alternate" type="application/atom+xml" title="Document changes" href="/feed/document-changes/rfc1766/"> <meta name="description" content="Tags for the Identification of Languages (RFC 1766, ; obsoleted by RFC 3066, RFC 3282)" > <link rel="apple-touch-icon" sizes="180x180" href="https://static.ietf.org/dt/12.28.2/ietf/images/ietf-logo-nor-180.png"> <link rel="icon" sizes="32x32" href="https://static.ietf.org/dt/12.28.2/ietf/images/ietf-logo-nor-32.png"> <link rel="icon" sizes="16x16" href="https://static.ietf.org/dt/12.28.2/ietf/images/ietf-logo-nor-16.png"> <link rel="manifest" href="/site.webmanifest"> <link rel="mask-icon" href="https://static.ietf.org/dt/12.28.2/ietf/images/ietf-logo-nor-mask.svg" color="#ffffff"> <meta name="msapplication-TileColor" content="#ffffff"> <meta name="theme-color" content="#ffffff"> <meta property="og:title" content="RFC 1766: Tags for the Identification of Languages"> <meta property="og:url" content="https://datatracker.ietf.org/doc/html/rfc1766.html"> <link rel="canonical" href="https://datatracker.ietf.org/doc/html/rfc1766.html"> <meta property="og:site_name" content="IETF Datatracker"> <meta property="og:description" content="This document describes a language tag for use in cases where it is desired to indicate the language used in an information object. [STANDARDS-TRACK]"> <meta property="og:type" content="article"> <meta property="og:image" content="https://static.ietf.org/dt/12.28.2/ietf/images/ietf-logo-card.png"> <meta property="og:image:alt" content="Logo of the IETF"> <meta property="article:section" content="IETF - Internet Engineering Task Force"> <meta property="og:image:type" content="image/png"> <meta property="og:image:width" content="1200"> <meta property="og:image:height" content="630"> <meta name="twitter:card" content="summary_large_image"> <meta property="article:author" content="Harald T. Alvestrand"> <style> .diff-form .select2-selection__rendered { direction: rtl; text-align: left; } </style> </head> <body> <noscript><iframe class="status" title="Site status" src="/status/latest"></iframe></noscript> <div class="vue-embed" data-component="Status"></div> <div class="btn-toolbar sidebar-toolbar position-fixed top-0 end-0 m-2 m-lg-3 d-print-none"> <div class="dropdown"> <button class="btn btn-outline-secondary btn-sm me-1 dropdown-toggle d-flex align-items-center" id="bd-theme" type="button" aria-expanded="false" data-bs-toggle="dropdown" aria-label="Toggle theme"> <i class="theme-icon-active bi bi-circle-half"></i> </button> <ul class="dropdown-menu" aria-labelledby="bd-theme"> <li> <button type="button" class="dropdown-item d-flex align-items-center" data-bs-theme-value="light" aria-pressed="false"> <i class="me-2 opacity-50 theme-icon bi bi-sun-fill"></i> Light<i class="bi bi-check2 ms-auto d-none"></i> </button> </li> <li> <button type="button" class="dropdown-item d-flex align-items-center" data-bs-theme-value="dark" aria-pressed="false"> <i class="me-2 opacity-50 theme-icon bi bi-moon-stars-fill"></i> Dark<i class="bi bi-check2 ms-auto d-none"></i> </button> </li> <li> <button type="button" class="dropdown-item d-flex align-items-center active" data-bs-theme-value="auto" aria-pressed="true"> <i class="me-2 opacity-50 theme-icon bi bi-circle-half"></i> Auto<i class="bi bi-check2 ms-auto d-none"></i> </button> </li> </ul> </div> <button class="btn btn-outline-secondary btn-sm sidebar-toggle" type="button" data-bs-toggle="collapse" data-bs-target="#sidebar" aria-expanded="true" aria-controls="sidebar" aria-label="Toggle metadata sidebar" title="Toggle metadata sidebar"> <i class="bi bi-arrow-bar-left sidebar-shown"></i> <i class="bi bi-arrow-bar-right sidebar-collapsed"></i> </button> </div> <nav class="navbar bg-light-subtle px-1 fixed-top d-print-none d-md-none"> <a class="nav-link ps-1" href="/doc/rfc1766/"> RFC 1766 <br class="d-sm-none"> <span class="ms-sm-3 badge rounded-pill badge-obs"> Proposed Standard </span> </a> <button class="navbar-toggler p-1" type="button" data-bs-toggle="collapse" data-bs-target="#docinfo-collapse" aria-controls="docinfo-collapse" aria-expanded="false" aria-label="Show document information"> <span class="navbar-toggler-icon small"></span> </button> <div class="navbar-nav navbar-nav-scroll overscroll-none collapse pt-1" id="docinfo-collapse"> <div class="bg-light-subtle p-0"> <table class="table table-sm table-borderless small"> <tbody class="meta align-top"> <tr> <th scope="row"></th> <th scope="row">Title</th> <td class="edit"></td> <td>Tags for the Identification of Languages</td> </tr> </tbody> <tbody class="meta align-top "> <tr> <th scope="row">Document</th> <th scope="row">Document type</th> <td class="edit"></td> <td> <span class="text-success">RFC - Proposed Standard </span> <br>March 1995 <br> <a class="btn btn-primary btn-sm my-1" href="https://www.rfc-editor.org/errata_search.php?rfc=1766" title="Click to view errata." rel="nofollow"> View errata </a> <a class="btn btn-sm btn-warning" title="Click to report an error in the document." href="https://www.rfc-editor.org/errata.php#reportnew" target="_blank"> Report errata </a> <div>Obsoleted by <a href="/doc/html/rfc3066" title="Tags for the Identification of Languages">RFC 3066</a>, <a href="/doc/html/rfc3282" title="Content Language Headers">RFC 3282</a></div> <div> Was <a href="/doc/draft-ietf-mailext-lang-tag/01/">draft-ietf-mailext-lang-tag</a> (<a href="/wg/mailext/about/">mailext WG</a>) </div> </td> </tr> <tr> <td></td> <th scope="row">Select version</th> <td class="edit"></td> <td> <ul class="revision-list pagination pagination-sm text-center flex-wrap my-0"> <li class="page-item"> <a class="page-link" href="/doc/html/draft-ietf-mailext-lang-tag-01" rel="nofollow"> 01 </a> </li> <li class="page-item rfc active"> <a class="page-link" href="/doc/html/rfc1766"> RFC 1766 </a> </li> </ul> </td> </tr> <tr> <td></td> <th scope="row">Compare versions</th> <td class="edit"></td> <td> <form class="form-horizontal diff-form" action="https://author-tools.ietf.org/iddiff" method="get" target="_blank"> <select class="form-select form-select-sm mb-1 select2-field" data-max-entries="1" data-width="resolve" data-allow-clear="false" data-minimum-input-length="0" aria-label="From revision" name="url1"> <option value="rfc1766"> RFC 1766 </option> <option value="draft-ietf-mailext-lang-tag-01" selected> draft-ietf-mailext-lang-tag-01 </option> <option value="draft-ietf-mailext-lang-tag-00"> draft-ietf-mailext-lang-tag-00 </option> </select> <select class="form-select form-select-sm mb-1 select2-field" data-max-entries="1" data-width="resolve" data-allow-clear="false" data-minimum-input-length="0" aria-label="To revision" name="url2"> <option value="rfc1766" selected> RFC 1766 </option> <option value="draft-ietf-mailext-lang-tag-01"> draft-ietf-mailext-lang-tag-01 </option> <option value="draft-ietf-mailext-lang-tag-00"> draft-ietf-mailext-lang-tag-00 </option> </select> <button type="submit" class="btn btn-primary btn-sm" value="--html" name="difftype"> Side-by-side </button> <button type="submit" class="btn btn-primary btn-sm" value="--hwdiff" name="difftype"> Inline </button> </form> </td> </tr> <tr> <td></td> <th scope="row">Author</th> <td class="edit"> </td> <td> <span ><a title="Datatracker profile of Harald T. Alvestrand" href="/person/harald@alvestrand.no" >Harald T. Alvestrand</a> <a href="mailto:harald%40alvestrand.no" aria-label="Compose email to harald@alvestrand.no" title="Compose email to harald@alvestrand.no"> <i class="bi bi-envelope"></i></a></span> <br> <a class="btn btn-primary btn-sm mt-1" href="mailto:rfc1766@ietf.org?subject=rfc1766" title="Send email to the document authors">Email authors</a> </td> </tr> <tr> <td></td> <th scope="row"> RFC stream </th> <td class="edit"> </td> <td > <img alt="IETF Logo" class="d-lm-none w-25 mt-1" src="https://static.ietf.org/dt/12.28.2/ietf/images/ietf-logo-nor-white.svg" > <img alt="IETF Logo" class="d-dm-none w-25 mt-1" src="https://static.ietf.org/dt/12.28.2/ietf/images/ietf-logo-nor.svg" > </td> </tr> <tr> <td></td> <th scope="row"> Other formats </th> <td class="edit"> </td> <td> <div class="buttonlist"> <a class="btn btn-primary btn-sm" target="_blank" href="https://www.rfc-editor.org/rfc/rfc1766.txt"> <i class="bi bi-file-text"></i> txt </a> <a class="btn btn-primary btn-sm" target="_blank" href="https://www.rfc-editor.org/rfc/rfc1766.html"> <i class="bi bi-file-code"></i> html </a> <a class="btn btn-primary btn-sm" download="rfc1766.pdf" target="_blank" href="https://www.rfc-editor.org/rfc/pdfrfc/rfc1766.txt.pdf"> <i class="bi bi-file-pdf"></i> pdf </a> <a class="btn btn-primary btn-sm" target="_blank" href="https://www.rfc-editor.org/rfc/inline-errata/rfc1766.html"> <i class="bi bi-file-diff"></i> w/errata </a> <a class="btn btn-primary btn-sm" target="_blank" href="/doc/rfc1766/bibtex/"> <i class="bi bi-file-ruled"></i> bibtex </a> </div> </td> </tr> </tbody> <tr> <th scope="row"></th> <th scope="row"></th> <td class="edit"></td> <td> <a class="btn btn-sm btn-warning mb-3" target="_blank" href="https://github.com/ietf-tools/datatracker/issues/new/choose"> Report a bug <i class="bi bi-bug"></i> </a> </td> </tr> </table> </div> </div> </nav> <div class="row g-0"> <div class="col-md-9 d-flex justify-content-center lh-sm" data-bs-spy="scroll" data-bs-target="#toc-nav" data-bs-smooth-scroll="true" tabindex="0" id="content"> <div class="rfcmarkup"> <br class="noprint"> <!-- [html-validate-disable-block attr-quotes, void-style, element-permitted-content, heading-level -- FIXME: rfcmarkup/rfc2html generates HTML with issues] --> <div class="rfcmarkup"><pre>Network Working Group H. Alvestrand Request for Comments: 1766 UNINETT Category: Standards Track March 1995 <span class="h1">Tags for the Identification of Languages</span> Status of this Memo This document specifies an Internet standards track protocol for the Internet community, and requests discussion and suggestions for improvements. Please refer to the current edition of the &quot;Internet Official Protocol Standards&quot; (STD 1) for the standardization state and status of this protocol. Distribution of this memo is unlimited. Abstract This document describes a language tag for use in cases where it is desired to indicate the language used in an information object. It also defines a Content-language: header, for use in the case where one desires to indicate the language of something that has <a href="/doc/html/rfc822">RFC-822</a>- like headers, like MIME body parts or Web documents, and a new parameter to the Multipart/Alternative type, to aid in the usage of the Content-Language: header. <span class="h2"><a class="selflink" id="section-1" href="#section-1">1</a>. Introduction</span> There are a number of languages spoken by human beings in this world. A great number of these people would prefer to have information presented in a language that they understand. In some contexts, it is possible to have information in more than one language, or it might be possible to provide tools for assisting in the understanding of a language (like dictionaries). A prerequisite for any such function is a means of labelling the information content with an identifier for the language in which is is written. In the tradition of solving only problems that we think we understand, this document specifies an identifier mechanism, and one possible use for it. <span class="grey">Alvestrand [Page 1]</span></pre> <hr class='noprint'/><!--NewPage--><pre class='newpage'><span id="page-2" ></span> <span class="grey"><a href="/doc/html/rfc1766">RFC 1766</a> Language Tag March 1995</span> <span class="h2"><a class="selflink" id="section-2" href="#section-2">2</a>. The Language tag</span> The language tag is composed of 1 or more parts: A primary language tag and a (possibly empty) series of subtags. The syntax of this tag in <a href="/doc/html/rfc822">RFC-822</a> EBNF is: Language-Tag = Primary-tag *( &quot;-&quot; Subtag ) Primary-tag = 1*8ALPHA Subtag = 1*8ALPHA Whitespace is not allowed within the tag. All tags are to be treated as case insensitive; there exist conventions for capitalization of some of them, but these should not be taken to carry meaning. The namespace of language tags is administered by the IANA according to the rules in <a href="#section-5">section 5</a> of this document. The following registrations are predefined: In the primary language tag: - All 2-letter tags are interpreted according to ISO standard 639, &quot;Code for the representation of names of languages&quot; [ISO 639]. - The value &quot;i&quot; is reserved for IANA-defined registrations - The value &quot;x&quot; is reserved for private use. Subtags of &quot;x&quot; will not be registered by the IANA. - Other values cannot be assigned except by updating this standard. The reason for reserving all other tags is to be open towards new revisions of ISO 639; the use of &quot;i&quot; and &quot;x&quot; is the minimum we can do here to be able to extend the mechanism to meet our requirements. In the first subtag: - All 2-letter codes are interpreted as ISO 3166 alpha-2 country codes denoting the area in which the language is used. - Codes of 3 to 8 letters may be registered with the IANA by anyone who feels a need for it, according to the rules in <span class="grey">Alvestrand [Page 2]</span></pre> <hr class='noprint'/><!--NewPage--><pre class='newpage'><span id="page-3" ></span> <span class="grey"><a href="/doc/html/rfc1766">RFC 1766</a> Language Tag March 1995</span> chapter 5 of this document. The information in the subtag may for instance be: - Country identification, such as en-US (this usage is described in ISO 639) - Dialect or variant information, such as no-nynorsk or en- cockney - Languages not listed in ISO 639 that are not variants of any listed language, which can be registered with the i- prefix, such as i-cherokee - Script variations, such as az-arabic and az-cyrillic In the second and subsequent subtag, any value can be registered. NOTE: The ISO 639/ISO 3166 convention is that language names are written in lower case, while country codes are written in upper case. This convention is recommended, but not enforced; the tags are case insensitive. NOTE: ISO 639 defines a registration authority for additions to and changes in the list of languages in ISO 639. This authority is: International Information Centre for Terminology (Infoterm) P.O. Box 130 A-1021 Wien Austria Phone: +43 1 26 75 35 Ext. 312 Fax: +43 1 216 32 72 The following codes have been added in 1989 (nothing later): ug (Uigur), iu (Inuktitut, also called Eskimo), za (Zhuang), he (Hebrew, replacing iw), yi (Yiddish, replacing ji), and id (Indonesian, replacing in). NOTE: The registration agency for ISO 3166 (country codes) is: ISO 3166 Maintenance Agency Secretariat c/o DIN Deutches Institut fuer Normung Burggrafenstrasse 6 Postfach 1107 D-10787 Berlin Germany Phone: +49 30 26 01 320 Fax: +49 30 26 01 231 <span class="grey">Alvestrand [Page 3]</span></pre> <hr class='noprint'/><!--NewPage--><pre class='newpage'><span id="page-4" ></span> <span class="grey"><a href="/doc/html/rfc1766">RFC 1766</a> Language Tag March 1995</span> The country codes AA, QM-QZ, XA-XZ and ZZ are reserved by ISO 3166 as user-assigned codes. <span class="h3"><a class="selflink" id="section-2.1" href="#section-2.1">2.1</a>. Meaning of the language tag</span> The language tag always defines a language as spoken (or written) by human beings for communication of information to other human beings. Computer languages are explicitly excluded. There is no guaranteed relationship between languages whose tags start out with the same series of subtags; especially, they are NOT guraranteed to be mutually comprehensible, although this will sometimes be the case. Applications should always treat language tags as a single token; the division into main tag and subtags is an administrative mechanism, not a navigation aid. The relationship between the tag and the information it relates to is defined by the standard describing the context in which it appears. So, this section can only give possible examples of its usage. - For a single information object, it should be taken as the set of languages that is required for a complete comprehension of the complete object. Example: Simple text. - For an aggregation of information objects, it should be taken as the set of languages used inside components of that aggregation. Examples: Document stores and libraries. - For information objects whose purpose in life is providing alternatives, it should be regarded as a hint that the material inside is provided in several languages, and that one has to inspect each of the alternatives in order to find its language or languages. In this case, multiple languages need not mean that one needs to be multilingual to get complete understanding of the document. Example: MIME multipart/alternative. - It would be possible to define (for instance) an SGML DTD that defines a &lt;LANG xx&gt; tag for indicating that following or contained text is written in this language, such that one could write &quot;&lt;LANG FR&gt;C&#x27;est la vie&lt;/LANG&gt;&quot;; the Norwegian- speaking user could then access a French-Norwegian dictionary to find out what the quote meant. <span class="grey">Alvestrand [Page 4]</span></pre> <hr class='noprint'/><!--NewPage--><pre class='newpage'><span id="page-5" ></span> <span class="grey"><a href="/doc/html/rfc1766">RFC 1766</a> Language Tag March 1995</span> <span class="h2"><a class="selflink" id="section-3" href="#section-3">3</a>. The Content-language header</span> The Language header is intended for use in the case where one desires to indicate the language(s) of something that has <a href="/doc/html/rfc822">RFC-822</a>-like headers, like MIME body parts or Web documents. The <a href="/doc/html/rfc822">RFC-822</a> EBNF of the Language header is: Language-Header = &quot;Content-Language&quot; &quot;:&quot; 1#Language-tag Note that the Language-Header is allowed to list several languages in a comma-separated list. Whitespace is allowed, which means also that one can place parenthesized comments anywhere in the language sequence. <span class="h3"><a class="selflink" id="section-3.1" href="#section-3.1">3.1</a>. Examples of Content-language values</span> NOTE: NONE of the subtags shown in this document have actually been assigned; they are used for illustration purposes only. Norwegian official document, with parallel text in both official versions of Norwegian. (Both versions are readable by all Norwegians). Content-Type: multipart/alternative; differences=content-language Content-Language: no-nynorsk, no-bokmaal Voice recording from the London docks Content-type: audio/basic Content-Language: en-cockney Document in Sami, which does not have an ISO 639 code, and is spoken in several countries, but with about half the speakers in Norway, with six different, mutually incomprehensible dialects: Content-type: text/plain; charset=iso-8859-10 Content-Language: i-sami-no (North Sami) An English-French dictionary Content-type: application/dictionary Content-Language: en, fr (This is a dictionary) An official EC document (in a few of its official languages) <span class="grey">Alvestrand [Page 5]</span></pre> <hr class='noprint'/><!--NewPage--><pre class='newpage'><span id="page-6" ></span> <span class="grey"><a href="/doc/html/rfc1766">RFC 1766</a> Language Tag March 1995</span> Content-type: multipart/alternative Content-Language: en, fr, de, da, el, it An excerpt from Star Trek Content-type: video/mpeg Content-Language: x-klingon <span class="h2"><a class="selflink" id="section-4" href="#section-4">4</a>. Use of Content-Language with Multipart/Alternative</span> When using the Multipart/Alternative body part of MIME, it is possible to have the body parts giving the same information content in different languages. In this case, one should put a Content- Language header on each of the body parts, and a summary Content- Language header onto the Multipart/Alternative itself. <span class="h3"><a class="selflink" id="section-4.1" href="#section-4.1">4.1</a>. The differences parameter to multipart/alternative</span> As defined in <a href="/doc/html/rfc1541">RFC 1541</a>, Multipart/Alternative only has one parameter: boundary. The common usage of Multipart/Alternative is to have more than one format of the same message (f.ex. PostScript and ASCII). The use of language tags to differentiate between different alternatives will certainly not lead all MIME UAs to present the most sensible body part as default. Therefore, a new parameter is defined, to allow the configuration of MIME readers to handle language differences in a sensible manner. Name: Differences Value: One or more of Content-Type Content-Language Further values can be registered with IANA; it must be the name of a header for which a definition exists in a published RFC. If not present, Differences=Content-Type is assumed. The intent is that the MIME reader can look at these headers of the message component to do an intelligent choice of what to present to the user, based on knowledge about the user preferences and capabilities. (The intent of having registration with IANA of the fields used in this context is to maintain a list of usages that a mail UA may expect to see, not to reject usages.) <span class="grey">Alvestrand [Page 6]</span></pre> <hr class='noprint'/><!--NewPage--><pre class='newpage'><span id="page-7" ></span> <span class="grey"><a href="/doc/html/rfc1766">RFC 1766</a> Language Tag March 1995</span> (NOTE: The MIME specification <a href="/doc/html/rfc1521#section-7.2">[RFC 1521], section&nbsp;7.2</a>, states that headers not beginning with &quot;Content-&quot; are generally to be ignored in body parts. People defining a header for use with &quot;differences=&quot; should take note of this.) The mechanism for deciding which body part to present is outside the scope of this document. MIME EXAMPLE: Content-Type: multipart/alternative; differences=Content-Language; boundary=&quot;limit&quot; Content-Language: en, fr, de --limit Content-Language: fr Le renard brun et agile saute par dessus le chien paresseux --limit Content-Language: de Content-Type: text/plain; charset=iso-8859-1 Content-Transfer-encoding: quoted-printable Der schnelle braune Fuchs h=FCpft =FCber den faulen Hund --limit Content-Language: en The quick brown fox jumps over the lazy dog --limit-- When composing a message, the choice of sequence may be somewhat arbitrary. However, non-MIME mail readers will show the first body part first, meaning that this should most likely be the language understood by most of the recipients. <span class="h2"><a class="selflink" id="section-5" href="#section-5">5</a>. IANA registration procedure for language tags</span> Any language tag must start with an existing tag, and extend it. This registration form should be used by anyone who wants to use a language tag not defined by ISO or IANA. <span class="grey">Alvestrand [Page 7]</span></pre> <hr class='noprint'/><!--NewPage--><pre class='newpage'><span id="page-8" ></span> <span class="grey"><a href="/doc/html/rfc1766">RFC 1766</a> Language Tag March 1995</span> ---------------------------------------------------------------------- LANGUAGE TAG REGISTRATION FORM Name of requester : E-mail address of requester: Tag to be registered : English name of language : Native name of language (transcribed into ASCII): Reference to published description of the language (book or article): ---------------------------------------------------------------------- The language form must be sent to &lt;ietf-types@uninett.no&gt; for a 2- week review period before submitting it to IANA. (This is an open list. Requests to be added should be sent to &lt;ietf-types- request@uninett.no&gt;.) When the two week period has passed, the language tag reviewer, who is appointed by the IETF Applications Area Director, either forwards the request to IANA@ISI.EDU, or rejects it because of significant objections raised on the list. Decisions made by the reviewer may be appealed to the IESG. All registered forms are available online in the directory <a href="ftp://ftp.isi.edu/in-notes/iana/assignments/languages/">ftp://ftp.isi.edu/in-notes/iana/assignments/languages/</a> <span class="h2"><a class="selflink" id="section-6" href="#section-6">6</a>. Security Considerations</span> Security issues are not discussed in this memo. <span class="h2"><a class="selflink" id="section-7" href="#section-7">7</a>. Character set considerations</span> Codes may always be expressed using the US-ASCII character repertoire (a-z), which is present in most character sets. The issue of deciding upon the rendering of a character set based on the language tag is not addressed in this memo; however, it is thought impossible to make such a decision correctly for all cases unless means of switching language in the middle of a text are defined (for example, a rendering engine that decides font based on Japanese or Chinese language will fail to work when a mixed Japanese-Chinese text is encountered) <span class="grey">Alvestrand [Page 8]</span></pre> <hr class='noprint'/><!--NewPage--><pre class='newpage'><span id="page-9" ></span> <span class="grey"><a href="/doc/html/rfc1766">RFC 1766</a> Language Tag March 1995</span> <span class="h2"><a class="selflink" id="section-8" href="#section-8">8</a>. Acknowledgements</span> This document has benefited from innumberable rounds of review and comments in various fora of the IETF and the Internet working groups. As so, any list of contributors is bound to be incomplete; please regard the following as only a selection from the group of people who have contributed to make this document what it is today. In alphabetical order: Tim Berners-Lee, Nathaniel Borenstein, Jim Conklin, Dave Crocker, Ned Freed, Tim Goodwin, Olle Jarnefors, John Klensin, Keith Moore, Masataka Ohta, Keld Jorn Simonsen, Rhys Weatherley, and many, many others. <span class="h2"><a class="selflink" id="section-9" href="#section-9">9</a>. Author&#x27;s Address</span> Harald Tveit Alvestrand UNINETT Pb. 6883 Elgeseter N-7002 TRONDHEIM NORWAY EMail: Harald.T.Alvestrand@uninett.no Phone: +47 73 59 70 94 <span class="h2"><a class="selflink" id="section-10" href="#section-10">10</a>. References</span> [ISO 639] ISO 639:1988 (E/F) - Code for the representation of names of languages - The International Organization for Standardization, 1st edition, 1988 17 pages Prepared by ISO/TC 37 - Terminology (principles and coordination). [ISO 3166] ISO 3166:1988 (E/F) - Codes for the representation of names of countries - The International Organization for Standardization, 3rd edition, 1988-08-15. [<a id="ref-RFC 1521">RFC 1521</a>] Borenstein, N., and N. Freed, &quot;MIME Part One: Mechanisms for Specifying and Describing the Format of Internet Message Bodies&quot;, <a href="/doc/html/rfc1521">RFC 1521</a>, Bellcore, Innosoft, September 1993. [<a id="ref-RFC 1327">RFC 1327</a>] Kille, S., &quot;Mapping between X.400(1988) / ISO 10021 and <a href="/doc/html/rfc822">RFC</a> <a href="/doc/html/rfc822">822</a>&quot;, <a href="/doc/html/rfc1327">RFC 1327</a>, University College London, May 1992. Alvestrand [Page 9] </pre></div> </div> </div> <div class="d-print-none col-md-3 bg-light-subtle collapse show" id="sidebar"> <div class="position-fixed border-start sidebar overflow-scroll overscroll-none no-scrollbar"> <div class="d-flex flex-column vh-100 pt-2 pt-lg-3 ps-3 pl-md-2 pl-lg-3"> <div> <a class="btn btn-primary btn-sm" href="/doc/rfc1766/">Datatracker</a> <p class="fw-bold pt-2"> RFC 1766 <br> <span class="text-success">RFC - Proposed Standard </span> </p> </div> <ul class="nav nav-tabs nav-fill small me-2" role="tablist"> <li class="nav-item" role="presentation" title="Document information"> <button class="nav-link px-2" id="docinfo-tab" data-bs-toggle="tab" data-bs-target="#docinfo-tab-pane" type="button" role="tab" aria-controls="docinfo-tab-pane" aria-selected="true"> <i class="bi bi-info-circle"></i><span class="d-none d-md-block d-xl-inline ms-xl-1">Info</span> </button> </li> <li class="nav-item" role="presentation" title="Table of contents"> <button class="nav-link px-2" id="toc-tab" data-bs-toggle="tab" data-bs-target="#toc-tab-pane" type="button" role="tab" aria-controls="toc-tab-pane" aria-selected="false"> <i class="bi bi-list-ol"></i><span class="d-none d-md-block d-xl-inline ms-xl-1">Contents</span> </button> </li> <li class="nav-item" role="presentation" title="Preferences"> <button class="nav-link px-2" id="pref-tab" data-bs-toggle="tab" data-bs-target="#pref-tab-pane" type="button" role="tab" aria-controls="pref-tab-pane" aria-selected="false"> <i class="bi bi-gear"></i><span class="d-none d-md-block d-xl-inline ms-xl-1">Prefs</span> </button> </li> </ul> <div class="overflow-auto tab-content pt-2 me-2"> <div class="tab-pane" id="docinfo-tab-pane" role="tabpanel" aria-labelledby="docinfo-tab" tabindex="0"> <table class="table table-sm table-borderless"> <tbody class="meta align-top "> <tr> <th scope="row">Document</th> <th scope="row">Document type</th> <td class="edit"></td> <td> <span class="text-success">RFC - Proposed Standard </span> <br>March 1995 <br> <a class="btn btn-primary btn-sm my-1" href="https://www.rfc-editor.org/errata_search.php?rfc=1766" title="Click to view errata." rel="nofollow"> View errata </a> <a class="btn btn-sm btn-warning" title="Click to report an error in the document." href="https://www.rfc-editor.org/errata.php#reportnew" target="_blank"> Report errata </a> <div>Obsoleted by <a href="/doc/html/rfc3066" title="Tags for the Identification of Languages">RFC 3066</a>, <a href="/doc/html/rfc3282" title="Content Language Headers">RFC 3282</a></div> <div> Was <a href="/doc/draft-ietf-mailext-lang-tag/01/">draft-ietf-mailext-lang-tag</a> (<a href="/wg/mailext/about/">mailext WG</a>) </div> </td> </tr> <tr> <td></td> <th scope="row">Select version</th> <td class="edit"></td> <td> <ul class="revision-list pagination pagination-sm text-center flex-wrap my-0"> <li class="page-item"> <a class="page-link" href="/doc/html/draft-ietf-mailext-lang-tag-01" rel="nofollow"> 01 </a> </li> <li class="page-item rfc active"> <a class="page-link" href="/doc/html/rfc1766"> RFC 1766 </a> </li> </ul> </td> </tr> <tr> <td></td> <th scope="row">Compare versions</th> <td class="edit"></td> <td> <form class="form-horizontal diff-form" action="https://author-tools.ietf.org/iddiff" method="get" target="_blank"> <select class="form-select form-select-sm mb-1 select2-field" data-max-entries="1" data-width="resolve" data-allow-clear="false" data-minimum-input-length="0" aria-label="From revision" name="url1"> <option value="rfc1766"> RFC 1766 </option> <option value="draft-ietf-mailext-lang-tag-01" selected> draft-ietf-mailext-lang-tag-01 </option> <option value="draft-ietf-mailext-lang-tag-00"> draft-ietf-mailext-lang-tag-00 </option> </select> <select class="form-select form-select-sm mb-1 select2-field" data-max-entries="1" data-width="resolve" data-allow-clear="false" data-minimum-input-length="0" aria-label="To revision" name="url2"> <option value="rfc1766" selected> RFC 1766 </option> <option value="draft-ietf-mailext-lang-tag-01"> draft-ietf-mailext-lang-tag-01 </option> <option value="draft-ietf-mailext-lang-tag-00"> draft-ietf-mailext-lang-tag-00 </option> </select> <button type="submit" class="btn btn-primary btn-sm" value="--html" name="difftype"> Side-by-side </button> <button type="submit" class="btn btn-primary btn-sm" value="--hwdiff" name="difftype"> Inline </button> </form> </td> </tr> <tr> <td></td> <th scope="row">Author</th> <td class="edit"> </td> <td> <span ><a title="Datatracker profile of Harald T. Alvestrand" href="/person/harald@alvestrand.no" >Harald T. Alvestrand</a> <a href="mailto:harald%40alvestrand.no" aria-label="Compose email to harald@alvestrand.no" title="Compose email to harald@alvestrand.no"> <i class="bi bi-envelope"></i></a></span> <br> <a class="btn btn-primary btn-sm mt-1" href="mailto:rfc1766@ietf.org?subject=rfc1766" title="Send email to the document authors">Email authors</a> </td> </tr> <tr> <td></td> <th scope="row"> RFC stream </th> <td class="edit"> </td> <td > <img alt="IETF Logo" class="d-lm-none w-25 mt-1" src="https://static.ietf.org/dt/12.28.2/ietf/images/ietf-logo-nor-white.svg" > <img alt="IETF Logo" class="d-dm-none w-25 mt-1" src="https://static.ietf.org/dt/12.28.2/ietf/images/ietf-logo-nor.svg" > </td> </tr> <tr> <td></td> <th scope="row"> Other formats </th> <td class="edit"> </td> <td> <div class="buttonlist"> <a class="btn btn-primary btn-sm" target="_blank" href="https://www.rfc-editor.org/rfc/rfc1766.txt"> <i class="bi bi-file-text"></i> txt </a> <a class="btn btn-primary btn-sm" target="_blank" href="https://www.rfc-editor.org/rfc/rfc1766.html"> <i class="bi bi-file-code"></i> html </a> <a class="btn btn-primary btn-sm" download="rfc1766.pdf" target="_blank" href="https://www.rfc-editor.org/rfc/pdfrfc/rfc1766.txt.pdf"> <i class="bi bi-file-pdf"></i> pdf </a> <a class="btn btn-primary btn-sm" target="_blank" href="https://www.rfc-editor.org/rfc/inline-errata/rfc1766.html"> <i class="bi bi-file-diff"></i> w/errata </a> <a class="btn btn-primary btn-sm" target="_blank" href="/doc/rfc1766/bibtex/"> <i class="bi bi-file-ruled"></i> bibtex </a> </div> </td> </tr> </tbody> </table> <a class="btn btn-sm btn-warning mb-3" target="_blank" href="https://github.com/ietf-tools/datatracker/issues/new/choose"> Report a datatracker bug <i class="bi bi-bug"></i> </a> </div> <div class="tab-pane mb-5" id="toc-tab-pane" role="tabpanel" aria-labelledby="toc-tab" tabindex="0"> <nav class="nav nav-pills flex-column small" id="toc-nav"> </nav> </div> <div class="tab-pane mb-5 small" id="pref-tab-pane" role="tabpanel" aria-labelledby="pref-tab" tabindex="0"> <label class="form-label fw-bold mb-2">Show sidebar by default</label> <div class="btn-group-vertical btn-group-sm d-flex" role="group"> <input type="radio" class="btn-check" name="sidebar" id="on-radio"> <label class="btn btn-outline-primary" for="on-radio">Yes</label> <input type="radio" class="btn-check" name="sidebar" id="off-radio"> <label class="btn btn-outline-primary" for="off-radio">No</label> </div> <label class="form-label fw-bold mt-4 mb-2">Tab to show by default</label> <div class="btn-group-vertical btn-group-sm d-flex" role="group"> <input type="radio" class="btn-check" name="deftab" id="docinfo-radio"> <label class="btn btn-outline-primary" for="docinfo-radio"> <i class="bi bi-info-circle me-1"></i>Info </label> <input type="radio" class="btn-check" name="deftab" id="toc-radio"> <label class="btn btn-outline-primary" for="toc-radio"> <i class="bi bi-list-ol me-1"></i>Contents </label> </div> <label class="form-label fw-bold mt-4 mb-2">HTMLization configuration</label> <div class="btn-group-vertical btn-group-sm d-flex" role="group"> <input type="radio" class="btn-check" name="htmlconf" id="txt-radio"> <label class="btn btn-outline-primary" for="txt-radio" title="This is the traditional HTMLization method."> <i class="bi bi-badge-sd me-1"></i>HTMLize the plaintext </label> <input type="radio" class="btn-check" name="htmlconf" id="html-radio"> <label class="btn btn-outline-primary" for="html-radio" title="This is the modern HTMLization method."> <i class="bi bi-badge-hd me-1"></i>Plaintextify the HTML </label> </div> <label class="form-label fw-bold mt-4 mb-2" for="ptsize">Maximum font size</label> <input type="range" class="form-range" min="7" max="16" id="ptsize" oninput="ptdemo.value = ptsize.value"> <label class="form-label fw-bold mt-4 mb-2">Page dependencies</label> <div class="btn-group-vertical btn-group-sm d-flex" role="group"> <input type="radio" class="btn-check" name="pagedeps" id="inline-radio"> <label class="btn btn-outline-primary" for="inline-radio" title="Generate larger, standalone web pages that do not require network access to render."> <i class="bi bi-box me-1"></i>Inline </label> <input type="radio" class="btn-check" name="pagedeps" id="reference-radio"> <label class="btn btn-outline-primary" for="reference-radio" title="Generate regular web pages that require network access to render."> <i class="bi bi-link-45deg me-1"></i>Reference </label> </div> <label class="form-label fw-bold mt-4 mb-2">Citation links</label> <div class="btn-group-vertical btn-group-sm d-flex" role="group"> <input type="radio" class="btn-check" name="reflinks" id="refsection-radio"> <label class="btn btn-outline-primary" for="refsection-radio" title="Citation links go to the reference section."> <i class="bi bi-arrow-clockwise"></i> Go to reference section </label> <input type="radio" class="btn-check" name="reflinks" id="citation-radio"> <label class="btn btn-outline-primary" for="citation-radio" title="Citation links go directly to the cited document."> <i class="bi bi-link-45deg me-1"></i>Go to linked document </label> </div> </div> </div> </div> </div> </div> </div> <script type="text/javascript"> var _paq = window._paq || []; _paq.push(['disableCookies']); _paq.push(['trackPageView']); _paq.push(['enableLinkTracking']); (function() { var u="//analytics.ietf.org/"; _paq.push(['setTrackerUrl', u+'matomo.php']); _paq.push(['setSiteId', 7]); var d=document, g=d.createElement('script'), s=d.getElementsByTagName('script')[0]; g.type='text/javascript'; g.async=true; g.defer=true; g.src=u+'matomo.js'; s.parentNode.insertBefore(g,s); })(); </script> <noscript><p><img src="//analytics.ietf.org/piwik.php?idsite=7" style="border:0;" alt="" /></p></noscript> <script>(function(){function c(){var b=a.contentDocument||a.contentWindow.document;if(b){var d=b.createElement('script');d.innerHTML="window.__CF$cv$params={r:'8e9d0506c81887bd',t:'MTczMjgyNDgxOC4wMDAwMDA='};var a=document.createElement('script');a.nonce='';a.src='/cdn-cgi/challenge-platform/scripts/jsd/main.js';document.getElementsByTagName('head')[0].appendChild(a);";b.getElementsByTagName('head')[0].appendChild(d)}}if(document.body){var a=document.createElement('iframe');a.height=1;a.width=1;a.style.position='absolute';a.style.top=0;a.style.left=0;a.style.border='none';a.style.visibility='hidden';document.body.appendChild(a);if('loading'!==document.readyState)c();else if(window.addEventListener)document.addEventListener('DOMContentLoaded',c);else{var e=document.onreadystatechange||function(){};document.onreadystatechange=function(b){e(b);'loading'!==document.readyState&&(document.onreadystatechange=e,c())}}}})();</script></body> </html>

Pages: 1 2 3 4 5 6 7 8 9 10