この文書は rfc1554 を私(yotti@imasy.or.jp)が勉強と好奇心のため適当に 訳したものです。 翻訳の正確さは全く保証しません。 誤字誤訳等の指摘はいつでも大歓迎です。 -- Network Working Group M. Ohta Request for Comments: 1554 Tokyo Institute of Technology Category: Informational K. Handa ETL December 1993 | ISO-2022-JP-2: Multilingual Extension of ISO-2022-JP ISO-2022-JP-2: ISO-2022-JP の多国語への拡張 | Status of this Memo このメモの位置付け | This memo provides information for the Internet community. This memo | does not specify an Internet standard of any kind. Distribution of | this memo is unlimited. このメモはインターネットコミュニティのための広報である。これはなんら インターネット標準を定めるものではない。このメモの配布に制限は設けな い。 | Introduction 始めに | This memo describes a text encoding scheme: "ISO-2022-JP-2", which is | used experimentally for electronic mail [RFC822] and network news | [RFC1036] messages in several Japanese networks. The encoding is a | multilingual extension of "ISO-2022-JP", the existing encoding for | Japanese [2022JP]. The encoding is supported by an Emacs based | multilingual text editor: MULE [MULE]. このメモは、テキスト表記法: "ISO-2022-JP-2" について述べる。これは日 本のネットワークにおいて電子メール [RFC822] とネットニュース [RFC1036] メッセージで試験的に使用されている。この表記法は、 "ISO-2022-JP" の多国語への拡張であり、日本語 [2022JP] を表記するため に存在する。この表記法は、Emacs を基とした多国語テキストエディタ MULE [MULE] にてサポートされている。 | The name, "ISO-2022-JP-2", is intended to be used in the "charset" | parameter field of MIME headers (see [MIME1] and [MIME2]). この名前 "ISO-2022-JP-2" は、MIMEヘッダ ( [MIME1] と [MIME2] を見よ) の "charset" パラメタで使用されることを意図する。 | Description 記述 | The text with "ISO-2022-JP-2" starts in ASCII [ASCII], and switches | to other character sets of ISO 2022 [ISO2022] through limited | combinations of escape sequences. All the characters are encoded | with 7 bits only. "ISO-2022-JP-2" テキストは ASCII [ASCII] で始まり、その他の ISO 2022 で定められたエスケープシーケンスにより、文字セットを切り替える。全て の文字は 7 単位符号のみで表される。 | At the beginning of text, the existence of an announcer sequence: | "ESC 2/0 4/1 ESC 2/0 4/6 ESC 2/0 5/10" is (though omitted) assumed. | Thus, characters of 94 character sets are designated to G0 and | invoked as GL. C1 control characters are represented with 7 bits. | Characters of 96 character sets are designated to G2 and invoked with | SS2 (single shift two, "ESC 4/14" or "ESC N"). テキストの始まりには、"ESC 2/0 4/1 ESC 2/0 4/6 ESC 2/0 5/10" のアナ ウンサーシーケンスを仮定し、省略する。この様にして、94図形文字の集合 を G0 に指示し、GL を呼び出すようにする。C1 制御文字は 7 単位符号で表 わす。96図形文字の集合は G2 に指示し、SS2 (シングルシフト 2, "ESC 4/14" または "ESC N") で呼び出す。 | For example, the escape sequence "ESC 2/4 2/8 4/3" or "ESC $ ( C" | indicates that the bytes following the escape sequence are Korean KSC | characters, which are encoded in two bytes each. The escape sequence | "ESC 2/14 4/1" or "ESC . A" indicates that ISO 8859-1 is designated | to G2. After the designation, the single shifted sequence "ESC 4/14 | 4/1" or "ESC N A" is interpreted to represent a character "A with | acute". 例えば、エスケープシーケンス "ESC 2/4 2/8 4/3" 又は "ESC $ ( C" は、 このエスケープシーケンス以降が韓国語 KSC コードであることを示し、そ れらは 2 バイト毎に表記される。エスケープシーケンス "ESC 2/14 4/1" ま たは "ESC . A" は、ISO 8859-1 を G2 に指示する。指示した後、シングル シフトシーケンス "ESC 4/14 4/1" 又は "ESC N A" は、"アクセント付きの A"を示す。 | The following table gives the escape sequences and the character sets | used in "ISO-2022-JP-2" messages. The reg# is the registration number | in ISO's registry [ISOREG]. 以下に示す表に、"ISO-2022-JP-2" メッセージで使うエスケープシーケンス と文字セットを示す。reg# は、ISO の国際登録簿の登録番号である。 | 94 character sets 94図形文字の集合 reg# character set ESC sequence designated to ------------------------------------------------------------------ 6 ASCII ESC 2/8 4/2 ESC ( B G0 42 JIS X 0208-1978 ESC 2/4 4/0 ESC $ @ G0 87 JIS X 0208-1983 ESC 2/4 4/2 ESC $ B G0 14 JIS X 0201ローマ字 ESC 2/8 4/10 ESC ( J G0 58 GB2312-1980 ESC 2/4 4/1 ESC $ A G0 149 KSC5601-1987 ESC 2/4 2/8 4/3 ESC $ ( C G0 159 JIS X 0212-1990 ESC 2/4 2/8 4/4 ESC $ ( D G0 | 96 character sets 96図形文字の集合 reg# character set ESC sequence designated to ------------------------------------------------------------------ 100 ISO8859-1 ESC 2/14 4/1 ESC . A G2 126 ISO8859-7(Greek) ESC 2/14 4/6 ESC . F G2 | For further information about the character sets and the escape | sequences, see [ISO2022] and [ISOREG]. 文字セットとエスケープシーケンスについて詳しく知りたいのなら、 [ISO2022] と [ISOREG] を見よ。 | If there is any G0 designation in text, there must be a switch to | ASCII or to JIS X 0201-Roman before a space character (but not | necessarily before "ESC 4/14 2/0" or "ESC N ' '") or control | characters such as tab or CRLF. This means that the next line starts | in the character set that was switched to before the end of the | previous line. Though the designation to JIS X 0201-Roman is allowed | for backward compatibility to "ISO-2022-JP", its use is discouraged. | Applications such as pagers and editors which randomly seek within a | text file encoded with "ISO-2022-JP-2" may assume that all the lines | begin with ASCII, not with JIS X 0201-Roman. もし、テキスト中で G0 に何かを指示した時、空白(しかし、"ESC 4/14 2/0" 又は "ESC N ' '" の前には不要)又はタブ、復帰改行のような制御コードの 前に、ASCII 又は JIS X 0201 ローマ字に切り替えなければならない。これ は、前の行の行末の前に切り替えた文字セットで次の行が始まることを意味 する。しかしながら、JIS X0201 ローマ字を指示することを許しているのは、 "ISO-2022-JP" との互換性のためであり、これを使うことは薦められない。 ページャやエディタのようなアプリケーションが、"ISO-2022-JP-2" で書か れたテキストフィールドをランダムに求める場合、すべての行は JIS X 0201 ローマ字ではなく ASCII で始まることを仮定するだろう。 | At the beginning of a line, information on G2 designation of the | previous line is cleared. New designation must be given before a | character in 96 character sets is used in the line. 行の始まりでは、前の行の G2 の指示情報はクリアされる。96図形文字の集 合を使う前に、新しい指示を与えなければならない。 | The text must end in ASCII designated to G0. テキストは、G0 へ ASCII を指示してある状態にして終わりにしなければな らない。 | As the "ISO-2022-JP", and thus, "ISO-2022-JP-2", is designed to | represent English and modern Japanese, left-to-right directionality | is assumed if the text is displayed horizontally. "ISO-2022-JP-2" は "ISO-2022-JP" と同じように、英語と現代日本語を表 現できるように設計されており、もしテキストを水平に表示される場合には、 左から右に向かって記述することを仮定される。 | Users of "ISO-2022-JP-2" must be aware that some common transport | such as old Bnews can not relay a 7-bit value 7/15 (decimal 127), | which is used to encode, say, "y with diaeresis" of ISO 8859-1. 7 単位符号の 7/15 (10進数の 127)、例えば ISO 8859-1 の "分音符号つき の y" を文字表記に使用すると、古い Bnews のような、いくつかの公共の 転送機構(?)では中継することができないことに "ISO-2022-JP-2" ユーザは 気が付くべきだ。 | Other restrictions are given in the Formal Syntax section below. 他の制約は「正式な文法」の節で示す。 | Formal Syntax 正式な文法 | The notational conventions used here are identical to those used in | STD 11, RFC 822 [RFC822]. ここで使用する記法は、STD11 RFC 822 [RFC822] で使われているものと同 一である。 | The * (asterisk) convention is as follows: * (アスタリスク) の規則は、以下の通り: l*m something | meaning at least l and at most m somethings, with l and m taking | default values of 0 and infinity, respectively. somethings が l 以上 m 以下繰り返すことを意味する、またデフォルト値 はそれぞれ 0 と 無限大である。 message = headers 1*(CRLF text) | ; see also [MIME1] "body-part" | ; note: must end in ASCII ; [MIME1]の"body-part"も見よ ; 注: ASCII で終わらなくてはならない text = *(single-byte-char / g2-desig-seq / single-shift-char) [*segment reset-seq *(single-byte-char / g2-desig-seq / single-shift-char ) ] | ; note: g2-desig-seq must | ; precede single-shift-char ; 注: single-shift-char に先だって ; g2-desig-seq が無くてはならない | headers = headers = <[RFC822]の"fields" と [MIME1] の"body-part" を見よ> segment = single-byte-segment / double-byte-segment single-byte-segment = single-byte-seq *(single-byte-char / g2-desig-seq / single-shift-char ) double-byte-segment = double-byte-seq *((one-of-94 one-of-94) / g2-desig-seq / single-shift-char ) reset-seq = ESC "(" ( "B" / "J" ) single-byte-seq = ESC "(" ( "B" / "J" ) double-byte-seq = (ESC "$" ( "@" / "A" / "B" )) / (ESC "$" "(" ( "C" / "D" )) g2-desig-seq = ESC "." ( "A" / "F" ) single-shift-seq = ESC "N" single-shift-char = single-shift-seq one-of-96 CRLF = CR LF | ; ( Octal, Decimal.) ; ( 8進数, 16進数 ) ESC = ; ( 33, 27.) SI = ; ( 17, 15.) SO = ; ( 16, 14.) CR = ; ( 15, 13.) LF = ; ( 12, 10.) one-of-94 = ; (41-176, 33.-126.) one-of-96 = ; (40-177, 32.-127.) 7BIT = ; ( 0-177, 0.-127.) | single-byte-char = single-byte-char = <任意の7単位符号、単独の CR と LF も含む。 しかし、CRLF や ESC, SI, SO は含まない> | MIME Considerations MIME に関する考察 | The name given to the character encoding is "ISO-2022-JP-2". This | name is intended to be used in MIME messages as follows: この表記法を "ISO-2022-JP-2" と名付ける。この名前は MIME メッセージ で、以下のように使うことを意図する。 Content-Type: text/plain; charset=iso-2022-jp-2 | The "ISO-2022-JP-2" encoding is already in 7-bit form, so it is not | necessary to use a Content-Transfer-Encoding header. It should be | noted that applying the Base64 or Quoted-Printable encoding will | render the message unreadable in non-MIME-compliant software. "ISO-2022-JP-2" 表記法は既に 7 単位符号になっているので、 Content-Transfer-Encoding ヘッダは必要ない。MIME 非実装のソフトウェ アは、Base64 や Quoted-Printable 形式を読むことができないことを注意 すべきだ。 | "ISO-2022-JP-2" may also be used in MIME headers. Both "B" and "Q" | encoding could be useful with "ISO-2022-JP-2" text. "ISO-2022-JP-2" は MIME ヘッダに使われるだろう。 "ISO-2022-JP-2" に は、"B" encoding と "Q" encoding のどちらかを使うことが可能だろう。 | References 参考文献 [ASCII] American National Standards Institute, "Coded character set -- 7-bit American national standard code for information interchange", ANSI X3.4-1986. [ISO2022] International Organization for Standardization (ISO), "Information processing -- ISO 7-bit and 8-bit coded character sets -- Code extension techniques", International Standard, Ref. No. ISO 2022-1986 (E). [ISOREG] International Organization for Standardization (ISO), "International Register of Coded Character Sets To Be Used With Escape Sequences". [MIME1] Borenstein, N., and N. Freed, "MIME (Multipurpose Internet Mail Extensions) Part One: Mechanisms for Specifying and Describing the Format of Internet Message Bodies", RFC 1521, September 1993. [MIME2] Moore, K., "MIME (Multipurpose Internet Mail Extensions) Part Two: Message Header Extensions for Non-ASCII Text", RFC 1522, September 1993. [RFC822] Crocker, D., "Standard for the Format of ARPA Internet Text Messages", STD 11, RFC 1522, UDEL, August 1982. [RFC1036] Horton M., and R. Adams, "Standard for Interchange of USENET Messages", RFC 1036, AT&T Bell Laboratories, Center for Seismic Studies, December 1987. [2022JP] Murai, J., Crispin, M., and E. van der Poel, "Japanese Character Encoding for Internet Messages", RFC 1468, June 1993. [MULE] Nishikimi, M., Handa, K., and S. Tomura, "Mule: MULtilingual Enhancement to GNU Emacs", Proc. of INET'93, August, 1993. | Acknowledgements 謝辞 | This memo is the result of discussion between various people in a | news group: fj.kanji and is reviewed by a mailing list: jp-msg | @iij.ad.jp. The Authors wish to thank in particular Prof. Eiichi | Wada for his suggestions based on profound knowledge in ISO 2022 and | related standards. このメモは、ニュースグループ fj.kanji の様々な人々との議論の結果であ り、メーリングリスト jp-msg@iij.ad.jp によりレビューされた。著者は、 Eiichi Wada 教授の ISO 2022 とそれに関連する標準規格の深い知識に基づ く提案のため、彼に格別の感謝をしたい。 | Security Considerations セキュリティに関する考察 | Security issues are not discussed in this memo. このメモでは、セキュリティについて述べていない。 | Authors' Addresses 著者の連絡先 Masataka Ohta Tokyo Institute of Technology 2-12-1, O-okayama, Meguro-ku, Tokyo 152, JAPAN Phone: +81-3-5499-7084 Fax: +81-3-3729-1940 EMail: mohta@cc.titech.ac.jp Ken'ichi Handa Electrotechnical Laboratory Umezono 1-1-4, Tsukuba, Ibaraki 305, JAPAN Phone: +81-298-58-5916 Fax: +81-298-58-5918 EMail: handa@etl.go.jp