この文書は、 H. Alvestrand: Tags for the Identification of Languages (RFC 3066), January 2001. を 橋本英彦 が日本語訳した物です。 この文書の取り扱いについては、[Studying HTTP] の RFC 日本語訳を利用するにあたってに従って下さい。
Network Working Group Request for Comments: 3066 BCP: 47 Obsoletes: 1766 Category: Best Current Practice
H. Alvestrand Cisco Systems January 2001
この文書は、インターネットコミュニティにおけるインターネット標準化過程プロトコルを規定し、改良のために議論と提案を求めるものである。 このプロトコルの標準化状態と状況については、"Internet Official ProtocolStandards" (STD 1) の最新版を参照していただきたい。 この文書の配布に制限は無い。
Copyright © The Internet Society (2001). All Rights Reserved.
この文書は、ある情報オブジェクト中に使用される言語を示したい場合に使用する言語タグ、及びこの言語タグ中に使用される値や、そのような言語タグに一致しているようなものを登録する方法を記述する。
地球上の人間は、過去から現在に渡って、無数の言語を使用してきた。 誰かが情報を示す時に使用される言語を識別したいと思うような事については多くの理由がある。
いくつかの状況では、情報を複数の言語で利用する事ができる、あるいは言語の理解の助けとなる (辞書のような) 道具を提供する事もできるかもしれれない。
また、処理される情報の多くは、その情報上で実行されるそのプロセスのために情報が表現されているその言語についての知識を要求する; 例えば、スペルチェックや、コンピュータ合成スピーチ、ブライユ点字法、あるいは高品質な印刷用表現等である。
使用される言語を示すための一つの方法として、ある情報の内容にその中で使用される言語を識別するものをラベリングするというものがある。
この文書は、識別メカニズム、その識別メカニズムと共に使用される値の登録機能、及びそのような値に対して一致しているものについて詳述する。
この文書中の "MUST", "MUST NOT", "REQUIRED", "SHALL", "SHALL NOT", "SHOULD", "SHOULD NOT", "RECOMMENDED", "MAY", "OPTIONAL" 各キーワードは、[RFC 2119] 中に記述されるように解釈されるべきである。
言語タグは、一つもしくは複数の部分で構成される: 主要{primary} 言語サブタグと (空の可能性のある) 一連の後続{subsequent} サブタグである。
このタグの ABNF [RFC 2234] 中の構文は以下のようになっている:
Language-Tag = Primary-subtag *( "-" Subtag ) Primary-subtag = 1*8ALPHA Subtag = 1*8(ALPHA / DIGIT)
この ALPHA と DIGIT は RFC 2234 からもたらされる; すなわち、それぞれ大文字や小文字の A から Z までの文字、及び 0 から 9 までの数字を意味する。 文字 "-" は HYPHEN-MINUS (ABNF: %x2D) である。
全てのタグは大文字小文字を区別しないで扱われるべきである; これらのうちのいくつかは大文字化するという慣習が存在するが、これらは何らかの意味を伝えるためになされるるべきではない。 例えば、[ISO 3166] ではカントリーコードは大文字化 (MN モンゴル) する事を推奨するが、[ISO 639] では言語タグは小文字で (mn モンゴル語) 書かれる事を推奨する。
言語タグの名前空間は、この文書の section 3 中の規則に従って InternetAssigned Numbers Authority (IANA) [RFC 2860] によって管理される。
主要タグについては以下の規則が適用される:
他の全てのタグが予約されている理由は、新たな ISO 639 の改訂版に向けて制限なくあるべきであるからである; すなわち、"i" や "x" の使用は最小限我々が当面の要求に直面するようなメカニズムをここで拡張できるためのものである。
第二サブタグについては以下の規則が適用される:
第三及びそれ以降のサブタグについて、構文上つけ加えられる規則はない。
その全てがこの章によってその解釈を割り当てられるコードにて構築されるようなタグは、その使用の前に IANA にて登録される必要はない。
サブタグ中の情報は、例えば以下のようであるだろう:
この文書は、適切な、あるいは section 3 に記述される登録プロセスへのものではないタグについての結論を差し置いている。
ISO 639 では、ISO 639 中の言語のリストへの追加や変更のための管理機関を定義する。 この機関は以下の通りである:
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
ISO 639-2 では、ISO 639-2 中の言語のリストへの追加や変更のための管理機関を定義する。 この機関は以下の通りである:
Library of Congress Network Development and MARC Standards Office Washington, D.C. 20540 USA Phone: +1 202 707 6237 Fax: +1 202 707 0115 URL: http://www.loc.gov/standards/iso639
ISO 3166 (country codes) についての管理機関は以下の通りである:
ISO 3166 Maintenance Agency Secretariat c/o DIN Deutsches Institut fuer Normung Burggrafenstrasse 6 Postfach 1107 D-10787 Berlin Germany Phone: +49 30 26 01 320 Fax: +49 30 26 01 231 URL: http://www.din.de/gremien/nas/nabd/iso3166ma/
ISO 3166 は、ユーザ割り当てコードとして、国コード AA, QM-QZ, XA-XZ, ZZ を予約する。 これらは、言語タグを形成するために使用されてはならない。
時には、同じテキストのボディについて複数のタグを付けられるような場合に直面するかもしれない。
全てのユーザが同じタグを送り、全ての文書について同じ言語のために同じタグを使用すれば、最も相互運用に役立つ。 あるアプリケーションがここにある規則を不適当にするような必要条件を持っている場合、そのアプリケーションのプロトコル仕様は、その手順がここに与えられるものとどのように異なるかを明示しなければならない。
以下のテキストは、タグ付けされるボディに既知なタグのセットに基づく。
注: 例えば RFC 1766 の言語タグのように、その適用するバージョン上の問題を避けるために、ISO 639 Registration Authority Joint AdvisoryCommittee (RA-JAC) は以下のポリシー声名をまとめあげた:
"国際標準としての ISO/DIS 639-1 の発行以降に、もし 3 文字のコードがISO 639-2 に同時に加えられなければ、新しい 2 文字コードは ISO 639-1に加えられないものとする。 更に、その中には 2 文字コードがないようなISO 639-1 発行時に利用可能な 3 文字コードを持つ言語は、以降は 2 文字コードを与えられないものとする。"
これは、例えば、現在 2 文字コードを持っていない、"hwi" (ハワイ語) を実装するユーザはその言語のための 2 文字コードの最終的追加によってそのデータが無効にされるという見る事はない、という事を保証するであろう。
言語タグは常に、他の人間へ情報を伝達するために人間によって話される (あるいは記述される、署名される、その他の方法で伝えられる) ような言語を定義する。 プログラミング言語のようなコンピュータ言語は明示的に除外される。 同じ一連のサブタグで始まるタグの言語間の関係性は保証されない; 特に、それらが時には相互に理解可能である場合もあるけれども、常にそうである事は保証されない。
タグとそれが関連する情報との間の関係は、それが表れる状況を記述する標準によって定義される。 それ故に、この節ではその使用が可能な例のみを与える。
RFC 1766 の発行以来、全て同じシーケンスのサブタグから始まるようなタグの言語のセットのための用語を定義する必要であるという事が明らかになってきている。
以下の language-range の定義は、HTTP/1.1 [RFC 2616] に由来する。
language-range = language-tag / "*"
つまり、language-range は language-tag として同じ構文を持ち、また単一の文字 "*" である。
language-range は、そのタグに正確に一致する場合、あるいは "-" を後に従える先頭の文字に正確に一致する場合に language-tag に一致する。
特別な範囲 "*" はあらゆるタグに一致する。 言語範囲を使用するプロトコルは "*" の意味についての追加規則を指定する事ができる; 例えば、HTTP/1.1では、範囲 "*" は "Accept-Language: " ヘッダに含まれるあらゆる他の範囲に一致しない言語にのみ一致する。
注: この前方一致規則の使用は、もしユーザがあるタグをもつ言語を理解すすればこのユーザはこのタグを先頭部分に持つタグが意味する全ての言語を理解するだろうという事が常に真実であるかのような方法をもって、その言語タグが言語に割り当てられるという事を暗に意味するものではない。 前方一致規則は、単に当てはまる場合に接頭辞タグの使用を認めるものである。
ここで与えられる手順は、この文書の chapter 2.2 にて解釈が与えられないような、あるいは過去に IANA によって登録された言語タグを使用したいあらゆる人間によって使用されなければならない。
また、この手順は、例えば sgn-US (American Sign Language) のような、言語について一般に利用可能な定義への参照を作成したいような場合、この文書によって定義されるタグについて IANA へ情報を登録するために使用する事ができる。
サブタグの最初が "x" であるタグは登録する必要もないし、登録してはいけない。
この処理は、以下のあらかじめ作成された登録フォームを埋める事から始まる。
---------------------------------------------------------------------- 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): Any other relevant information: ----------------------------------------------------------------------
この言語フォームは IANA へと提出される前に 2 週間検討期間を経るために<ietf-languages@iana.org> へ送信されなければならない。 (これはオープンリストである。 言語の追加要求は <ietf-languages-request@iana.org> へと送信されるべきである。)
2 週間が過ぎた後、IETF Applications Area Director に任命される言語タグの検討者は、その要求を IANA@IANA.ORG へと転送するか、リスト上に起こる重大な反対理由によって却下される。 検討者は、希望する場合は、リスト上に反対理由を乗せる事ができる事に注意せよ。 重要な事は、反対理由は一般的なものでなければならないという事である。
応募者は、拒否されたものに情報を追加修正し、再送信する事ができる; この場合、再び 2 週間の批評期間から始める。
検討者によって下された決定は、他の IETF による決定 [RFC 2026] と同じ規則の下で IESG [RFC 2028] に訴える事ができる。 全ての登録フォームは、http://www.iana.org/numbers.html の "languages" 以下のディレクトリにてオンラインから利用可能である。
登録の更新は、登録と同じ手続きに従う。 言語タグの検討者は、新しい登録者が他の誰かによって作成された登録を更新する事を認めるかどうかを決定する; 通常の場合、オリジナルの登録者による反対は、そのような決定により大きな重要性を持つであろう。
登録が削除される事はない; 従って、ある登録済タグが使用されるべきではない時は、例えば対応する ISO 639 コードが登録されているので、その登録は、"他の関連する情報" 部分に "DEPRECATED: use <new code> instead" のような注釈を加える事によって修正されるべきである。
注: "説明の発行" の目的には、その言語が登録されているかどうか、あるいはそのタグが参照するものはどんな言語かという事を確かめたい人々の補助をするという意図がある。 多くの場合、その言語の信頼の置ける文法書や辞書への参照は有用だろう; あるいは、そのような文献が存在しない場合、他のその言語について記述している、あるいはその言語圏の中でよく知られた文献が適切かもしれない。 言語タグの検討者は、何が "十分に良い" 参照資料になるかを決定する。
RFC 1766 では、"セキュリティ問題はこの文書とは無関係であると考えられる" としていたが、その発行以来、言語タグに関する唯一のセキュリティ問題が浮上してきており、それは内容ネゴシエーション中で使用される言語範囲に関係する - すなわち、送信者の国籍を推測するために使用でき、それ故監視のための潜在的な目標を識別するために使用する事ができる。
これは、あなたが送信したものが全て受信する相手に見る事ができるという一般的な問題の特別の場合である; そのような関心を持つ人もいるという事に気づいているという事は有用である。
その脅威の正確な大きさの評価、及びあらゆる可能な対抗策は、各適用プロトコルに委ねられる。
言語タグは、文字 A-Z, a-z, 0-9, HYPHEN-MINUS を使用して表現する事ができ、これらは多くの文字セット中にあるので、言語タグの提示には文字セットを問題にすべきではない。
言語タグに基づいた文字セットの表現の決定という問題は、この文書では扱われない; しかし、もしテキスト中で言語を切り替える手段が定義されていなければ、全ての場合にそのような決定を正確に下す事は不可能だろうと考えられる (例えば、日本語と中国語に基づくフォントを決定するためのレンダリングエンジンは、日本語と中国語が混在したテキストに遭遇した時に、最適状態には及ばない出力を生成するかもしれない)。
この文書は、IETF やインターネットワーキンググループの様々なフォーラムの中で何度も繰り返し検討及びコメントの恩恵を受けてきた。
あらゆる貢献者のリストは永遠に不完全なままであろう; 以下の方々は、この文書を今日のものとするために貢献した方々のグループからのみ選んだと見なして頂きたい。
アルファベット順に:
Glenn Adams, Tim Berners-Lee, Marc Blanchet, Nathaniel Borenstein,Eric Brunner, Sean M. Burke, John Clews, Jim Conklin, PeterConstable, John Cowan, Mark Crispin, Dave Crocker, Mark Davis, MartinDuerst, Michael Everson, Ned Freed, Tim Goodwin, Dirk-Willem vanGulik, Marion Gunn, Paul Hoffman, Olle Jarnefors, Kent Karlsson, JohnKlensin, Alain LaBonte, Chris Newman, Keith Moore, Masataka Ohta,Keld Jorn Simonsen, Otto Stolz, Rhys Weatherley, Misha Wolf, FrancoisYergeau, そしてその他の多くの方々。
Michael Everson には特別なる感謝をしなければならない。 彼は、RFC 1766 の発行以降ほとんど全ての期間言語タグの審査を務め、またこの改訂版に多大なる入力を与えてくれた。
Harald Tveit Alvestrand Cisco Systems Weidemanns vei 27 7043 Trondheim NORWAY Phone: +47 73 50 33 52 EMail: Harald@Alvestrand.no
ISO 639-2 の管理者である米国議会図書館{The Library of Congress} は、インターネットで利用可能な登録された言語のリストを作成している。
この執筆中においては、http://www.loc.gov/standards/iso639-2/langhome.html にて見つける事ができる。
登録された言語タグについての IANA 登録フォームは、http://www.iana.org/numbers.html の "languages" 以下に見つける事ができる。
ISO 3166 管理機関は以下の Web ページを発行している
http://www.din.de/gremien/nas/nabd/iso3166ma/
Copyright © The Internet Society (2001). All Rights Reserved.
この文章とその翻訳は、複製し他人に配布する事ができ、またその実装についてのコメント、その他の方法を用いた説明、その補助となるような派生的作業はそれらの中に上の著作権表示とこの段落を含む事によって、その全て又は一部を、いかなる制約も受けずに、作成、複製、発表、及び配布する事ができる。 しかしながら、インターネット標準化プロセスにて定義されている著作権のための手続きに従わなければならないような場合の中でインターネット標準を開発するという目的に必要である、あるいは英語以外の言語に翻訳する必要があるという場合を除いて、この文章自体を、その著作権表示や、インターネット学会あるいは他のインターネット団体への参照を削除するような、いかなる変更もできない。
上で認めた制限された許諾は永続的なものであり、インターネット学会及びその継承者や譲渡者によって取り消される事は無い。
この文書とここに含まれた情報は、"そのまま {AS IS}" である事を基に提供され、インターネット学会、及び IETF は、この中の情報の使用が、商用利用及び特定用途においていかなる権利もいかなる暗黙的保障も侵害していないという保障への制限を含め、明示的に又は暗黙的に、全ての保障を放棄する。
RFC Editer 機構の資金は、現在インターネット学会から提供されている。