原文:ftp://ftp.rfc-editor.org/in-notes/rfc5322.txt
原文との対訳として読みたい方へ:このページをローカルに保存して、スタイルシートの original クラスの display 属性を none から block に変更してみてください。

2009/12/12 0.1.0 初版
2010/08/08 0.1.1 誤訳修正


ソーシャルブックマーク: このページをはてなブックマークに追加 このページをDeliciousに登録 このページをlivedoorクリップに登録
サイト内関連リンク:
RFC 5321 SNMP(日本語訳)
RFC 1034 DNS - 概念と機能(日本語訳)
RFC 1035 DNS - 実装と仕様(日本語訳)
RFC 1991 PGPメッセージ交換フォーマット(日本語訳)
RFC 2822 インターネットメッセージフォーマット(日本語訳、このRFCのひとつ前のバージョンです)


Network Working Group
Request for Comments: 5322
Obsoletes: 2822
Updates: 4021
Category: Standards Track
P. Resnick, Ed.
Qualcomm Incorporated
October 2008

Internet Message Format インターネットメッセージフォーマット

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 "Internet Official Protocol Standards" (STD 1) for the standardization state and status of this protocol. Distribution of this memo is unlimited. この文書はインターネットコミュニティのためのインターネット標準トラックプロトコルについて述べており、改良に向けての議論と提案を求めている。このプロトコルの標準化の状態と状況については "Internet Official Protocol Standards" (STD 1)を参照してほしい。この文書の配布に制限はない。

Abstract 概要

This document specifies the Internet Message Format (IMF), a syntax for text messages that are sent between computer users, within the framework of "electronic mail" messages. This specification is a revision of Request For Comments (RFC) 2822, which itself superseded Request For Comments (RFC) 822, "Standard for the Format of ARPA Internet Text Messages", updating it to reflect current practice and incorporating incremental changes that were specified in other RFCs. この文書は、"電子メール" のフレームワークにおいてコンピュータ利用者間で送信されるテキストメッセージの文法、インターネットメッセージフォーマット(IMF)を規定する。この仕様は RFC 2822(それ自体が RFC 822 "Standard for the Format of ARPA Internet Text Messages" の改訂である)の改訂版であり、現在の慣例を反映し、他の RFC で規定された付加的な変更を取り入れている。

Table of Contents 目次

1. Introduction 1. 導入

1.1. Scope 1.1. 適用範囲

This document specifies the Internet Message Format (IMF), a syntax for text messages that are sent between computer users, within the framework of "electronic mail" messages. This specification is an update to [RFC2822], which itself superseded [RFC0822], updating it to reflect current practice and incorporating incremental changes that were specified in other RFCs such as [RFC1123]. この文書は、"電子メール(electronic mail)" のフレームワークにおいてコンピュータ利用車間で送信されるテキストメッセージのための文法、インターネットメッセージフォーマット(IMF)を規定する。この仕様は [RFC2822](それ自身が [RFC0822] の更新だった)の更新であり、現在の慣例を反映し、[RFC1123] など他の RFC で規定された付加的な変更を取り入れている。

This document specifies a syntax only for text messages. In particular, it makes no provision for the transmission of images, audio, or other sorts of structured data in electronic mail messages. There are several extensions published, such as the MIME document series ([RFC2045], [RFC2046], [RFC2049]), which describe mechanisms for the transmission of such data through electronic mail, either by extending the syntax provided here or by structuring such messages to conform to this syntax. Those mechanisms are outside of the scope of this specification. この文書はテキストメッセージのための文法だけを規定する。具体的に言うと、電子メールメッセージによる画像や音声、その他の構造化されたデータの転送については提供しない。ここで提供される文法を拡張するか、またはそのようなメッセージをこの文法に従うように構造化することで、電子メールを通してそのような情報を送信するための手段を説明する一連の MIME 文書([RFC2045], [RFC2046], [RFC2049])など、いくつかの拡張が公開されている。そのようなメカニズムはこの仕様の範囲外である。

In the context of electronic mail, messages are viewed as having an envelope and contents. The envelope contains whatever information is needed to accomplish transmission and delivery. (See [RFC5321] for a discussion of the envelope.) The contents comprise the object to be delivered to the recipient. This specification applies only to the format and some of the semantics of message contents. It contains no specification of the information in the envelope. 電子メールという文脈において、メッセージはエンベロープとコンテンツとを持つと見なされる。エンベロープは転送と配送とを実行するために必要となるすべての情報を含む。(エンベロープに付いての議論は [RFC5321] を参照してほしい。) コンテンツは受信者に配送されるべきオブジェクトから成る。この仕様はメッセージコンテンツのフォーマットと一部の動作とにのみ適用され、エンベロープ内の情報に関する仕様は含まない。

However, some message systems may use information from the contents to create the envelope. It is intended that this specification facilitate the acquisition of such information by programs. しかしながらメッセージシステムによってはエンベロープを生成するためにコンテンツの情報を使用する可能性がある。プログラムがそのような情報を取得するのを手助けすることも、この仕様の目的である。

This specification is intended as a definition of what message content format is to be passed between systems. Though some message systems locally store messages in this format (which eliminates the need for translation between formats) and others use formats that differ from the one specified in this specification, local storage is outside of the scope of this specification. この仕様の目的は、システム間を渡されるメッセージコンテンツの形式を定義することである。一部のメッセージシステムはここで定義されている形式のままメッセージをローカルに保存し(これによりフォーマット変換の必要性がなくなる)、それ以外のシステムはこの仕様で規定されているものとは異なる形式を使うだろうが、いずれにしてもローカルへの保存はこの仕様の範囲外である。

Note: This specification is not intended to dictate the internal formats used by sites, the specific message system features that they are expected to support, or any of the characteristics of user interface programs that create or read messages. In addition, this document does not specify an encoding of the characters for either transport or storage; that is, it does not specify the number of bits used or how those bits are specifically transferred over the wire or stored on disk. 注意:この仕様は、サイトが使用する内部形式や、サイトがサポートを期待される特定のメッセージシステムの機能、あるいはメッセージを生成したり閲覧したりするユーザーインターフェイスの特徴などを決定することを目的とはしていない。さらにこの文書は、転送や保存のための文字のエンコード方法を規定するものでもない。つまりこの仕様は、使用されるビット数やそれらのビットがネットワーク上を送信される方法、ディスク上に保存される方法などを具体的に規定しない。

1.2. Notational Conventions 1.2. 表記規約

1.2.1. Requirements Notation 1.2.1. 要求事項の表記

This document occasionally uses terms that appear in capital letters. When the terms "MUST", "SHOULD", "RECOMMENDED", "MUST NOT", "SHOULD NOT", and "MAY" appear capitalized, they are being used to indicate particular requirements of this specification. A discussion of the meanings of these terms appears in [RFC2119]. この文書はところどころで大文字の用語を使用している。"MUST", "SHOULD", "RECOMMENDED", "MUST NOT", "SHOULD NOT", "MAY" の各用語が書かれている部分は、この仕様の特別な要求事項を表している。これらの用語の意味についての議論は [RFC2119] に示されている。

1.2.2. Syntactic Notation 1.2.2. 文法表記

This specification uses the Augmented Backus-Naur Form (ABNF) [RFC5234] notation for the formal definitions of the syntax of messages. Characters will be specified either by a decimal value (e.g., the value %d65 for uppercase A and %d97 for lowercase A) or by a case-insensitive literal value enclosed in quotation marks (e.g., "A" for either uppercase or lowercase A). メッセージの正式な文法定義のために、この仕様は [RFC5234] で規定されている拡張バッカス記法(Augmented Backus-Naur Form (ABNF))を使用している。文字は 10 進数値(例えば大文字の A なら %d65、小文字の A なら %d97)、または引用符で囲まれた大文字・小文字を区別しないリテラル値(例えば大文字の A または小文字の a を表す "A")によって表される。

1.2.3. Structure of This Document 1.2.3. この文書の構成

This document is divided into several sections. この文書はいくつかのセクションに分割されている。

This section, section 1, is a short introduction to the document. このセクション(セクション 1)はこの文書の簡単な導入である。

Section 2 lays out the general description of a message and its constituent parts. This is an overview to help the reader understand some of the general principles used in the later portions of this document. Any examples in this section MUST NOT be taken as specification of the formal syntax of any part of a message. セクション 2 ではメッセージの一般的な説明とメッセージの構成要素とを説明する。これはこの文書の後の部分で使用されている一般的な原則の一部を理解するのを手助けするための要約である。このセクションの例をメッセージの各部の公式な文法の仕様であると見なしてはならない(MUST NOT)。

Section 3 specifies formal ABNF rules for the structure of each part of a message (the syntax) and describes the relationship between those parts and their meaning in the context of a message (the semantics). That is, it lays out the actual rules for the structure of each part of a message (the syntax) as well as a description of the parts and instructions for their interpretation (the semantics). This includes analysis of the syntax and semantics of subparts of messages that have specific structure. The syntax included in section 3 represents messages as they MUST be created. There are also notes in section 3 to indicate if any of the options specified in the syntax SHOULD be used over any of the others. セクション 3 ではメッセージの各部の構造の ABNF による公式な規則(文法)を規定し、メッセージのコンテキストにおけるそれら各部とその意味との関係(意味論)を説明する。つまりこのセクションは、メッセージの各部の構造の実際の規則(文法)のほかに、それらの解釈のための指示および要素の説明(意味論)を明らかにする。これには特別な構造を持つメッセージの下位構造の文法や意味論の分析も含まれる。セクション 3 に含まれる文法は、そのように生成されなければならない(MUST)ものとしてのメッセージを示している。またセクション 3 には、文法で規定されているあるオプションが、別のどのオプションに対して優先されるべき(SHOULD)かを示す注意事項も書かれている。

Both sections 2 and 3 describe messages that are legal to generate for purposes of this specification. セクション 2 および 3 は、この仕様に従う正式なメッセージを記述している。

Section 4 of this document specifies an "obsolete" syntax. There are references in section 3 to these obsolete syntactic elements. The rules of the obsolete syntax are elements that have appeared in earlier versions of this specification or have previously been widely used in Internet messages. As such, these elements MUST be interpreted by parsers of messages in order to be conformant to this specification. However, since items in this syntax have been determined to be non-interoperable or to cause significant problems for recipients of messages, they MUST NOT be generated by creators of conformant messages. セクション 4 では "廃止された(obsolete)" 文法を規定する。これら廃止された文法要素へのリファレンスはセクション 3 にある。廃止された文法の規則は、この仕様の以前の版に書かれていたか、過去にインターネットメッセージにおいて広く使用されていたものである。そのためメッセージパーサーがこの仕様に適合するためには、これらの要素を解釈しなければならない(MUST)。しかしながら、これらの文法における項目は相互運用性を持たないか、メッセージの受信者に深刻な問題を起こすものと見なされているため、適合するメッセージの作成者はこれらを生成してはならない(MUST NOT)。

Section 5 details security considerations to take into account when implementing this specification. セクション 5 ではこの仕様を実装する際に考慮するべきセキュリティ考察を詳述する。

Appendix A lists examples of different sorts of messages. These examples are not exhaustive of the types of messages that appear on the Internet, but give a broad overview of certain syntactic forms. 付録 A では様々な種類のメッセージの例を示す。これらの例はインターネット上で使用されているメッセージの形式を網羅するものではないが、特定の文法書式の概観を提供する。

Appendix B lists the differences between this specification and earlier specifications for Internet messages. 付録 B はインターネットメッセージのための過去の仕様とこの仕様との差異の一覧である。

Appendix C contains acknowledgements. 付録 C は謝辞である。

2. Lexical Analysis of Messages 2. メッセージの字句解析

2.1. General Description 2.1. 概要

At the most basic level, a message is a series of characters. A message that is conformant with this specification is composed of characters with values in the range of 1 through 127 and interpreted as US-ASCII [ANSI.X3-4.1986] characters. For brevity, this document sometimes refers to this range of characters as simply "US-ASCII characters". もっとも基本的なレベルでは、メッセージは一連の文字である。この仕様に適合するメッセージは値が 1 ~ 127 の範囲の文字から構成され、US-ASCII 文字 [ASCII] として解釈される。簡潔さのためにこの文書では、この範囲の文字を単に "US-ASCII 文字" として言及する場合がある。

Note: This document specifies that messages are made up of characters in the US-ASCII range of 1 through 127. There are other documents, specifically the MIME document series ([RFC2045], [RFC2046], [RFC2047], [RFC2049], [RFC4288], [RFC4289]), that extend this specification to allow for values outside of that range. Discussion of those mechanisms is not within the scope of this specification. 注意:この文書は、メッセージが 1 ~ 127 の範囲の US-ASCII 文字から構成されるものと規定している。この範囲外の値を可能にするためにこの仕様を拡張する他の文書が存在する。具体的には一連の MIME 文書 ([RFC2045], [RFC2046], [RFC2047], [RFC2049], [RFC4288], [RFC4289]) である。これらのメカニズムに関する議論はこの仕様の範囲外である。

Messages are divided into lines of characters. A line is a series of characters that is delimited with the two characters carriage-return and line-feed; that is, the carriage return (CR) character (ASCII value 13) followed immediately by the line feed (LF) character (ASCII value 10). (The carriage return/line feed pair is usually written in this document as "CRLF".) メッセージは文字列へと分割される。行は復帰・改行の 2 文字、つまり復帰(CR)文字(ASCII 値 13)の直後に改行(LF)文字(ASCII 値 10)が続く 2 文字で区切られた一連の文字である。(この文書では通常、復帰/改行の組を "CRLF" と書く。)

A message consists of header fields (collectively called "the header section of the message") followed, optionally, by a body. The header section is a sequence of lines of characters with special syntax as defined in this specification. The body is simply a sequence of characters that follows the header section and is separated from the header section by an empty line (i.e., a line with nothing preceding the CRLF). メッセージは、ヘッダフィルード(集合的に "メッセージのヘッダ部(the header section of the message)" と呼ばれる)と、オプションでそれに続くボディとから構成される。ヘッダ部はこの仕様で定義されている特別な文法を持つ一連の文字列である。ボディはヘッダ部の後に続く単純な一連の文字群であり、空行(つまり CRLF のみの行)によってヘッダ部と分離される。

Note: Common parlance and earlier versions of this specification use the term "header" to either refer to the entire header section or to refer to an individual header field. To avoid ambiguity, this document does not use the terms "header" or "headers" in isolation, but instead always uses "header field" to refer to the individual field and "header section" to refer to the entire collection. 注意:この仕様の以前の版や一般用語では、ヘッダ部全体を表す場合も個々のヘッダフィールドを表す場合も "ヘッダ(header)" という用語を使用している。あいまいさを廃するために、この文書は "ヘッダ(header)" または "ヘッダ群(headers)" という用語を単独では使用せず、代わりに個々のフィールドを表すためには "ヘッダフィールド(header field)" を、集合全体を表すためには "ヘッダ部(header section)" を常に使用する。

2.1.1. Line Length Limits 2.1.1. 行の長さの制限

There are two limits that this specification places on the number of characters in a line. Each line of characters MUST be no more than 998 characters, and SHOULD be no more than 78 characters, excluding the CRLF. この仕様が 1 行の文字数に課す制限は二つある。CRLF を除いて、各行は 998 文字を超えてはならならず(MUST)、78 文字を超えるべきではない(SHOULD)。

The 998 character limit is due to limitations in many implementations that send, receive, or store IMF messages which simply cannot handle more than 998 characters on a line. Receiving implementations would do well to handle an arbitrarily large number of characters in a line for robustness sake. However, there are so many implementations that (in compliance with the transport requirements of [RFC5321]) do not accept messages containing more than 1000 characters including the CR and LF per line, it is important for implementations not to create such messages. 998 文字の制限は、IMF メッセージを送受信したり保存したりする実装の多くが 998 文字を超える行を単純に扱えないという理由によるものである。堅牢性のために受信側実装は任意の長い 1 行を正常に扱うだろう。しかしながら([RFC5321] における転送の要求事項に適合しながらも)、CRLF を含めて 1 行が 1000 文字を超えるメッセージを受け付けない実装は数多く存在するため、実装がそのようなメッセージを生成しないことは重要である。

The more conservative 78 character recommendation is to accommodate the many implementations of user interfaces that display these messages which may truncate, or disastrously wrap, the display of more than 78 characters per line, in spite of the fact that such implementations are non-conformant to the intent of this specification (and that of [RFC5321] if they actually cause information to be lost). Again, even though this limitation is put on messages, it is incumbent upon implementations that display messages to handle an arbitrarily large number of characters in a line (certainly at least up to the 998 character limit) for the sake of robustness. より保守的な推奨事項である 78 文字の制限は、78 文字を超える表示を切り捨てたり、悲惨なラップをしたりする可能性のある多くのユーザーインターフェイス実装に適合するためのものである(本当はそのような実装はこの仕様の目的に(実際に情報を失ってしまうなら [RFC5321] の目的にも)適合しない)。この制限はメッセージに課されるものだが、堅牢性のために任意の長い行(もちろん長くとも 998 文字以下の行)を扱う実装に課される義務でもある。

2.2. Header Fields 2.2. ヘッダフィールド

Header fields are lines beginning with a field name, followed by a colon (":"), followed by a field body, and terminated by CRLF. A field name MUST be composed of printable US-ASCII characters (i.e., characters that have values between 33 and 126, inclusive), except colon. A field body may be composed of printable US-ASCII characters as well as the space (SP, ASCII value 32) and horizontal tab (HTAB, ASCII value 9) characters (together known as the white space characters, WSP). A field body MUST NOT include CR and LF except when used in "folding" and "unfolding", as described in section 2.2.3. All field bodies MUST conform to the syntax described in sections 3 and 4 of this specification. ヘッダフィールドは、フィールド名の次にコロン(":")、次にフィールドの本文、最後に CRLF で終了する行である。フィールド名は(コロンを除く)印刷可能な US-ASCII 文字(つまり 33 ~ 126 の値を持つ文字)で構成されなければならない(MUST)。フィールド本文は CR と LF とを除く任意の US-ASCII 文字のほかに、空白(SP、ASCII 値 32)・水平タブ(HTAB、ASCII 値 9)の各文字(空白文字、WSP としても知られる)で構成されてよい。フィールド本文は、セクション 2.2.3 で説明されている "折り返し(folding)" と "展開(unfolding)" とを使用する場合を除き、CR・LF を含んではならない(MUST NOT)。すべてのフィールド本文はセクション 3 およびセクション 4 で説明されている文法に従わなければならない(MUST)。

2.2.1. Unstructured Header Field Bodies 2.2.1. 非構造化ヘッダフィールド本文

Some field bodies in this specification are defined simply as "unstructured" (which is specified in section 3.2.5 as any printable US-ASCII characters plus white space characters) with no further restrictions. These are referred to as unstructured field bodies. Semantically, unstructured field bodies are simply to be treated as a single line of characters with no further processing (except for "folding" and "unfolding" as described in section 2.2.3). この仕様における一部のフィールド本文は特別な制限を持たない単純な "非構造化(unstructured)"(セクション 3.2.5 において、任意の印刷可能 US-ASCII 文字と WSP とであると規定されている) として定義される。それらは非構造化フィールド本文と呼ばれる。意味的に言うと非構造化フィールド本文は、それ以上処理されない(ただしセクション 2.2.3 で説明されているヘッダの "折り返し(folding)" と "展開(unfolding)" とを除く)単一行の文字列として扱われるべきものである。

2.2.2. Structured Header Field Bodies 2.2.2. 構造化ヘッダフィールド本文

Some field bodies in this specification have a syntax that is more restrictive than the unstructured field bodies described above. These are referred to as "structured" field bodies. Structured field bodies are sequences of specific lexical tokens as described in sections 3 and 4 of this specification. Many of these tokens are allowed (according to their syntax) to be introduced or end with comments (as described in section 3.2.2) as well as the white space characters, and those white space characters are subject to "folding" and "unfolding" as described in section 2.2.3. Semantic analysis of structured field bodies is given along with their syntax. この仕様における一部のフィールド本文は、上記の非構造化フィールド本文よりも制限された特別の文法構造を持つ。これらは "構造化(structured)" フィールド本文と呼ばれる。構造化フィールド本文は、この仕様のセクション 3 と 4 とで説明されている一連の特別な語彙トークンである。これらのトークンの多くは(その文法に従って)空白文字(SP、ASCII 値 32)や水平タブ文字(HTAB、ASCII 値 9)(共に空白文字 WSP として知られている)はもちろん、コメント(セクション 3.2.2 で説明されている)を導入したり、それらで終わったりすることが許されている。それらの WSP 文字は、セクション 2.2.3 で説明されているヘッダの "折り返し(folding)" と "展開(unfolding)" との影響を受ける。構造化フィールド本文の意味解析はその文法と共に示されている。

2.2.3. Long Header Fields 2.2.3. 長いヘッダフィールド

Each header field is logically a single line of characters comprising the field name, the colon, and the field body. For convenience however, and to deal with the 998/78 character limitations per line, the field body portion of a header field can be split into a multiple-line representation; this is called "folding". The general rule is that wherever this specification allows for folding white space (not simply WSP characters), a CRLF may be inserted before any WSP. 各ヘッダフィールドは、論理的にはフィールド名・コロン・フィールド本文から構成される単一行である。しかしながら利便性と行ごとの 998/78 文字の制限とのために、ヘッダフィールドのフィールド本文を複数行に分割することが可能であり、"折り返し(folding)" と呼ばれる。一般的な規則として、この仕様が(単なる WSP 文字ではなく)空白文字を含むことを許す場所ならどこでも、任意の WSP の前に CRLF を置くことが許される。

For example, the header field: 例えば次のヘッダフィールドの場合:

   Subject: This is a test

can be represented as: 次のように表すこともできる:

   Subject: This
    is a test

Note: Though structured field bodies are defined in such a way that folding can take place between many of the lexical tokens (and even within some of the lexical tokens), folding SHOULD be limited to placing the CRLF at higher-level syntactic breaks. For instance, if a field body is defined as comma-separated values, it is recommended that folding occur after the comma separating the structured items in preference to other places where the field could be folded, even if it is allowed elsewhere. 注意:構造化フィールド本文はほとんどの単語トークン間に折り返しを入れることができるように定義されているが、CRLF を置くのは上位レベルの文法の改行位置に限定するべきである(SHOULD)。例えばカンマ区切りの値として定義されるフィールド本文の場合、項目間を区切るカンマの後ろで折り返すことが推奨され、そのフィールドを折り返すことができる別の位置での折り返しは、たとえそれが許可されているとしても好ましくない。

The process of moving from this folded multiple-line representation of a header field to its single line representation is called "unfolding". Unfolding is accomplished by simply removing any CRLF that is immediately followed by WSP. Each header field should be treated in its unfolded form for further syntactic and semantic evaluation. An unfolded header field has no length restriction and therefore may be indeterminately long. 折り返された複数行のヘッダフィールドを単一行へと変換する手順は "展開(unfolding)" と呼ばれる。展開は単に、直後にWSPが続くすべてのCRLFを取り除くことで行われる。さらなる文法的評価や意味的評価のためには、各ヘッダフィールドは展開後の形式で扱われるべきである。展開後のヘッダフィールドには長さの制限がないため、長さは不定になる。

2.3. Body 2.3. ボディ

The body of a message is simply lines of US-ASCII characters. The only two limitations on the body are as follows: メッセージのボディは単純な US-ASCII 文字からなる行である。ボディに課される制限は以下の二つだけである:

Note: As was stated earlier, there are other documents, specifically the MIME documents ([RFC2045], [RFC2046], [RFC2049], [RFC4288], [RFC4289]), that extend (and limit) this specification to allow for different sorts of message bodies. Again, these mechanisms are beyond the scope of this document. 注意:前述の通り、この仕様を拡張(または制限)して様々な種類のメッセージボディを可能にする MIME 文書([RFC2045], [RFC2046], [RFC2049], [RFC4288], [RFC4289])などの規格が存在する。繰り返しになるが、それらのメカニズムはこの文書の範囲外である。

3. Syntax 3. 文法

3.1. Introduction 3.1. 導入

The syntax as given in this section defines the legal syntax of Internet messages. Messages that are conformant to this specification MUST conform to the syntax in this section. If there are options in this section where one option SHOULD be generated, that is indicated either in the prose or in a comment next to the syntax. このセクションで定義されている文法はインターネットメッセージの正式な文法である。この仕様に準拠するメッセージはこのセクションの文法に従わなければならない(MUST)。この文書中、ひとつのオプションが生成されるべき(SHOULD)場所に複数の選択肢がある場合、そのことを文章中または文法の後のコメント中に示している。

For the defined expressions, a short description of the syntax and use is given, followed by the syntax in ABNF, followed by a semantic analysis. The following primitive tokens that are used but otherwise unspecified are taken from the "Core Rules" of [RFC5234], Appendix B.1: CR, LF, CRLF, HTAB, SP, WSP, DQUOTE, DIGIT, ALPHA, and VCHAR. 定義済み表現は、まずその文法の短い説明と使用方法とが示されており、次に ABNF による文法定義、最後に意味解析が続く。使用されているが他で規定されていない基本トークンの CR, LF, CRLF, HTAB, SP, WSP, DQUOTE, DIGIT, ALPHA, VCHAR は、[RFC5234] の "Core Rules"(Appendix B.1) に由来する。

In some of the definitions, there will be non-terminals whose names start with "obs-". These "obs-" elements refer to tokens defined in the obsolete syntax in section 4. In all cases, these productions are to be ignored for the purposes of generating legal Internet messages and MUST NOT be used as part of such a message. However, when interpreting messages, these tokens MUST be honored as part of the legal syntax. In this sense, section 3 defines a grammar for the generation of messages, with "obs-" elements that are to be ignored, while section 4 adds grammar for the interpretation of messages. 一部の定義の中には "obs-" で始まる非端子が含まれている。これら "obs-" で始まる要素は、セクション 4 の廃止された文法で定義されているトークンを参照している。いかなる場合でも正式なインターネットメッセージを作成する場合、これらはすべて無視するべきものであり、メッセージの一部として使用してはならない(MUST NOT)。しかしながらメッセージを解釈する際にはこれらのトークンを正式な文法の一部として尊重しなければならない(MUST)。その意味では、セクション 3 は無視されるべき "obs-" 要素とともにメッセージ生成のための文法を定義し、セクション 4 はメッセージ解釈のための文法を補足していることになる。

3.2. Lexical Tokens 3.2. 語彙トークン

The following rules are used to define an underlying lexical analyzer, which feeds tokens to the higher-level parsers. This section defines the tokens used in structured header field bodies. 基本的な字句解析器を定義するために以下の規則を使用する。その字句解析器がトークンを上位レベルのパーサーへと渡す。このセクションでは構造化ヘッダフィールド本文で使用されるトークンを定義する。

Note: Readers of this specification need to pay special attention to how these lexical tokens are used in both the lower-level and higher-level syntax later in the document. Particularly, the white space tokens and the comment tokens defined in section 3.2.2 get used in the lower-level tokens defined here, and those lower- level tokens are in turn used as parts of the higher-level tokens defined later. Therefore, white space and comments may be allowed in the higher-level tokens even though they may not explicitly appear in a particular definition. 注意:この仕様の読者はこの文書のこれ以降において、これらの語彙トークンが文法上の下位レベルと上位レベルとでどのように使用されているのかに特別な注意を払う必要がある。具体的に言うと、セクション 3.2.3 で定義されている空白トークンとコメントトークンとはここで定義されている下位レベルのトークンとして使用される一方で、それらの下位レベルトークンは後に定義する上位レベルのトークンの一部としても使用される。したがって空白とコメントは、それらが特定の定義に明示的に含まれていない場合でも、上位レベルトークンにおいて使用することが許される場合がある。

3.2.1. Quoted characters 3.2.1. 引用文字

Some characters are reserved for special interpretation, such as delimiting lexical tokens. To permit use of these characters as uninterpreted data, a quoting mechanism is provided. 一部の文字は語彙トークンの区切りなどの特別な解釈のために予約されている。そのような文字を解釈されないその文字そのものとしてとして使用するために、引用メカニズムが提供されている。

   quoted-pair     =   ("\" (VCHAR / WSP)) / obs-qp

Where any quoted-pair appears, it is to be interpreted as the character alone. That is to say, the "\" character that appears as part of a quoted-pair is semantically "invisible". quoted-pair が現れると、それは単独のその文字として解釈される。つまり quoted-pair の一部として使用される "\" 文字は、意味的に "不可視(invisible)" ということになる。

Note: The "\" character may appear in a message where it is not part of a quoted-pair. A "\" character that does not appear in a quoted-pair is not semantically invisible. The only places in this specification where quoted-pair currently appears are ccontent, qcontent, and in obs-dtext in section 4. 注意:quoted-pair の一部でなければ、メッセージ内に "\" が現れてもよい。quoted-pair の外の "\" は意味的に不可視ではない。現在、この仕様において quoted-pair が現れる場所は、ccontent および qcontent、そしてセクション 4 の obs-dtext だけである。

3.2.2. Folding White Space and Comments 3.2.2. 空白の折り返しとコメント

White space characters, including white space used in folding (described in section 2.2.3), may appear between many elements in header field bodies. Also, strings of characters that are treated as comments may be included in structured field bodies as characters enclosed in parentheses. The following defines the folding white space (FWS) and comment constructs. 空白文字(セクション 2.3.3 で説明した折り返し中の空白も含む)は、ヘッダフィールド本文内のほとんどの要素間に現れることができる。同じように、コメントとして扱われる文字列は括弧で囲われた文字列として構造化フィールド本文に含めることができる。折り返された空白文字(FWS)とコメントとの構成要素を以下に定義する。

Strings of characters enclosed in parentheses are considered comments so long as they do not appear within a "quoted-string", as defined in section 3.2.4. Comments may nest. セクション 3.2.4 で定義されている "quoted-string" 内ではない限り、括弧で囲まれた文字列はコメントとみなされる。コメントはネストしてもよい。

There are several places in this specification where comments and FWS may be freely inserted. To accommodate that syntax, an additional token for "CFWS" is defined for places where comments and/or FWS can occur. However, where CFWS occurs in this specification, it MUST NOT be inserted in such a way that any line of a folded header field is made up entirely of WSP characters and nothing else. コメントと FWS とを自由に挿入できる場所がいくつかある。この文法に適合するために、コメントや FWS が現れてもよい場所を表す追加のトークン "CFWS" を定義する。しかしながらこの仕様において CFWS が現れる場所では、折り返しヘッダフィールドのどれかの行が WSP のみで構成されるような方法でそれが挿入されてはならない(MUST NOT)。

   FWS             =   ([*WSP CRLF] 1*WSP) /  obs-FWS
                                          ; Folding white space

   ctext           =   %d33-39 /          ; Printable US-ASCII
                       %d42-91 /          ;  characters not including
                       %d93-126 /         ;  "(", ")", or "\"
                       obs-ctext

   ccontent        =   ctext / quoted-pair / comment

   comment         =   "(" *([FWS] ccontent) [FWS] ")"

   CFWS            =   (1*([FWS] comment) [FWS]) / FWS
   FWS             =   ([*WSP CRLF] 1*WSP) /  obs-FWS
                                          ; 空白の折り返し

   ctext           =   %d33-39 /          ; "(", ")",  "\"を除く
                       %d42-91 /          ;  印刷可能な US-ASCII 文字
                       %d93-126 /
                       obs-ctext

   ccontent        =   ctext / quoted-pair / comment

   comment         =   "(" *([FWS] ccontent) [FWS] ")"

   CFWS            =   (1*([FWS] comment) [FWS]) / FWS

Throughout this specification, where FWS (the folding white space token) appears, it indicates a place where folding, as discussed in section 2.2.3, may take place. Wherever folding appears in a message (that is, a header field body containing a CRLF followed by any WSP), unfolding (removal of the CRLF) is performed before any further semantic analysis is performed on that header field according to this specification. That is to say, any CRLF that appears in FWS is semantically "invisible". この仕様全体を通して、FWS(折り返された空白トークン)の現れる場所は、(セクション 2.2.3 で議論した通り)折り返しが現れてよい位置を表す。メッセージ内でヘッダの折り返し(つまり、WSP に続けて CRLF が含まれるヘッダフィールド本文)が現れるところではどこでも、この仕様に従ってヘッダフィールドのさらなる意味解析が行われる前に、ヘッダの展開(CRLF の削除)が行われる。すなわち、FWS 内のすべての CRLF は意味的に "不可視(invisible)" ということである。

A comment is normally used in a structured field body to provide some human-readable informational text. Since a comment is allowed to contain FWS, folding is permitted within the comment. Also note that since quoted-pair is allowed in a comment, the parentheses and backslash characters may appear in a comment, so long as they appear as a quoted-pair. Semantically, the enclosing parentheses are not part of the comment; the comment is what is contained between the two parentheses. As stated earlier, the "\" in any quoted-pair and the CRLF in any FWS that appears within the comment are semantically "invisible" and therefore not part of the comment either. 構造化フィールド本文の中では、人間が理解できる情報を提供するために習慣的にコメントが使用される。コメントに FWS を含めることも可能なので、コメント内で行を折り返すことも許される。またコメントに quoted-pair を含むことも許されているため、quoted-pair としてであれば括弧とバックスラッシュとをコメント内に含めることもできる。コメントとは二つの括弧の間に含まれるものであるため、意味的には括弧はコメントの一部ではない。前述の通り、コメントに含まれている quoted-pair 内の "\" と FWS 内の CRLF とは意味的に "不可視(invisible)" であるため、共にコメントの一部ではない。

Runs of FWS, comment, or CFWS that occur between lexical tokens in a structured header field are semantically interpreted as a single space character. 構造化ヘッダフィールド内の語彙トークンの間に現れる FWS・コメント・CFWS の連続は、意味的には単独の空白文字として解釈される。

3.2.3. Atom 3.2.3. アトム

Several productions in structured header field bodies are simply strings of certain basic characters. Such productions are called atoms. 構造化ヘッダフィールド内に生成される内容のいくつかは、特定の基本的な文字からなる単純な文字列である。それらはアトムと呼ばれる。

Some of the structured header field bodies also allow the period character (".", ASCII value 46) within runs of atext. An additional "dot-atom" token is defined for those purposes. 一部の構造化ヘッダフィールド本文は atext 内にピリオド("." ASCII 値 46)を許している。そのような目的のために追加の "dot-atom" トークンが定義されている。

Note: The "specials" token does not appear anywhere else in this specification. It is simply the visible (i.e., non-control, non- white space) characters that do not appear in atext. It is provided only because it is useful for implementers who use tools that lexically analyze messages. Each of the characters in specials can be used to indicate a tokenization point in lexical analysis. 注意:"specials" トークンはこの仕様には現れない。specials は atext 内に現れない単純な可視の(つまり非制御、非空白)文字である。これは、メッセージの字句解析を行うツールを使用する実装者にとって有用であるという理由で提供されているだけである。specials に含まれる各文字は字句解析におけるトークン化の位置を表すために使用できる。

   atext           =   ALPHA / DIGIT /    ; Printable US-ASCII
                       "!" / "#" /        ;  characters not including
                       "$" / "%" /        ;  specials.  Used for atoms.
                       "&" / "'" /
                       "*" / "+" /
                       "-" / "/" /
                       "=" / "?" /
                       "^" / "_" /
                       "`" / "{" /
                       "|" / "}" /
                       "~"

   atom            =   [CFWS] 1*atext [CFWS]

   dot-atom-text   =   1*atext *("." 1*atext)

   dot-atom        =   [CFWS] dot-atom-text [CFWS]

   specials        =   "(" / ")" /        ; Special characters that do
                       "<" / ">" /        ;  not appear in atext
                       "[" / "]" /
                       ":" / ";" /
                       "@" / "\" /
                       "," / "." /
                       DQUOTE
   atext           =   ALPHA / DIGIT /    ; Printable US-ASCII
                       "!" / "#" /        ;  specials を除く文字
                       "$" / "%" /        ;  atom に使用される
                       "&" / "'" /
                       "*" / "+" /
                       "-" / "/" /
                       "=" / "?" /
                       "^" / "_" /
                       "`" / "{" /
                       "|" / "}" /
                       "~"

   atom            =   [CFWS] 1*atext [CFWS]

   dot-atom-text   =   1*atext *("." 1*atext)

   dot-atom        =   [CFWS] dot-atom-text [CFWS]

   specials        =   "(" / ")" /        ; atext 内に現れない特殊文字
                       "<" / ">" /
                       "[" / "]" /
                       ":" / ";" /
                       "@" / "\" /
                       "," / "." /
                       DQUOTE

Both atom and dot-atom are interpreted as a single unit, comprising the string of characters that make it up. Semantically, the optional comments and FWS surrounding the rest of the characters are not part of the atom; the atom is only the run of atext characters in an atom, or the atext and "." characters in a dot-atom. atom と dot-atom はともに、それを構成する文字列を含むひとつの構成単位として解釈される。残りの文字列の前後に置かれるオプションのコメントおよび FWS は意味的にアトムではない。アトムはアトム内の一連の atext 文字列、または dot-atom 内の atext と "." とだけである。

3.2.4. Quoted Strings 3.2.4. 引用文字列

Strings of characters that include characters other than those allowed in atoms can be represented in a quoted string format, where the characters are surrounded by quote (DQUOTE, ASCII value 34) characters. atom 内で許可されていない文字を含む文字列でも、引用文字列の形式(文字列を引用符(DQUOTE、ASCII 値 34) で囲う)であれば表すことができる。

   qtext           =   %d33 /             ; Printable US-ASCII
                       %d35-91 /          ;  characters not including
                       %d93-126 /         ;  "\" or the quote character
                       obs-qtext

   qcontent        =   qtext / quoted-pair

   quoted-string   =   [CFWS]
                       DQUOTE *([FWS] qcontent) [FWS] DQUOTE
                       [CFWS]
   qtext           =   %d33 /             ; "\" または引用文字を除く
                       %d35-91 /          ;  印刷可能な US-ASCII 文字
                       %d93-126 /
                       obs-qtext

   qcontent        =   qtext / quoted-pair

   quoted-string   =   [CFWS]
                       DQUOTE *([FWS] qcontent) [FWS] DQUOTE
                       [CFWS]

A quoted-string is treated as a unit. That is, quoted-string is identical to atom, semantically. Since a quoted-string is allowed to contain FWS, folding is permitted. Also note that since quoted-pair is allowed in a quoted-string, the quote and backslash characters may appear in a quoted-string so long as they appear as a quoted-pair. quoted-string はひとつの構成単位として扱われる。つまり quoted-string は意味的に atom と同じである。quoted-string には FWS を含めることも許されるため、折り返しも可能である。また quoted-string の中に quoted-pair を置くことも許されるため、quoted-pair としてであれば、quoted-string 内に引用符とバックスラッシュ("\")とを置くことができる。

Semantically, neither the optional CFWS outside of the quote characters nor the quote characters themselves are part of the quoted-string; the quoted-string is what is contained between the two quote characters. As stated earlier, the "\" in any quoted-pair and the CRLF in any FWS/CFWS that appears within the quoted-string are semantically "invisible" and therefore not part of the quoted-string either. 引用文字の外側のオプションの CFWS も引用文字そのものも、意味的には quoted-string の一部ではない。quoted-string は二つの引用符の間にある文字列である。前述の通り、quoted-string 内に現れる quoted-pair 内の "\" と FWS/CFWS 内の CRLF とは意味的に "不可視(invisible)" であるため、ともに quoted-string の一部ではない。

3.2.5. Miscellaneous Tokens 3.2.5. その他のトークン

Three additional tokens are defined: word and phrase for combinations of atoms and/or quoted-strings, and unstructured for use in unstructured header fields and in some places within structured header fields. その他のトークンが三つ定義されている。atom や quoted-string を組み合わせた word と phrase 、構造化ヘッダフィールド内の一部と非構造化ヘッダフィールドとで使用される unstructured である。

   word            =   atom / quoted-string

   phrase          =   1*word / obs-phrase

   unstructured    =   (*([FWS] VCHAR) *WSP) / obs-unstruct

3.3. Date and Time Specification 3.3. 日付・時刻の仕様

Date and time values occur in several header fields. This section specifies the syntax for a full date and time specification. Though folding white space is permitted throughout the date-time specification, it is RECOMMENDED that a single space be used in each place that FWS appears (whether it is required or optional); some older implementations will not interpret longer sequences of folding white space correctly. 日付・時刻はいくつかのヘッダフィールド内に現れる。このセクションでは完全な日付・時刻の文法を規定する。日付・時刻の仕様では空白を折り返すことが許可されているが、(必須であれオプションであれ) FWS が置かれる位置には単独の空白文字を使用することが推奨される(RECOMMENDED)。これは一部の古い実装が折り返された空白文字を正しく解釈できない可能性があるためである。

   date-time       =   [ day-of-week "," ] date time [CFWS]

   day-of-week     =   ([FWS] day-name) / obs-day-of-week

   day-name        =   "Mon" / "Tue" / "Wed" / "Thu" /
                       "Fri" / "Sat" / "Sun"

   date            =   day month year

   day             =   ([FWS] 1*2DIGIT FWS) / obs-day

   month           =   "Jan" / "Feb" / "Mar" / "Apr" /
                       "May" / "Jun" / "Jul" / "Aug" /
                       "Sep" / "Oct" / "Nov" / "Dec"

   year            =   (FWS 4*DIGIT FWS) / obs-year

   time            =   time-of-day zone

   time-of-day     =   hour ":" minute [ ":" second ]

   hour            =   2DIGIT / obs-hour

   minute          =   2DIGIT / obs-minute

   second          =   2DIGIT / obs-second

   zone            =   (FWS ( "+" / "-" ) 4DIGIT) / obs-zone

The day is the numeric day of the month. The year is any numeric year 1900 or later. day は月中の日を表す数値である。year は 1900 以降の任意の数値である。

The time-of-day specifies the number of hours, minutes, and optionally seconds since midnight of the date indicated. time-of-day はその日の午前零時から経過した時と分と、オプションで秒を表す。

The date and time-of-day SHOULD express local time. date と time-of-day は地方時間を表すべきである(SHOULD)。

The zone specifies the offset from Coordinated Universal Time (UTC, formerly referred to as "Greenwich Mean Time") that the date and time-of-day represent. The "+" or "-" indicates whether the time-of- day is ahead of (i.e., east of) or behind (i.e., west of) Universal Time. The first two digits indicate the number of hours difference from Universal Time, and the last two digits indicate the number of additional minutes difference from Universal Time. (Hence, +hhmm means +(hh * 60 + mm) minutes, and -hhmm means -(hh * 60 + mm) minutes). The form "+0000" SHOULD be used to indicate a time zone at Universal Time. Though "-0000" also indicates Universal Time, it is used to indicate that the time was generated on a system that may be in a local time zone other than Universal Time and that the date-time contains no information about the local time zone. zone は、date と time-of-day とが表す時刻の、協定世界時(UTC、以前は "グリニッジ標準時(Greenwich Mean Time)" と呼ばれていた)からのオフセットを表す。"+" または "-" はそれぞれ世界時に対して進んでいる(つまり東方)か遅れている(つまり西方)かを表す。最初の 2 桁は世界時からの差異時間、次の 2 桁は世界時からの差異分を表す(したがって +hhmm は +(hh * 60 + mm) 分、-hhmm は -(hh * 60 + mm) 分を意味する)。"+0000" は世界時のタイムゾーンを表すために使用されるべきである(SHOULD)。"-0000" も世界時を表すが、これは世界時以外のタイムゾーン上のシステムによって生成された時刻であり、date-time にはローカルのタイムゾーンに関する情報が含まれていないことを表す。

A date-time specification MUST be semantically valid. That is, the day-of-week (if included) MUST be the day implied by the date, the numeric day-of-month MUST be between 1 and the number of days allowed for the specified month (in the specified year), the time-of-day MUST be in the range 00:00:00 through 23:59:60 (the number of seconds allowing for a leap second; see [RFC1305]), and the last two digits of the zone MUST be within the range 00 through 59. 日付・時刻の値は意味的に有効なものでなければならない(MUST)。つまり、(もし指定されていれば)day-of-the-week は date が表す日付の曜日でなければならない(MUST)し、数字の day-of-month は 1 から(その年の)その月の最終日までの数字でなければなない(MUST)。また time-of-day は 00:00:00 から 23:59:60 までの範囲(秒にはうるう秒も許可されている。[RFC1305] を参照してほしい)でなければならない(MUST)し、zone の後ろ 2 桁は 00 から 59 までの範囲でなければならない(MUST)。

3.4. Address Specification 3.4. アドレスの仕様

Addresses occur in several message header fields to indicate senders and recipients of messages. An address may either be an individual mailbox, or a group of mailboxes. アドレスはメッセージの送信者と受信者とを表すためにいくつかのメッセージヘッダフィールドで使用される。アドレスには特定のメールボックスかメールボックスのグループかのどちらかが許可されている。

   address         =   mailbox / group

   mailbox         =   name-addr / addr-spec

   name-addr       =   [display-name] angle-addr

   angle-addr      =   [CFWS] "<" addr-spec ">" [CFWS] /
                       obs-angle-addr

   group           =   display-name ":" [group-list] ";" [CFWS]

   display-name    =   phrase

   mailbox-list    =   (mailbox *("," mailbox)) / obs-mbox-list

   address-list    =   (address *("," address)) / obs-addr-list

   group-list      =   mailbox-list / CFWS / obs-group-list

A mailbox receives mail. It is a conceptual entity that does not necessarily pertain to file storage. For example, some sites may choose to print mail on a printer and deliver the output to the addressee's desk. メールボックスはメールを受け取る。メールボックスは概念上のものであり、ファイルストレージに関連する必要はない。例えば、サイトによってはメールをプリンタに出力し、印刷されたメールをそのアドレスの所有者の机に配布するという選択をしてもよい。

Normally, a mailbox is composed of two parts: (1) an optional display name that indicates the name of the recipient (which can be a person or a system) that could be displayed to the user of a mail application, and (2) an addr-spec address enclosed in angle brackets ("<" and ">"). There is an alternate simple form of a mailbox where the addr-spec address appears alone, without the recipient's name or the angle brackets. The Internet addr-spec address is described in section 3.4.1. 通常、mailbox は二つの部分から構成される:(1) メールアプリケーションの利用者に対して表示することのできる受信者名(人物またはシステムである可能性がある)を表すオプションの表示名、(2) アングルブラケット("<" と ">")で囲われた addr-spec アドレスである。もうひとつ別の単純な形式として、アングルブラケットや受信者名のない addr-spec アドレス単独の形式がある。インターネットにおける addr-spec アドレスはセクション 3.4.1 で説明されている。

Note: Some legacy implementations used the simple form where the addr-spec appears without the angle brackets, but included the name of the recipient in parentheses as a comment following the addr-spec. Since the meaning of the information in a comment is unspecified, implementations SHOULD use the full name-addr form of the mailbox, instead of the legacy form, to specify the display name associated with a mailbox. Also, because some legacy implementations interpret the comment, comments generally SHOULD NOT be used in address fields to avoid confusing such implementations. 注意:アングルブラケットのない addr-spec という単純な形式において、一部の古い実装は addr-spec の後に括弧で括られた受信者の名前をコメントとして含めていた。コメント内の情報の意味は規定されていないので、実装はメールボックスに対応する表示名を表すために、レガシーな形式の代わりにメールボックスの完全な name-addr 形式を使用するべきである(SHOULD)。また一部の古い実装はコメントを解釈するので、そのような実装を混乱させないためにも、一般にアドレスフィールド内でコメントを使用するべきではない(SHOULD NOT)。

When it is desirable to treat several mailboxes as a single unit (i.e., in a distribution list), the group construct can be used. The group construct allows the sender to indicate a named group of recipients. This is done by giving a display name for the group, followed by a colon, followed by a comma-separated list of any number of mailboxes (including zero and one), and ending with a semicolon. Because the list of mailboxes can be empty, using the group construct is also a simple way to communicate to recipients that the message was sent to one or more named sets of recipients, without actually providing the individual mailbox address for any of those recipients. 複数のメールボックスを単一ユニットとして(すなわち配布先リストとして)扱いたい場合、group 構造を使用することができる。group 構造を使うことで、送信者は複数の受信者を表す名前付きグループを指定できる。これはグループの表示名に続けてコロン、その後にカンマ区切りで複数(0 個や 1 個も含む)のメールボックス、最後にセミコロンという形で表される。メールボックスのリストは空であってもよい。そのため group 構造は、複数の受信者から成るひとつまたは複数の名前付きグループへとメッセージを送ることで、各受信者の個別のメールボックスを実際には指定せずに受信者たちとやりとりする簡単な方法でもある。

3.4.1. Addr-Spec Specification 3.4.1. addr-spec 仕様

An addr-spec is a specific Internet identifier that contains a locally interpreted string followed by the at-sign character ("@", ASCII value 64) followed by an Internet domain. The locally interpreted string is either a quoted-string or a dot-atom. If the string can be represented as a dot-atom (that is, it contains no characters other than atext characters or "." surrounded by atext characters), then the dot-atom form SHOULD be used and the quoted- string form SHOULD NOT be used. Comments and folding white space SHOULD NOT be used around the "@" in the addr-spec. addr-spec は具体的なインターネット識別子であり、ローカルで解釈される文字列の後にアットマーク("@" ASCII 値 64)、その後にインターネットドメイン名を持つ。ローカルで解釈される文字列は quoted-string または dot-atom のどちらかである。この文字列を dot-atom として表すことが可能な場合(つまり atext 文字の間に atext 文字か "." かだけを含む場合)には dot-atom 形式を使用するべき(SHOULD)であり、quoted-string 形式を使用するべきではない(SHOULD NOT)。"@" の前後にコメントや空白の折り返しを使用するべきではない(SHOULD)。

Note: A liberal syntax for the domain portion of addr-spec is given here. However, the domain portion contains addressing information specified by and used in other protocols (e.g., [RFC1034], [RFC1035], [RFC1123], [RFC5321]). It is therefore incumbent upon implementations to conform to the syntax of addresses for the context in which they are used. 注意:ここに示されているのは addr-spec のドメイン部の寛容な文法である。ドメイン部は他のプロトコル(例えば [RFC1034], [RFC1035], [RFC1123], [RFC5321])で規定/使用されるアドレッシング情報を含む。そのため、それらが使用される状況に応じたアドレスの文法に従うことは、実装の責任である。

   addr-spec       =   local-part "@" domain

   local-part      =   dot-atom / quoted-string / obs-local-part

   domain          =   dot-atom / domain-literal / obs-domain

   domain-literal  =   [CFWS] "[" *([FWS] dtext) [FWS] "]" [CFWS]

   dtext           =   %d33-90 /          ; Printable US-ASCII
                       %d94-126 /         ;  characters not including
                       obs-dtext          ;  "[", "]", or "\"
   addr-spec       =   local-part "@" domain

   local-part      =   dot-atom / quoted-string / obs-local-part

   domain          =   dot-atom / domain-literal / obs-domain

   domain-literal  =   [CFWS] "[" *([FWS] dtext) [FWS] "]" [CFWS]

   dtext           =   %d33-90 /          ; "[", "]", "\" を除く印刷可能な
                       %d94-126 /         ;   US-ASCII 文字
                       obs-dtext

The domain portion identifies the point to which the mail is delivered. In the dot-atom form, this is interpreted as an Internet domain name (either a host name or a mail exchanger name) as described in [RFC1034], [RFC1035], and [RFC1123]. In the domain- literal form, the domain is interpreted as the literal Internet address of the particular host. In both cases, how addressing is used and how messages are transported to a particular host is covered in separate documents, such as [RFC5321]. These mechanisms are outside of the scope of this document. domain はメールの配送先を表す。dot-atom 形式の場合、[RFC1034]、[RFC1035]、[RFC1123] で説明されているインターネットドメイン名(ホスト名またはメールエクスチェンジャ名)として解釈される。domain-literal 形式の場合、特定ホストのインターネットアドレスであると解釈される。どちらの場合でも、アドレス指定が使われる方法と特定のホストへとメッセージが転送される方法は、[RFC5321] などの別の文書にて網羅されている。それらのメカニズムはこの文書の範囲外である。

The local-part portion is a domain-dependent string. In addresses, it is simply interpreted on the particular host as a name of a particular mailbox. local-part はドメインに依存する文字列である。アドレスにおいては、特定のホスト上で特定のメールボックス名として解釈される。

3.5. Overall Message Syntax 3.5. メッセージ文法の概要

A message consists of header fields, optionally followed by a message body. Lines in a message MUST be a maximum of 998 characters excluding the CRLF, but it is RECOMMENDED that lines be limited to 78 characters excluding the CRLF. (See section 2.1.1 for explanation.) In a message body, though all of the characters listed in the text rule MAY be used, the use of US-ASCII control characters (values 1 through 8, 11, 12, and 14 through 31) is discouraged since their interpretation by receivers for display is not guaranteed. メッセージはヘッダフィールドと、オプションでそれに続くメッセージボディから構成される。メッセージ内の各行は CRLF を除いて 998 文字以下でなければならない(MUST)。また CRLF を除いて 78 文字以下にすることが推奨される(RECOMMENDED)(セクション 2.1.1 参照)。メッセージボディには text 規則に含まれる全ての文字を使用してよい(MAY)が、US-ASCII 制御文字(値 1~8、11、12、14~31)は受信者側で表示する際に正しく解釈される保証がないため、推奨されない。

   message         =   (fields / obs-fields)
                       [CRLF body]

   body            =   (*(*998text CRLF) *998text) / obs-body

   text            =   %d1-9 /            ; Characters excluding CR
                       %d11 /             ;  and LF
                       %d12 /
                       %d14-127
   message         =   (fields / obs-fields)
                       [CRLF body]

   body            =   (*(*998text CRLF) *998text) / obs-body

   text            =   %d1-9 /            ; CR および LF を除く文字
                       %d11 /
                       %d12 /
                       %d14-127

The header fields carry most of the semantic information and are defined in section 3.6. The body is simply a series of lines of text that are uninterpreted for the purposes of this specification. ヘッダフィールドは意味情報の大半を運ぶものであり、セクション 3.6 で定義されている。メッセージボディは単純なテキストの連続行であり、この仕様の目的の範囲において解釈されることはない。

3.6. Field Definitions 3.6. フィールド定義

The header fields of a message are defined here. All header fields have the same general syntactic structure: a field name, followed by a colon, followed by the field body. The specific syntax for each header field is defined in the subsequent sections. ここではメッセージのヘッダフィールドを定義する。すべてのヘッダフィールドは共通の文法構造(フィールド名・コロン・フィールド本文)を持つ。各ヘッダフィールド固有の文法は後続のセクションで定義される。

Note: In the ABNF syntax for each field in subsequent sections, each field name is followed by the required colon. However, for brevity, sometimes the colon is not referred to in the textual description of the syntax. It is, nonetheless, required. 注意:後続セクションの各フィールドの ABNF 文法において、各フィールド名の後には必須のコロンが続いている。各文法の説明文の中では簡潔さのためにこのコロンに言及していない場合があるが、このコロンは必須である。

It is important to note that the header fields are not guaranteed to be in a particular order. They may appear in any order, and they have been known to be reordered occasionally when transported over the Internet. However, for the purposes of this specification, header fields SHOULD NOT be reordered when a message is transported or transformed. More importantly, the trace header fields and resent header fields MUST NOT be reordered, and SHOULD be kept in blocks prepended to the message. See sections 3.6.6 and 3.6.7 for more information. ヘッダフィールドが特定の順序で並んでいることが保証されないことに注意するのは重要である。ヘッダフィールドは任意の順序で現れることが可能であり、インターネット上を転送されるとき、場合によっては並び替えられることもある。しかしながらこの仕様の目的のためには、メッセージが転送されたり変換されたりするときにヘッダフィールドが並び替えられるべきではない(SHOULD NOT)。さらに重要なこととして、trace ヘッダおよび resent ヘッダは並び替えられてはならず(MUST NOT)、メッセージの先頭にひとまとめにして追加されるべきである(SHOULD)。さらなる情報はセクション 3.6.6 および 3.6.7 を参照してほしい。

The only required header fields are the origination date field and the originator address field(s). All other header fields are syntactically optional. More information is contained in the table following this definition. 必須のヘッダフィールドは発信日付(origination date)フィールドと発信元アドレス(originator address)フィールドだけである。それ以外のすべてのヘッダフィールドは文法的にはオプションである。さらなる情報はこの定義の後の表に含まれている。

   fields          =   *(trace
                         *optional-field /
                         *(resent-date /
                          resent-from /
                          resent-sender /
                          resent-to /
                          resent-cc /
                          resent-bcc /
                          resent-msg-id))
                       *(orig-date /
                       from /
                       sender /
                       reply-to /
                       to /
                       cc /
                       bcc /
                       message-id /
                       in-reply-to /
                       references /
                       subject /
                       comments /
                       keywords /
                       optional-field)

The following table indicates limits on the number of times each field may occur in the header section of a message as well as any special limitations on the use of those fields. An asterisk ("*") next to a value in the minimum or maximum column indicates that a special restriction appears in the Notes column. 以下の表は、メッセージヘッダの中で各フィールドが現れる回数の制限と、各フィールドを使用するにあたっての特別な制限事項を示している。最高回数・最低回数の各値の直後のアスタリスク("*")は、注意欄に特別な制限事項が書かれていることを表している。

   +----------------+--------+------------+----------------------------+
   | Field          | Min    | Max number | Notes                      |
   |                | number |            |                            |
   +----------------+--------+------------+----------------------------+
   | trace          | 0      | unlimited  | Block prepended - see      |
   |                |        |            | 3.6.7                      |
   | resent-date    | 0*     | unlimited* | One per block, required if |
   |                |        |            | other resent fields are    |
   |                |        |            | present - see 3.6.6        |
   | resent-from    | 0      | unlimited* | One per block - see 3.6.6  |
   | resent-sender  | 0*     | unlimited* | One per block, MUST occur  |
   |                |        |            | with multi-address         |
   |                |        |            | resent-from - see 3.6.6    |
   | resent-to      | 0      | unlimited* | One per block - see 3.6.6  |
   | resent-cc      | 0      | unlimited* | One per block - see 3.6.6  |
   | resent-bcc     | 0      | unlimited* | One per block - see 3.6.6  |
   | resent-msg-id  | 0      | unlimited* | One per block - see 3.6.6  |
   | orig-date      | 1      | 1          |                            |
   | from           | 1      | 1          | See sender and 3.6.2       |
   | sender         | 0*     | 1          | MUST occur with            |
   |                |        |            | multi-address from - see   |
   |                |        |            | 3.6.2                      |
   | reply-to       | 0      | 1          |                            |
   | to             | 0      | 1          |                            |
   | cc             | 0      | 1          |                            |
   | bcc            | 0      | 1          |                            |
   | message-id     | 0*     | 1          | SHOULD be present - see    |
   |                |        |            | 3.6.4                      |
   | in-reply-to    | 0*     | 1          | SHOULD occur in some       |
   |                |        |            | replies - see 3.6.4        |
   | references     | 0*     | 1          | SHOULD occur in some       |
   |                |        |            | replies - see 3.6.4        |
   | subject        | 0      | 1          |                            |
   | comments       | 0      | unlimited  |                            |
   | keywords       | 0      | unlimited  |                            |
   | optional-field | 0      | unlimited  |                            |
   +----------------+--------+------------+----------------------------+
   +----------------+----------+----------+----------------------------------+
   | フィールド     | 最低回数 | 最高回数 | 注意                             |
   +----------------+----------+----------+----------------------------------+
   | trace          | 0        | 無制限   | ひとまとまりで先頭に追加される   |
   |                |          |          |  - セクション3.6.7参照           |
   | resent-date    | 0*       | 無制限*  | ブロックごとにひとつ。           |
   |                |          |          | 他の resent フィールドが現れる場 |
   |                |          |          | 合は必須 - 3.6.6 参照            |
   | resent-from    | 0        | 無制限*  | ブロックごとにひとつ- 3.6.6 参照 |
   | resent-sender  | 0*       | 無制限*  | ブロックごとにひとつ。           |
   |                |          |          | resent-from が複数アドレスの場合 |
   |                |          |          | は必須(MUST) - 3.6.6 参照        |
   | resent-to      | 0        | 無制限*  | ブロックごとにひとつ - 3.6.6 参照|
   | resent-cc      | 0        | 無制限*  | ブロックごとにひとつ - 3.6.6 参照|
   | resent-bcc     | 0        | 無制限*  | ブロックごとにひとつ - 3.6.6 参照|
   | resent-msg-id  | 0        | 無制限*  | ブロックごとにひとつ - 3.6.6 参照|
   | orig-date      | 1        | 1        |                                  |
   | from           | 1        | 1        | sender および 3.6.2 参照         |
   | sender         | 0*       | 1        | from が複数アドレスの場合は必須  |
   |                |          |          |  - 3.6.2 参照                    |
   | reply-to       | 0        | 1        |                                  |
   | to             | 0        | 1        |                                  |
   | cc             | 0        | 1        |                                  |
   | bcc            | 0        | 1        |                                  |
   | message-id     | 0*       | 1        | 現れるべき(SHOULD) - 3.6.4 参照  |
   | in-reply-to    | 0*       | 1        | ある種のリプライには現れるべき   |
   |                |          |          | (SHOULD) - 3.6.4 参照            |
   | references     | 0*       | 1        | ある種のリプライには現れるべき   |
   |                |          |          | (SHOULD) - 3.6.4 参照            |
   | subject        | 0        | 1        |                                  |
   | comments       | 0        | 無制限   |                                  |
   | keywords       | 0        | 無制限   |                                  |
   | optional-field | 0        | 無制限   |                                  |
   +----------------+----------+----------+----------------------------------+

The exact interpretation of each field is described in subsequent sections. 各フィールドの正確な解釈は後続のセクションで説明される。

3.6.1. The Origination Date Field 3.6.1. 発信日付フィールド

The origination date field consists of the field name "Date" followed by a date-time specification. 発信日付フィールドは "Date" とその後に続く date-time の指定とから構成される。

   orig-date       =   "Date:" date-time CRLF

The origination date specifies the date and time at which the creator of the message indicated that the message was complete and ready to enter the mail delivery system. For instance, this might be the time that a user pushes the "send" or "submit" button in an application program. In any case, it is specifically not intended to convey the time that the message is actually transported, but rather the time at which the human or other creator of the message has put the message into its final form, ready for transport. (For example, a portable computer user who is not connected to a network might queue a message for delivery. The origination date is intended to contain the date and time that the user queued the message, not the time when the user connected to the network to send the message.) 発信日付は、メッセージが完成し、メール配送システムへの投入準備ができたことをメッセージ作成者が示した日付と時刻とを表す。これは例えば、ユーザーがアプリケーションの "送信(send)" ボタンまたは "投稿(submit)" ボタンを押した時刻であってよい。いずれにしても、これはメッセージが実際に転送された時刻ではなく、メッセージを作成した人または人以外の作成者がメッセージを最終的に完成させて転送の準備ができた時刻を保持することを目的としたものである。(例えばネットワークに接続していない携帯型コンピュータの利用者は、メッセージを送信キューに入れるかもしれない。発信日時はメッセージを送信するためにユーザーがネットワークに接続した時刻ではなく、ユーザーがメッセージをキューに入れた日付・時刻であることを意図している。)

3.6.2. Originator Fields 3.6.2. 発信元フィールド

The originator fields of a message consist of the from field, the sender field (when applicable), and optionally the reply-to field. The from field consists of the field name "From" and a comma- separated list of one or more mailbox specifications. If the from field contains more than one mailbox specification in the mailbox- list, then the sender field, containing the field name "Sender" and a single mailbox specification, MUST appear in the message. In either case, an optional reply-to field MAY also be included, which contains the field name "Reply-To" and a comma-separated list of one or more addresses. メッセージの発信元フィールドは、from フィールド及び(適切な場合には) sender フィールド、そしてオプションの reply-to フィールドから成る。from フィールドは "From" とカンマ区切りのひとつ以上のメールボックスの指定とから構成される。form フィールドの mailbox-list に二つ以上のメールボックスが含まれている場合、そのメッセージには sender フィールド(フィールド名 "Sender" と単独のメールボックスとを含む)が現れなければならない(MUST)。どちらの場合でもオプションで reply-to フィールドを含むことができ(MAY)、それにはフィールド名 "Reply-To" とひとつ以上のアドレスのカンマ区切りのリストとが含まれる。

   from            =   "From:" mailbox-list CRLF

   sender          =   "Sender:" mailbox CRLF

   reply-to        =   "Reply-To:" address-list CRLF

The originator fields indicate the mailbox(es) of the source of the message. The "From:" field specifies the author(s) of the message, that is, the mailbox(es) of the person(s) or system(s) responsible for the writing of the message. The "Sender:" field specifies the mailbox of the agent responsible for the actual transmission of the message. For example, if a secretary were to send a message for another person, the mailbox of the secretary would appear in the "Sender:" field and the mailbox of the actual author would appear in the "From:" field. If the originator of the message can be indicated by a single mailbox and the author and transmitter are identical, the "Sender:" field SHOULD NOT be used. Otherwise, both fields SHOULD appear. 発信元フィールドはメッセージの送信元のメールボックスを表す。"From:" フィールドはメッセージの作者を表しており、そのメッセージの文章に対して責任を持つ人またはシステムの(ひとつ以上の)メールボックスである。"Sender:" フィールドはメッセージの実際の送信に責任を持つ代理人のメールボックスを表す。例えば、秘書が別の人のためにメッセージを送信する場合、"Sender:" にはその秘書のメールボックスが現れ、実際の作者は "From:" フィールドに現れることになる。メッセージの発信元が単独のメールボックスであり、かつ作者と送信者とが同一である場合、"Sender:" フィールドは使用されないべきである(SHOULD NOT)。そうでない場合、両方のフィールドが現れるべきである(SHOULD)。

Note: The transmitter information is always present. The absence of the "Sender:" field is sometimes mistakenly taken to mean that the agent responsible for transmission of the message has not been specified. This absence merely means that the transmitter is identical to the author and is therefore not redundantly placed into the "Sender:" field. 注意:送信者情報は常に現れる。"Sender:" フィールドがないことが、メッセージの送信に責任を持つ代理人が指定されなかったと誤って解釈される場合がある。これは送信者が作者と同一であるために、"Sender:" フィールドに重複させて置いていないことを表しているに過ぎない。

The originator fields also provide the information required when replying to a message. When the "Reply-To:" field is present, it indicates the address(es) to which the author of the message suggests that replies be sent. In the absence of the "Reply-To:" field, replies SHOULD by default be sent to the mailbox(es) specified in the "From:" field unless otherwise specified by the person composing the reply. 発信元フィールドはメッセージに返信する際に必要とされる情報も提供する。"Reply-To:" フィールドが現れる場合、そこに含まれるメールボックスはメッセージの作者が返信先として意図しているメールボックスである。"Reply-To:" フィールドが無い場合、返信者が特に指定しない限り、"From:" フィールドに指定されているメールボックスにデフォルトで返信が送信されるべきである(SHOULD)。

In all cases, the "From:" field SHOULD NOT contain any mailbox that does not belong to the author(s) of the message. See also section 3.6.3 for more information on forming the destination addresses for a reply. いかなる場合でも、メッセージの作者に属さないメールボックスを "From:" に含めるべきではない(SHOULD NOT)。返信先アドレスの選択に関するさらなる情報に付いてセクション 3.6.3 も参照してほしい。

3.6.3. Destination Address Fields 3.6.3. 宛先アドレスフィールド

The destination fields of a message consist of three possible fields, each of the same form: the field name, which is either "To", "Cc", or "Bcc", followed by a comma-separated list of one or more addresses (either mailbox or group syntax). メッセージの宛先フィールドは三つのフィールドから構成される。三つのフィールドは同じ形式であり、フィールド名("To"・"Cc"・"Bcc")の後にひとつ以上のアドレス(mailbox または group)のカンマ区切りのリストが続く。

   to              =   "To:" address-list CRLF

   cc              =   "Cc:" address-list CRLF

   bcc             =   "Bcc:" [address-list / CFWS] CRLF

The destination fields specify the recipients of the message. Each destination field may have one or more addresses, and the addresses indicate the intended recipients of the message. The only difference between the three fields is how each is used. 宛先フィールドはメッセージの受信者を表す。各宛先フィールドはひとつ以上のアドレスを含み、各アドレスは目的のメッセージ受信者を表す。三つのフィールドの違いはその使われ方だけである。

The "To:" field contains the address(es) of the primary recipient(s) of the message. "To:" フィールドはメッセージの主要な受信者を表す。

The "Cc:" field (where the "Cc" means "Carbon Copy" in the sense of making a copy on a typewriter using carbon paper) contains the addresses of others who are to receive the message, though the content of the message may not be directed at them. "Cc:" フィールドは、メッセージの内容はその人たちに向けられたものではないかもしれないが、それを受け取るべき人のアドレスを含む("Cc" とは、タイプライターでカーボン紙を使ってコピーを取る意味の "Carbon Copy(カーボンコピー)" に由来する)。

The "Bcc:" field (where the "Bcc" means "Blind Carbon Copy") contains addresses of recipients of the message whose addresses are not to be revealed to other recipients of the message. There are three ways in which the "Bcc:" field is used. In the first case, when a message containing a "Bcc:" field is prepared to be sent, the "Bcc:" line is removed even though all of the recipients (including those specified in the "Bcc:" field) are sent a copy of the message. In the second case, recipients specified in the "To:" and "Cc:" lines each are sent a copy of the message with the "Bcc:" line removed as above, but the recipients on the "Bcc:" line get a separate copy of the message containing a "Bcc:" line. (When there are multiple recipient addresses in the "Bcc:" field, some implementations actually send a separate copy of the message to each recipient with a "Bcc:" containing only the address of that particular recipient.) Finally, since a "Bcc:" field may contain no addresses, a "Bcc:" field can be sent without any addresses indicating to the recipients that blind copies were sent to someone. Which method to use with "Bcc:" fields is implementation dependent, but refer to the "Security Considerations" section of this document for a discussion of each. "Bcc:" フィールド("Bcc" は "Blind Carbon Copy" の意味)もメッセージの受信者を表すが、そのアドレスは他の受信者に公開されない。"Bcc:" フィールドの実現方法は三つある。ひとつ目の方法は、"Bcc:" フィールドを含むメッセージの送信準備ができたときに "Bcc:" 行を削除することで、すべての受信者("Bcc:" で指定された受信者を含む)に同じメッセージのコピーを送信する。二つ目の方法は、"To:" と "Cc:" とに指定された受信者には "Bcc:" 行を削除したメッセージのコピーを送信し、"Bcc:" に指定された受信者には "Bcc:" 行を含む別のコピーを送信する("Bcc:" に複数のアドレスが指定されていた場合、実装によっては各アドレスごとに "Bcc:" にそのアドレスだけを含むメッセージのコピーを送信する)。最後の方法は、"Bcc:" フィールドはアドレスを含まなくてもよいので、ブラインドコピーが誰に送られたのかを受信者に示さないように、アドレスを含まない "Bcc:" フィールドを送信する。"Bcc:" フィールドにどの方法を使用するかは実装に依存するが、それぞれの方法に関する議論について、この文書の "セキュリティ考察" セクションを参照してほしい。

When a message is a reply to another message, the mailboxes of the authors of the original message (the mailboxes in the "From:" field) or mailboxes specified in the "Reply-To:" field (if it exists) MAY appear in the "To:" field of the reply since these would normally be the primary recipients of the reply. If a reply is sent to a message that has destination fields, it is often desirable to send a copy of the reply to all of the recipients of the message, in addition to the author. When such a reply is formed, addresses in the "To:" and "Cc:" fields of the original message MAY appear in the "Cc:" field of the reply, since these are normally secondary recipients of the reply. If a "Bcc:" field is present in the original message, addresses in that field MAY appear in the "Bcc:" field of the reply, but they SHOULD NOT appear in the "To:" or "Cc:" fields. メッセージに返信するとき、元のメッセージの作者("From:" フィールドのメールボックス)または(もしあれば) "Reply-To:" フィールドで指定されたメールボックスが、その返信の "To:" フィールドに現れてもよい(MAY)。通常それらのアドレスは返信の主要な受信者である。複数の宛先フィールドを持つメッセージに返信する場合、元の作者に加えて、メッセージのすべての受信者に返信することが望ましい。そのような返信を作成する場合、元のメッセージの "To:" および "Cc:" のアドレスは、その返信にとって通常あまり重要ではない受信者であるため、返信の "Cc:" フィールドに現れてもよい(MAY)。元のメッセージに "Bcc:" フィールドがあった場合、返信の "Bcc:" フィールドにはそのアドレスが現れてもよい(MAY)が、"To:" や "Cc:" に現れるべきではない(SHOULD NOT)。

Note: Some mail applications have automatic reply commands that include the destination addresses of the original message in the destination addresses of the reply. How those reply commands behave is implementation dependent and is beyond the scope of this document. In particular, whether or not to include the original destination addresses when the original message had a "Reply-To:" field is not addressed here. 注意:一部のメールアプリケーションは、返信の宛先アドレスに元のメールの宛先アドレスを含める自動返信コマンドを持っている。このような返信コマンドの動作は実装に依存するものであり、この文書の範囲外である。特に、元のメッセージが "Reply-To:" フィールドを持っていた場合にも元の宛先アドレスを含めるかどうかは、ここでは規定されない。

3.6.4. Identification Fields 3.6.4. 識別フィールド

Though listed as optional in the table in section 3.6, every message SHOULD have a "Message-ID:" field. Furthermore, reply messages SHOULD have "In-Reply-To:" and "References:" fields as appropriate and as described below. セクション 3.6 の表ではオプションとされているが、すべてのメッセージは "Messge-ID:" フィールドを持つべきである(SHOULD)。また返信メッセージは、後述の "In-Reply-To:" と "References:" とを必要に応じて持つべきである(SHOULD)。

The "Message-ID:" field contains a single unique message identifier. The "References:" and "In-Reply-To:" fields each contain one or more unique message identifiers, optionally separated by CFWS. "Message-ID:" フィールドは単一のユニークなメッセージ識別子を含む。"References:" フィールドと "In-Reply-To:" フィールドはそれぞれ、オプションで CFWS によって区切られたひとつまたは複数のユニークなメッセージ識別子を含む。

The message identifier (msg-id) syntax is a limited version of the addr-spec construct enclosed in the angle bracket characters, "<" and ">". Unlike addr-spec, this syntax only permits the dot-atom-text form on the left-hand side of the "@" and does not have internal CFWS anywhere in the message identifier. メッセージ識別子(msg-id)の文法は、アングルブラケット("<" と ">")に括られた addr-spec の限定バージョンである。addr-spec とは異なり、その文法は "@" の左側に dot-atom-text のみ許可し、メッセージ識別子内部のどこにも CFWS を持たない。

Note: As with addr-spec, a liberal syntax is given for the right- hand side of the "@" in a msg-id. However, later in this section, the use of a domain for the right-hand side of the "@" is RECOMMENDED. Again, the syntax of domain constructs is specified by and used in other protocols (e.g., [RFC1034], [RFC1035], [RFC1123], [RFC5321]). It is therefore incumbent upon implementations to conform to the syntax of addresses for the context in which they are used. 注意:addr-spec と同様に、msg-id 内の "@" の右側には寛容な文法が与えられている。しかしながらこのセクションの後半において、"@" の右側には domain を使用することが推奨されている(RECOMMENDED)。繰り返しになるが、domain の文法は他のプロトコル(例えば [RFC1034], [RFC1035], [RFC1123], [RFC5321])で規定/使用される。そのため、それらが使用される状況に応じたアドレス文法に従うことは実装の責任である。

   message-id      =   "Message-ID:" msg-id CRLF

   in-reply-to     =   "In-Reply-To:" 1*msg-id CRLF

   references      =   "References:" 1*msg-id CRLF

   msg-id          =   [CFWS] "<" id-left "@" id-right ">" [CFWS]

   id-left         =   dot-atom-text / obs-id-left

   id-right        =   dot-atom-text / no-fold-literal / obs-id-right

   no-fold-literal =   "[" *dtext "]"

The "Message-ID:" field provides a unique message identifier that refers to a particular version of a particular message. The uniqueness of the message identifier is guaranteed by the host that generates it (see below). This message identifier is intended to be machine readable and not necessarily meaningful to humans. A message identifier pertains to exactly one version of a particular message; subsequent revisions to the message each receive new message identifiers. "Message-ID:" フィールドはユニークなメッセージ識別子を提供する。メッセージ識別子は特定のメッセージの特定のバージョンを参照する。メッセージ識別子の一意性はそれを生成したホストによって保証される(下記参照)。メッセージ識別子は機械的に読み取られることを目的としたものであり、人間にとって意味を持つものである必要はない。メッセージ識別子は特定のメッセージのただひとつのバージョンに付随するものであり、その後に修正されたメッセージはそれぞれ新しいメッセージ識別子を持つ。

Note: There are many instances when messages are "changed", but those changes do not constitute a new instantiation of that message, and therefore the message would not get a new message identifier. For example, when messages are introduced into the transport system, they are often prepended with additional header fields such as trace fields (described in section 3.6.7) and resent fields (described in section 3.6.6). The addition of such header fields does not change the identity of the message and therefore the original "Message-ID:" field is retained. In all cases, it is the meaning that the sender of the message wishes to convey (i.e., whether this is the same message or a different message) that determines whether or not the "Message-ID:" field changes, not any particular syntactic difference that appears (or does not appear) in the message. 注意:メッセージが "変更される(changed)" 場合というのは数多くあるが、そのような変更はメッセージの新しいインスタンスを生成せず、したがって新しいメッセージ識別子を取ることもない。例えばメッセージが配送システムに投入されたとき、メッセージの先頭に trace フィールド(セクション 3.6.7 で説明されている)や resent フィールド(セクション 3.6.6)などのヘッダフィールドが追加される。そのようなヘッダフィールドの追加はメッセージの同一性を変更しないため、元の "Message-ID:" が残される。いずれにしても、"Message-ID:" フィールドが変更されるかどうか(つまりそれが同じメッセージなのか異なるメッセージなのか)を決定するのは、メッセージ内に現れる(または現れない)特定の文法的な差異ではなく、メッセージ送信者が伝えたい意味である。

The "In-Reply-To:" and "References:" fields are used when creating a reply to a message. They hold the message identifier of the original message and the message identifiers of other messages (for example, in the case of a reply to a message that was itself a reply). The "In-Reply-To:" field may be used to identify the message (or messages) to which the new message is a reply, while the "References:" field may be used to identify a "thread" of conversation. "In-Reply-To:" フィールドおよび "References:" フィールドはメッセージへの返信を作成する際に使用される。これらのフィールドは元のメッセージのメッセージ識別子と、(例えばメッセージへの返信への返信の場合は)他のメッセージのメッセージ識別子とを保持する。"In-Reply-To:" フィールドは返信において元のメッセージを特定するために使用され、"References:" フィールドは会話の "スレッド(thread)" を特定するために使用される。

When creating a reply to a message, the "In-Reply-To:" and "References:" fields of the resultant message are constructed as follows: メッセージへの返信を作成するとき、その返信メッセージの "In-Reply-To:" 及び "References:" は以下のようにして作られる:

The "In-Reply-To:" field will contain the contents of the "Message-ID:" field of the message to which this one is a reply (the "parent message"). If there is more than one parent message, then the "In-Reply-To:" field will contain the contents of all of the parents' "Message-ID:" fields. If there is no "Message-ID:" field in any of the parent messages, then the new message will have no "In- Reply-To:" field. "In-Reply-To:" フィールドは、返信しようとしているメッセージ("親メッセージ(parent message)")の "Message-ID:" フィールドの内容を含むことになる。親メッセージが二つ以上ある場合、"In-Reply-To:" フィールドはすべての親メッセージの "Message-ID:" フィールドの内容を含むことになる。どの親メッセージにも "Message-ID:" フィールドが含まれていなかった場合、その返信は "In-Reply-To:" フィールドを持たないことになる。

The "References:" field will contain the contents of the parent's "References:" field (if any) followed by the contents of the parent's "Message-ID:" field (if any). If the parent message does not contain a "References:" field but does have an "In-Reply-To:" field containing a single message identifier, then the "References:" field will contain the contents of the parent's "In-Reply-To:" field followed by the contents of the parent's "Message-ID:" field (if any). If the parent has none of the "References:", "In-Reply-To:", or "Message-ID:" fields, then the new message will have no "References:" field. "References:" フィールドの内容は、(もしあれば)親メッセージの "References:" フィールドの後に(もしあれば)親メッセージの "Message-ID:" フィールドの内容を続けたものである。親メッセージに "References:" フィールドは無いが、単一のメッセージ識別子を含む "In-Reply-To:" フィールドがある場合、"References:" フィールドには親メッセージの "In-Reply-To:" フィールド の内容と、その後に(もしあれば)親メッセージの "Message-ID:" フィールドの内容とを含むことになる。親メッセージが "References:" も "In-Reply-To:" も "Message-ID:" も持たない場合、その返信メッセージは "References:" フィールドを持たないことになる。

Note: Some implementations parse the "References:" field to display the "thread of the discussion". These implementations assume that each new message is a reply to a single parent and hence that they can walk backwards through the "References:" field to find the parent of each message listed there. Therefore, trying to form a "References:" field for a reply that has multiple parents is discouraged; how to do so is not defined in this document. 注意:一部の実装は "議論のスレッド(thread of the discussion)" を表示するために "References:" フィールドを解析する。そのような実装は、各メッセージが唯ひとつの親メッセージを持ち、したがって各メッセージの親を探すために "References:" フィールドを使って遡ることができると仮定している。そのため、複数の親メッセージを持つ "References:" フィールドを作成することは推奨されず、その方法はこの文書において規定されていない。

The message identifier (msg-id) itself MUST be a globally unique identifier for a message. The generator of the message identifier MUST guarantee that the msg-id is unique. There are several algorithms that can be used to accomplish this. Since the msg-id has a similar syntax to addr-spec (identical except that quoted strings, comments, and folding white space are not allowed), a good method is to put the domain name (or a domain literal IP address) of the host on which the message identifier was created on the right-hand side of the "@" (since domain names and IP addresses are normally unique), and put a combination of the current absolute date and time along with some other currently unique (perhaps sequential) identifier available on the system (for example, a process id number) on the left-hand side. Though other algorithms will work, it is RECOMMENDED that the right-hand side contain some domain identifier (either of the host itself or otherwise) such that the generator of the message identifier can guarantee the uniqueness of the left-hand side within the scope of that domain. メッセージ識別子(msg-id)はグローバルにユニークでなければならない(MUST)。メッセージ識別子の生成者は msg-id の一意性を保証しなければならない(MUST)。そのためのアルゴリズムはいくつかある。msg-id は addr-spec に似た文法である(引用文字列とコメントと折り返された空白とが許されないことを除いて同一である)ので、メッセージ識別子を作成するホストのドメイン名(または IP アドレスのリテラル表現)を "@" の右側に置き(ドメイン名と IP アドレスは通常一意であるため)、左側に現在の日付時刻とそのシステムで利用可能なユニークな(おそらくシーケンシャルな)識別子(例えばプロセス ID)とを置くのがよい方法である。二つのホストが同時に同じドメイン名または IP アドレスを使用することはないため、左側に日付と時刻、右側にドメイン名またはドメインリテラルを使用することで一意性を保証できる。これ以外のアルゴリズムでも正常に動作するだろうが、メッセージ識別子の生成者は左側の値がそのドメイン内でユニークであることを保証できるように、右側には何らかのドメイン識別子を含めることが推奨される(RECOMMENDED)。

Semantically, the angle bracket characters are not part of the msg-id; the msg-id is what is contained between the two angle bracket characters. 意味的にはアングルブラケットは msg-id の一部ではない。msg-id はアングルブラケットの間に含まれている内容である。

3.6.5. Informational Fields 3.6.5. 情報フィールド

The informational fields are all optional. The "Subject:" and "Comments:" fields are unstructured fields as defined in section 2.2.1, and therefore may contain text or folding white space. The "Keywords:" field contains a comma-separated list of one or more words or quoted-strings. 情報フィールドはすべてオプションである。"Subject:" フィールドと "Comments:" フィールドはセクション 2.2.1 で定義されている非構造化フィールドであり、テキストまたは折り返された空白文字を含むことができる。"Keywords:" フィールドはひとつ以上の単語または quoted-string のカンマ区切りリストを含む。

   subject         =   "Subject:" unstructured CRLF

   comments        =   "Comments:" unstructured CRLF

   keywords        =   "Keywords:" phrase *("," phrase) CRLF

These three fields are intended to have only human-readable content with information about the message. The "Subject:" field is the most common and contains a short string identifying the topic of the message. When used in a reply, the field body MAY start with the string "Re: " (an abbreviation of the Latin "in re", meaning "in the matter of") followed by the contents of the "Subject:" field body of the original message. If this is done, only one instance of the literal string "Re: " ought to be used since use of other strings or more than one instance can lead to undesirable consequences. The "Comments:" field contains any additional comments on the text of the body of the message. The "Keywords:" field contains a comma- separated list of important words and phrases that might be useful for the recipient. これら三つのフィールドは、メッセージに関して人が読むことのできる情報を持つことだけを目的としている。"Subject:" はもっとも一般的なフィールドで、メッセージの見出しを表す短い文字列を含む。返信におけるこのフィールドの内容は、"Re: " (ラテン語の "res" に由来)の後に元のメッセージの "Subject:" フィールドの内容を続けてよい(MAY)。これを行うとき、他の文字列や二つ以上の "Re: " が使用されるのは望ましくないため、文字列 "Re: " をひとつだけ使うべきである。"Comments:" フィールドはメッセージボディに関する任意の追加コメントを含む。"Keywords:" フィールドは、受信者にとって役に立つかもしれない重要な単語や語句のカンマ区切りリストを含む。

3.6.6. Resent Fields 3.6.6. 再送フィールド

Resent fields SHOULD be added to any message that is reintroduced by a user into the transport system. A separate set of resent fields SHOULD be added each time this is done. All of the resent fields corresponding to a particular resending of the message SHOULD be grouped together. Each new set of resent fields is prepended to the message; that is, the most recent set of resent fields appears earlier in the message. No other fields in the message are changed when resent fields are added. 再送フィールドはユーザーが配送システムに再投入したすべてのメッセージに含まれるべきである(SHOULD)。再投入のたびに個別の再送フィールドの集合が追加されるべきである(SHOULD)。メッセージの特定の再送に関連するすべての再送フィールドはひとまとめにして置かれるべきである(SHOULD)。再送フィールドの新しい集合はメッセージの先頭に追加される。したがって、もっとも新しい再送フィールドがメッセージの前方に現れる。再送フィールドが追加されるとき、そのメッセージの他のフィールドは変更されない。

Each of the resent fields corresponds to a particular field elsewhere in the syntax. For instance, the "Resent-Date:" field corresponds to the "Date:" field and the "Resent-To:" field corresponds to the "To:" field. In each case, the syntax for the field body is identical to the syntax given previously for the corresponding field. 各再送フィールドの文法は、この文書内の特定のフィールドの文法に対応する。例えば "Resent-Date:" フィールドは "Data:" フィールドに対応し、"Resent-To:" フィールドは "To:" フィールドに対応する。いずれの場合もフィールド本体の文法は対応するフィールドの文法と同じである。

When resent fields are used, the "Resent-From:" and "Resent-Date:" fields MUST be sent. The "Resent-Message-ID:" field SHOULD be sent. "Resent-Sender:" SHOULD NOT be used if "Resent-Sender:" would be identical to "Resent-From:". 再送フィールドが使用されるとき、"Resent-From:" フィールドと "Resent-Date:" フィールドとは必ず送信されなければならない(MUST)。"Resent-Message-ID:" フィールドは送信されるべきである(SHOULD)。"Resent-Sender:" が "Resent-From:" と同じ場合、"Resent-Sender:" は使用されないべきである(SHOULD NOT)。

   resent-date     =   "Resent-Date:" date-time CRLF

   resent-from     =   "Resent-From:" mailbox-list CRLF

   resent-sender   =   "Resent-Sender:" mailbox CRLF

   resent-to       =   "Resent-To:" address-list CRLF

   resent-cc       =   "Resent-Cc:" address-list CRLF

   resent-bcc      =   "Resent-Bcc:" [address-list / CFWS] CRLF

   resent-msg-id   =   "Resent-Message-ID:" msg-id CRLF

Resent fields are used to identify a message as having been reintroduced into the transport system by a user. The purpose of using resent fields is to have the message appear to the final recipient as if it were sent directly by the original sender, with all of the original fields remaining the same. Each set of resent fields correspond to a particular resending event. That is, if a message is resent multiple times, each set of resent fields gives identifying information for each individual time. Resent fields are strictly informational. They MUST NOT be used in the normal processing of replies or other such automatic actions on messages. 再送フィールドは、そのメッセージがユーザーによって配送システムに再投入されたことを識別するために使用される。再送フィールドを使用する目的は、最終受信者に対してそのメッセージが元の送信者から(元のフィールドはすべて同じままで)直接送られたかのように見せることである。再送フィールドの各集合は、それぞれが個別の再送イベントに対応する。つまり、あるメッセージが複数回再送された場合には、それぞれに対応する再送フィールドの集合が各再送の情報を表すことになる。再送フィールドは完全に情報提供のためのフィールドである。通常の返信処理やメッセージに対する自動アクションにおいて使用してはならない(MUST NOT)。

Note: Reintroducing a message into the transport system and using resent fields is a different operation from "forwarding". "Forwarding" has two meanings: One sense of forwarding is that a mail reading program can be told by a user to forward a copy of a message to another person, making the forwarded message the body of the new message. A forwarded message in this sense does not appear to have come from the original sender, but is an entirely new message from the forwarder of the message. Forwarding may also mean that a mail transport program gets a message and forwards it on to a different destination for final delivery. Resent header fields are not intended for use with either type of forwarding. 注意:メッセージを配送システムに再投入して再送フィールドを使用することは、"転送(forwarding)" とは異なる操作である。"転送(forwarding)" には二つの意味がある。ひとつは、転送されるメッセージを新しいメッセージのボディにすることで、メール受信プログラムがユーザーの指示によって別の人にそのコピーを転送する場合である。この方法で転送されたメッセージは元の送信者から送られたようには見えず、転送者から送られた新しいメッセージに見える。転送のもうひとつの意味は、メール配送プログラムがメッセージを受け取り、最終配送のためにそれを別の宛先に転送する場合である。どちらの転送の場合にも、再送ヘッダフィールドが使われることはない。

The resent originator fields indicate the mailbox of the person(s) or system(s) that resent the message. As with the regular originator fields, there are two forms: a simple "Resent-From:" form, which contains the mailbox of the individual doing the resending, and the more complex form, when one individual (identified in the "Resent- Sender:" field) resends a message on behalf of one or more others (identified in the "Resent-From:" field). 再送信の発信元フィールドは、そのメッセージを再送した人またはシステムのメールボックスを表す。通常の発信元フィールドと同様に二種類の形式がある。ひとつは再送した個人のメールボックスを含む単純な "Resent-From:" の形式、もうひとつはそれより複雑な形式で、一人または複数の人("Resent-From:" フィールドで特定される)に代わってメッセージを再送した個人("Resent-Sender:" フィールドで特定される)を表す形式である。

Note: When replying to a resent message, replies behave just as they would with any other message, using the original "From:", "Reply-To:", "Message-ID:", and other fields. The resent fields are only informational and MUST NOT be used in the normal processing of replies. 注意:再送メッセージに返信するとき、他のメッセージの場合と同じように、元の "From:"・"Reply-To:"・"Message-ID:"・その他のフィールドが使用される。再送フィールドは単に情報を提供するものであり、通常の返信処理において使用されてはならない(MUST NOT)。

The "Resent-Date:" indicates the date and time at which the resent message is dispatched by the resender of the message. Like the "Date:" field, it is not the date and time that the message was actually transported. "Resent-Date:" はメッセージの再送信者がその再送メッセージを発信した日付と時刻を表す。"Date:" フィールドと同じように、これはメッセージが実際に配送された日付と時刻ではない。

The "Resent-To:", "Resent-Cc:", and "Resent-Bcc:" fields function identically to the "To:", "Cc:", and "Bcc:" fields, respectively, except that they indicate the recipients of the resent message, not the recipients of the original message. "Resent-To:"・"Resent-Cc:"・"Resent-Bcc:" の各フィールドは、それぞれ "To:"・"Cc:"・"Bcc:" の各フィールドと同じ働きをする。ただしこれらは元のメッセージの受信者ではなく、再送メッセージの受信者を表す。

The "Resent-Message-ID:" field provides a unique identifier for the resent message. "Resent-Message-ID:" フィールドは再送メッセージのためのユニークな識別子を提供する。

3.6.7. Trace Fields 3.6.7. トレースフィールド

The trace fields are a group of header fields consisting of an optional "Return-Path:" field, and one or more "Received:" fields. The "Return-Path:" header field contains a pair of angle brackets that enclose an optional addr-spec. The "Received:" field contains a (possibly empty) list of tokens followed by a semicolon and a date- time specification. Each token must be a word, angle-addr, addr- spec, or a domain. Further restrictions are applied to the syntax of the trace fields by specifications that provide for their use, such as [RFC5321]. トレースフィールドは、オプションの "Return-Path:" フィールドと、ひとつまたは複数の "Received:" フィールドとから構成されるヘッダフィールドの組である。"Return-Path:" はオプションの addr-spec を括るアングルブラケットの組を含む。"Received:" フィールドはトークンのリスト(空の場合もある)の後にセミコロンと date-time の指定とが続く。各トークンは、word・angle-addr・addr-spec・domain の何れかでなければならない。トレースフィールドの利用法を提供する仕様(例えば [RFC5321] など)によって、この文法にさらなる制限が課される。

   trace           =   [return]
                       1*received

   return          =   "Return-Path:" path CRLF

   path            =   angle-addr / ([CFWS] "<" [CFWS] ">" [CFWS])

   received        =   "Received:" *received-token ";" date-time CRLF

   received-token  =   word / angle-addr / addr-spec / domain

A full discussion of the Internet mail use of trace fields is contained in [RFC5321]. For the purposes of this specification, the trace fields are strictly informational, and any formal interpretation of them is outside of the scope of this document. インターネットメールにおけるトレースフィールドの使用に関する議論の全容は [RFC5321] に含まれている。この仕様においてトレースフィールドの内容は情報提供のためだけのものであり、正式な解釈についてはこの文書の範囲外である。

3.6.8. Optional Fields 3.6.8. オプションフィールド

Fields may appear in messages that are otherwise unspecified in this document. They MUST conform to the syntax of an optional-field. This is a field name, made up of the printable US-ASCII characters except SP and colon, followed by a colon, followed by any text that conforms to the unstructured syntax. メッセージ内にこの文書で規定されていないフィールドが現れてもよい。そのようなフィールドは optional-field の文法に従わなければならない(MUST)。optional-field は、SP とコロンとを除く印刷可能な US-ASCII 文字から成るフィールド名の後にコロン、次に unstructured 文法に従う任意のテキストが続く。

The field names of any optional field MUST NOT be identical to any field name specified elsewhere in this document. optional-field のフィールド名は、この文書で規定されている他のフィールド名と同じであってはならない(MUST NOT)。

   optional-field  =   field-name ":" unstructured CRLF

   field-name      =   1*ftext

   ftext           =   %d33-57 /          ; Printable US-ASCII
                       %d59-126           ;  characters not including
                                          ;  ":".
   optional-field  =   field-name ":" unstructured CRLF

   field-name      =   1*ftext

   ftext           =   %d33-57 /          ; ":" を除く印刷可能 US-ASCII 文字
                       %d59-126

For the purposes of this specification, any optional field is uninterpreted. この仕様の目的において、すべてのオプションフィールドはその内容を解釈されない。

4. Obsolete Syntax 4. 廃止された文法

Earlier versions of this specification allowed for different (usually more liberal) syntax than is allowed in this version. Also, there have been syntactic elements used in messages on the Internet whose interpretations have never been documented. Though these syntactic forms MUST NOT be generated according to the grammar in section 3, they MUST be accepted and parsed by a conformant receiver. This section documents many of these syntactic elements. Taking the grammar in section 3 and adding the definitions presented in this section will result in the grammar to use for the interpretation of messages. この仕様の過去のバージョンでは、このバージョンで許されているものとは異なる(たいてい寛容な)文法が許されていた。また、インターネット上のメッセージで使用されてはいるが、その解釈が文書化されていない文法要素も存在する。セクション 3 の文法に従うのであればそような文法要素を生成してはならない(MUST NOT)が、この仕様に適合する受信者はこれらを受け入れ、解析しなければならない(MUST)。このセクションは、そのような文法要素の多くを文書化する。セクション 3 の文法を採用し、さらにこのセクションの定義を追加したものが、メッセージの解釈に使用すべき文法ということになる。

Note: This section identifies syntactic forms that any implementation MUST reasonably interpret. However, there are certainly Internet messages that do not conform to even the additional syntax given in this section. The fact that a particular form does not appear in any section of this document is not justification for computer programs to crash or for malformed data to be irretrievably lost by any implementation. It is up to the implementation to deal with messages robustly. 注意:このセクションはすべての実装が合理的に解釈しなければならない(MUST)文法体系を示している。しかしながら、このセクションの追加文法にさえ従わないインターネットメッセージもやはり存在する。ある形式がこの文書のどのセクションにも現れないという事実は、コンピュータプログラムがクラッシュしたり、不正な形式のデータによって実装が回復不可能なほどの損失を受けることを正当化する理由にはならない。メッセージを堅牢に扱うことは実装の責任である。

One important difference between the obsolete (interpreting) and the current (generating) syntax is that in structured header field bodies (i.e., between the colon and the CRLF of any structured header field), white space characters, including folding white space, and comments could be freely inserted between any syntactic tokens. This allowed many complex forms that have proven difficult for some implementations to parse. 廃止された(解釈される)文法と現在の(生成される)文法との重要な違いのひとつは、構造化フィールド本文において(つまり、構造化ヘッダフィールドのコロンと CRLF との間において)、任意の文法要素の間に空白文字(空白の折り返しを含む)やコメントを自由に挿入できたことである。これにより一部の実装にとって解析が困難であることが判明している複雑な形式の多くが許されていた。

Another key difference between the obsolete and the current syntax is that the rule in section 3.2.2 regarding lines composed entirely of white space in comments and folding white space does not apply. See the discussion of folding white space in section 4.2 below. 廃止された文法と現在の文法との間のもうひとつの重要な違いは、コメントと空白文字の折り返しとにおける空白文字だけから成る行に関するセクション 3.2.2 の規則が適用されないことである。空白文字の折り返しに関する後述のセクション 4.2 の議論を参照してほしい。

Finally, certain characters that were formerly allowed in messages appear in this section. The NUL character (ASCII value 0) was once allowed, but is no longer for compatibility reasons. Similarly, US- ASCII control characters other than CR, LF, SP, and HTAB (ASCII values 1 through 8, 11, 12, 14 through 31, and 127) were allowed to appear in header field bodies. CR and LF were allowed to appear in messages other than as CRLF; this use is also shown here. 最後に、以前はメッセージ中に許可されていた特定の文字がこのセクションに示されている。かつては NUL 文字(ASCII 値 0)が許可されていたが、互換性のために現在は許可されていない。同様に、CR・LF・SP・HTAB 以外の US-ASCII 制御文字(ASCII 値 1 ~ 8、11、12、14 ~ 31、127)がヘッダフィールド本文に現れることが許されていた。CRLF 以外の形で CR と LF とが現れることも許されていた。この使用法についてもここで示す。

Other differences in syntax and semantics are noted in the following sections. 文法と動作とにおけるその他の違いは以降のセクションに示されている。

4.1. Miscellaneous Obsolete Tokens 4.1. 種々の廃止されたトークン

These syntactic elements are used elsewhere in the obsolete syntax or in the main syntax. Bare CR, bare LF, and NUL are added to obs-qp, obs-body, and obs-unstruct. US-ASCII control characters are added to obs-qp, obs-unstruct, obs-ctext, and obs-qtext. The period character is added to obs-phrase. The obs-phrase-list provides for a (potentially empty) comma-separated list of phrases that may include "null" elements. That is, there could be two or more commas in such a list with nothing in between them, or commas at the beginning or end of the list. これらの文法要素は、廃止された文法または主要な文法以外の場所で使用されている。obs-qp と obs-body と obs-unstruct に、単独の CR、単独の LF、NUL が追加された。obs-phrase にピリオドが追加された。obs-phrase-list は、"空(null)" 要素を含むことのできる phrase の(潜在的に空の)カンマ区切りリストを提供する。つまりそのようなリストには、間に何もない 2 つ以上のカンマや、リストの先頭または最後のカンマが許される。

Note: The "period" (or "full stop") character (".") in obs-phrase is not a form that was allowed in earlier versions of this or any other specification. Period (nor any other character from specials) was not allowed in phrase because it introduced a parsing difficulty distinguishing between phrases and portions of an addr-spec (see section 4.4). It appears here because the period character is currently used in many messages in the display-name portion of addresses, especially for initials in names, and therefore must be interpreted properly. 注意:obs-phrase における "ピリオド(period)"(または"終止符(full stop)")文字(".")は、この仕様および他の仕様の過去のバージョンで許可されていた形式ではない。phrase と addr-spec の一部と(セクション 4.4 参照)を区別するための解析が困難になるため、phrase 内のピリオド(および他の specials の文字)は許可されない。これは、現在多くのメッセージにおいてアドレスの diaplay-name 部分(特に名前のイニシャルの部分)にピリオドが使用されており、適切に解釈されなければならないため、ここに含まれている。

   obs-NO-WS-CTL   =   %d1-8 /            ; US-ASCII control
                       %d11 /             ;  characters that do not
                       %d12 /             ;  include the carriage
                       %d14-31 /          ;  return, line feed, and
                       %d127              ;  white space characters

   obs-ctext       =   obs-NO-WS-CTL

   obs-qtext       =   obs-NO-WS-CTL

   obs-utext       =   %d0 / obs-NO-WS-CTL / VCHAR

   obs-qp          =   "\" (%d0 / obs-NO-WS-CTL / LF / CR)

   obs-body        =   *((*LF *CR *((%d0 / text) *LF *CR)) / CRLF)

   obs-unstruct    =   *((*LF *CR *(obs-utext *LF *CR)) / FWS)

   obs-phrase      =   word *(word / "." / CFWS)

   obs-phrase-list =   [phrase / CFWS] *("," [phrase / CFWS])
   obs-NO-WS-CTL   =   %d1-8 /            ; 復帰、改行、空白を除く
                       %d11 /             ;  US-ASCII 制御文字
                       %d12 /
                       %d14-31 /
                       %d127

   obs-ctext       =   obs-NO-WS-CTL

   obs-qtext       =   obs-NO-WS-CTL

   obs-utext       =   %d0 / obs-NO-WS-CTL / VCHAR

   obs-qp          =   "\" (%d0 / obs-NO-WS-CTL / LF / CR)

   obs-body        =   *((*LF *CR *((%d0 / text) *LF *CR)) / CRLF)

   obs-unstruct    =   *((*LF *CR *(obs-utext *LF *CR)) / FWS)

   obs-phrase      =   word *(word / "." / CFWS)

   obs-phrase-list =   [phrase / CFWS] *("," [phrase / CFWS])

Bare CR and bare LF appear in messages with two different meanings. In many cases, bare CR or bare LF are used improperly instead of CRLF to indicate line separators. In other cases, bare CR and bare LF are used simply as US-ASCII control characters with their traditional ASCII meanings. 単独の CR および単独の LF は二つの異なる意味で現れる。多くの場合、行の区切りを表す CRLF の代わりとして誤って使用されている。それ以外の場合、伝統的な ASCII の意味を持つ ASCII 制御文字として単純に使用されている。

4.2. Obsolete Folding White Space 4.2. 廃止された FWS

In the obsolete syntax, any amount of folding white space MAY be inserted where the obs-FWS rule is allowed. This creates the possibility of having two consecutive "folds" in a line, and therefore the possibility that a line which makes up a folded header field could be composed entirely of white space. 廃止された文法において obs-FWS が許可される場所には、空白文字の折り返しをどれだけ挿入してもよい(MAY)。これにより 1 行の中に 2 つ以上の連続する "折り返し(fold)" を持つ可能性が生まれ、したがって折り返されたヘッダフィールドを構成するある行がすべて空白から構成される可能性がある。

   obs-FWS         =   1*WSP *(CRLF 1*WSP)

4.3. Obsolete Date and Time 4.3. 廃止された日付と時刻

The syntax for the obsolete date format allows a 2 digit year in the date field and allows for a list of alphabetic time zone specifiers that were used in earlier versions of this specification. It also permits comments and folding white space between many of the tokens. 廃止された日付の文法では日付フィールドに 2 桁の年が許可されている。またこの仕様の以前のバージョンで使用されていたアルファベットのタイムゾーン指定子のリストも許可されている。また大部分のトークンの間にコメントと空白の折り返しが許される。

   obs-day-of-week =   [CFWS] day-name [CFWS]

   obs-day         =   [CFWS] 1*2DIGIT [CFWS]

   obs-year        =   [CFWS] 2*DIGIT [CFWS]

   obs-hour        =   [CFWS] 2DIGIT [CFWS]

   obs-minute      =   [CFWS] 2DIGIT [CFWS]

   obs-second      =   [CFWS] 2DIGIT [CFWS]

   obs-zone        =   "UT" / "GMT" /     ; Universal Time
                                          ; North American UT
                                          ; offsets
                       "EST" / "EDT" /    ; Eastern:  - 5/ - 4
                       "CST" / "CDT" /    ; Central:  - 6/ - 5
                       "MST" / "MDT" /    ; Mountain: - 7/ - 6
                       "PST" / "PDT" /    ; Pacific:  - 8/ - 7
                                          ;
                       %d65-73 /          ; Military zones - "A"
                       %d75-90 /          ; through "I" and "K"
                       %d97-105 /         ; through "Z", both
                       %d107-122          ; upper and lower case
   obs-day-of-week =   [CFWS] day-name [CFWS]

   obs-day         =   [CFWS] 1*2DIGIT [CFWS]

   obs-year        =   [CFWS] 2*DIGIT [CFWS]

   obs-hour        =   [CFWS] 2DIGIT [CFWS]

   obs-minute      =   [CFWS] 2DIGIT [CFWS]

   obs-second      =   [CFWS] 2DIGIT [CFWS]

   obs-zone        =   "UT" / "GMT" /     ; 万国標準時
                                          ; 北アメリカ標準時
                                          ; オフセット
                       "EST" / "EDT" /    ; 東部標準時:  - 5/ - 4
                       "CST" / "CDT" /    ; 中央標準時:  - 6/ - 5
                       "MST" / "MDT" /    ; 山岳標準時: - 7/ - 6
                       "PST" / "PDT" /    ; 太平洋標準時:  - 8/ - 7
                                          ;
                       %d65-73 /          ; 軍用ゾーン - "A" ~ "I"
                       %d75-90 /          ; "K" ~ "Z"
                       %d97-105 /         ; 大文字および小文字
                       %d107-122

Where a two or three digit year occurs in a date, the year is to be interpreted as follows: If a two digit year is encountered whose value is between 00 and 49, the year is interpreted by adding 2000, ending up with a value between 2000 and 2049. If a two digit year is encountered with a value between 50 and 99, or any three digit year is encountered, the year is interpreted by adding 1900. 日付に 2 桁または 3 桁の年が現れた場合、その年は次のように解釈される。00 ~ 49 の値を持つ 2 桁の年は 2000 を加算され、結果として 2000 ~ 2049 として解釈される。50 ~ 99 の値を持つ 2 桁の年とすべての 3 桁の年は、1900 を加算された年として解釈される。

In the obsolete time zone, "UT" and "GMT" are indications of "Universal Time" and "Greenwich Mean Time", respectively, and are both semantically identical to "+0000". 廃止されたタイムゾーンの "UT" および "GMT" はそれぞれ "万国標準時(Universal Time)" および "グリニッジ標準時(Greenwich Mean Time)" を表し、意味的にはともに "+0000" に等しい。

The remaining three character zones are the US time zones. The first letter, "E", "C", "M", or "P" stands for "Eastern", "Central", "Mountain", and "Pacific". The second letter is either "S" for "Standard" time, or "D" for "Daylight Savings" (or summer) time. Their interpretations are as follows: 残りの 3 文字のゾーンはアメリカ合衆国(US)のタイムゾーンである。先頭の文字 "E"・"C"・"M"・"P" はそれぞれ "東部(Eastern)"・"中央(Central)"・"山岳(Mountain)"・"太平洋(Pacific)" を意味する。2 文字目は "標準(Standard)" 時間を表す "S"、または "日光節約(Daylight Savings)"(または 夏(summer))時間を表す "D" のどちらかである。それぞれの解釈は以下の通り:

      EDT is semantically equivalent to -0400
      EST is semantically equivalent to -0500
      CDT is semantically equivalent to -0500
      CST is semantically equivalent to -0600
      MDT is semantically equivalent to -0600
      MST is semantically equivalent to -0700
      PDT is semantically equivalent to -0700
      PST is semantically equivalent to -0800
  EDT は -0400 に等しい
  EST は -0500 に等しい
  CDT は -0500 に等しい
  CST は -0600 に等しい
  MDT は -0600 に等しい
  MST は -0700 に等しい
  PDT は -0700 に等しい
  PST は -0800 に等しい

The 1 character military time zones were defined in a non-standard way in [RFC0822] and are therefore unpredictable in their meaning. The original definitions of the military zones "A" through "I" are equivalent to "+0100" through "+0900", respectively; "K", "L", and "M" are equivalent to "+1000", "+1100", and "+1200", respectively; "N" through "Y" are equivalent to "-0100" through "-1200". respectively; and "Z" is equivalent to "+0000". However, because of the error in [RFC0822], they SHOULD all be considered equivalent to "-0000" unless there is out-of-band information confirming their meaning. 1 文字の軍用タイムゾーンは [RFC0822] において非標準の方法で定義されたため、その意味は予測できない。軍用タイムゾーンの元々の定義では、"A" ~ "I" はそれぞれ "+0100" ~ "+0900"、"K"・"L"・"M" はそれぞれ "+1000"・"+1100"・"+1200"、"N" ~ "Y" はそれぞれ "-0100" ~ "-1200"、"Z" は "+0000" に等しい。しかしながら [RFC0822] の誤りのため、これらの意味を確認する他の情報がない限り、これらはすべて "-0000" に等しいとみなすべきである(SHOULD)。

Other multi-character (usually between 3 and 5) alphabetic time zones have been used in Internet messages. Any such time zone whose meaning is not known SHOULD be considered equivalent to "-0000" unless there is out-of-band information confirming their meaning. インターネットメッセージにおいて、アルファベット複数文字(普通は 3 ~ 5 文字)から成るその他のタイムゾーンが使用されてきた。意味を知られていないそのようなタイムゾーンは、その意味を確認する他の情報がない限り、"-0000" に等しいとみなすべきである(SHOULD)。

4.4. Obsolete Addressing 4.4. 廃止されたアドレス指定

There are four primary differences in addressing. First, mailbox addresses were allowed to have a route portion before the addr-spec when enclosed in "<" and ">". The route is simply a comma-separated list of domain names, each preceded by "@", and the list terminated by a colon. Second, CFWS were allowed between the period-separated elements of local-part and domain (i.e., dot-atom was not used). In addition, local-part is allowed to contain quoted-string in addition to just atom. Third, mailbox-list and address-list were allowed to have "null" members. That is, there could be two or more commas in such a list with nothing in between them, or commas at the beginning or end of the list. Finally, US-ASCII control characters and quoted- pairs were allowed in domain literals and are added here. アドレス指定には 4 つの主要な違いがある。第一に、メールボックスが "<" と ">" とに囲まれているとき、addr-spec の前に経路指定を持つことが許されていた。この経路はドメイン名の単純なカンマ区切りリストであり、それぞれのドメイン名は先頭に "@" を置き、コロンでリストが終わる。第二に、local-part と domain とのピリオド区切りの要素間に CFWS が許されていた(つまり dot-atom は使用されていなかった)。第三に、mailbox-list と address-list とに "空(null)" のメンバーを持つことが許されていた。つまりこれらのリストに、間に何もない 2 つ以上のカンマを置いたり、先頭や最後にカンマを置くことが可能であった。最後に、かつては domain リテラル内に US-ASCII 制御文字と quoted-pairs とが許されており、ここで追加されている。

   obs-angle-addr  =   [CFWS] "<" obs-route addr-spec ">" [CFWS]

   obs-route       =   obs-domain-list ":"

   obs-domain-list =   *(CFWS / ",") "@" domain
                       *("," [CFWS] ["@" domain])

   obs-mbox-list   =   *([CFWS] ",") mailbox *("," [mailbox / CFWS])

   obs-addr-list   =   *([CFWS] ",") address *("," [address / CFWS])

   obs-group-list  =   1*([CFWS] ",") [CFWS]

   obs-local-part  =   word *("." word)

   obs-domain      =   atom *("." atom)

   obs-dtext       =   obs-NO-WS-CTL / quoted-pair

When interpreting addresses, the route portion SHOULD be ignored. アドレスを解釈するとき、経路指定部分は無視するべきである(SHOULD)。

4.5. Obsolete Header Fields 4.5. 廃止されたヘッダフィールド

Syntactically, the primary difference in the obsolete field syntax is that it allows multiple occurrences of any of the fields and they may occur in any order. Also, any amount of white space is allowed before the ":" at the end of the field name. 廃止されたフィールドの文法における主な違いは、すべてのフィールドが複数回任意の順序で現れることが許されている点である。また、フィールド名の終わりの ":" の前に任意の空白文字が許可されている。

   obs-fields      =   *(obs-return /
                       obs-received /
                       obs-orig-date /
                       obs-from /
                       obs-sender /
                       obs-reply-to /
                       obs-to /
                       obs-cc /
                       obs-bcc /
                       obs-message-id /
                       obs-in-reply-to /
                       obs-references /
                       obs-subject /
                       obs-comments /
                       obs-keywords /
                       obs-resent-date /
                       obs-resent-from /
                       obs-resent-send /
                       obs-resent-rply /
                       obs-resent-to /
                       obs-resent-cc /
                       obs-resent-bcc /
                       obs-resent-mid /
                       obs-optional)

Except for destination address fields (described in section 4.5.3), the interpretation of multiple occurrences of fields is unspecified. Also, the interpretation of trace fields and resent fields that do not occur in blocks prepended to the message is unspecified as well. Unless otherwise noted in the following sections, interpretation of other fields is identical to the interpretation of their non-obsolete counterparts in section 3. 宛先アドレスフィールド(セクション 4.5.3 で説明されている)を除き、フィールドが複数回現れた場合の解釈は未定義である。また、トレースフィールドと再送フィールドとがメッセージの先頭にひとまとまりで追加されていない場合も、同様に未定義である。以下のセクションで特に注記がない限り、その他のフィールドの解釈はセクション 3 の対応する obsolete ではないフィールドの解釈と同様である。

4.5.1. Obsolete Origination Date Field 4.5.1. 廃止された送信日付フィールド

   obs-orig-date   =   "Date" *WSP ":" date-time CRLF

4.5.2. Obsolete Originator Fields 4.5.2. 廃止された発信元フィールド

   obs-from        =   "From" *WSP ":" mailbox-list CRLF

   obs-sender      =   "Sender" *WSP ":" mailbox CRLF

   obs-reply-to    =   "Reply-To" *WSP ":" address-list CRLF

4.5.3. Obsolete Destination Address Fields 4.5.3. 廃止された宛先フィールド

   obs-to          =   "To" *WSP ":" address-list CRLF

   obs-cc          =   "Cc" *WSP ":" address-list CRLF

   obs-bcc         =   "Bcc" *WSP ":"
                       (address-list / (*([CFWS] ",") [CFWS])) CRLF

When multiple occurrences of destination address fields occur in a message, they SHOULD be treated as if the address list in the first occurrence of the field is combined with the address lists of the subsequent occurrences by adding a comma and concatenating. メッセージ内に複数の宛先アドレスフィールドが現れた場合、それらは二番目以降のフィールドのアドレスリストがカンマと共に先頭のフィールドに連結された adress-list として扱われるべきである(SHOULD)。

4.5.4. Obsolete Identification Fields 4.5.4. 廃止された識別フィールド

The obsolete "In-Reply-To:" and "References:" fields differ from the current syntax in that they allow phrase (words or quoted strings) to appear. The obsolete forms of the left and right sides of msg-id allow interspersed CFWS, making them syntactically identical to local-part and domain, respectively. 廃止された "In-Reply-To:" フィールドおよび "References:" フィールドは、その中に phrase(word または quoted string) が現れても良いという点で現在の文法と異なる。廃止された形式の msg-id の左右には CFWS を置くことが許されており、それぞれ文法的に local-part と domain とに一致する。

   obs-message-id  =   "Message-ID" *WSP ":" msg-id CRLF

   obs-in-reply-to =   "In-Reply-To" *WSP ":" *(phrase / msg-id) CRLF

   obs-references  =   "References" *WSP ":" *(phrase / msg-id) CRLF

   obs-id-left     =   local-part

   obs-id-right    =   domain

For purposes of interpretation, the phrases in the "In-Reply-To:" and "References:" fields are ignored. 解釈という意味では、"In-Reply-To:" フィールドと "References:" フィールドとの中の phrase は無視される。

Semantically, none of the optional CFWS in the local-part and the domain is part of the obs-id-left and obs-id-right, respectively. loca-part および domain 内のオプションの CFWS は、意味的にはそれぞれ obs-id-left および obs-id-right の一部ではない。

4.5.5. Obsolete Informational Fields 4.5.5. 廃止された情報フィールド

   obs-subject     =   "Subject" *WSP ":" unstructured CRLF

   obs-comments    =   "Comments" *WSP ":" unstructured CRLF

   obs-keywords    =   "Keywords" *WSP ":" obs-phrase-list CRLF

4.5.6. Obsolete Resent Fields 4.5.6. 廃止された再送フィールド

The obsolete syntax adds a "Resent-Reply-To:" field, which consists of the field name, the optional comments and folding white space, the colon, and a comma separated list of addresses. 廃止された文法には "Resent-Reply-To:" フィールドが追加されている。これはフィールド名、オプションのコメントと空白の折り返し、コロン、カンマ区切りのアドレスリストから構成される。

   obs-resent-from =   "Resent-From" *WSP ":" mailbox-list CRLF

   obs-resent-send =   "Resent-Sender" *WSP ":" mailbox CRLF

   obs-resent-date =   "Resent-Date" *WSP ":" date-time CRLF

   obs-resent-to   =   "Resent-To" *WSP ":" address-list CRLF

   obs-resent-cc   =   "Resent-Cc" *WSP ":" address-list CRLF

   obs-resent-bcc  =   "Resent-Bcc" *WSP ":"
                       (address-list / (*([CFWS] ",") [CFWS])) CRLF

   obs-resent-mid  =   "Resent-Message-ID" *WSP ":" msg-id CRLF

   obs-resent-rply =   "Resent-Reply-To" *WSP ":" address-list CRLF

As with other resent fields, the "Resent-Reply-To:" field is to be treated as trace information only. 他の再送フィールドと同様、"Resent-Reply-To:" フィールドは単なるトレース情報として扱われるべきである。

4.5.7. Obsolete Trace Fields 4.5.7. 廃止されたトレースフィールド

The obs-return and obs-received are again given here as template definitions, just as return and received are in section 3. Their full syntax is given in [RFC5321]. セクション 3 の return および received と同じように、ここでテンプレート定義として obs-return および obs-received を再度示す。これらの完全な文法は [RFC5321] において示されている。

   obs-return      =   "Return-Path" *WSP ":" path CRLF

   obs-received    =   "Received" *WSP ":" *received-token CRLF

4.5.8. Obsolete optional fields 4.5.8. 廃止されたオプションフィールド

   obs-optional    =   field-name *WSP ":" unstructured CRLF

5. Security Considerations 5. セキュリティ考察

Care needs to be taken when displaying messages on a terminal or terminal emulator. Powerful terminals may act on escape sequences and other combinations of US-ASCII control characters with a variety of consequences. They can remap the keyboard or permit other modifications to the terminal that could lead to denial of service or even damaged data. They can trigger (sometimes programmable) answerback messages that can allow a message to cause commands to be issued on the recipient's behalf. They can also affect the operation of terminal attached devices such as printers. Message viewers may wish to strip potentially dangerous terminal escape sequences from the message prior to display. However, other escape sequences appear in messages for useful purposes (cf. [ISO.2022.1994], [RFC2045], [RFC2046], [RFC2047], [RFC2049], [RFC4288], [RFC4289]) and therefore should not be stripped indiscriminately. ターミナルまたはターミナルエミュレータにメッセージを表示する際には注意が必要である。高性能のターミナルは、エスケープシーケンスや他の ASCII 制御文字の組み合わせによって様々な結果を引き起こす可能性がある。例えばキーボードのキーマップを変更したり、サービス妨害あるいはデータ破壊さえも引き起こすような変更をターミナルに及ぼすかもしれない。これは、受信者に代わってコマンドを発行する(ときにプログラム可能な)アンサーバックメッセージを誘発する可能性がある。またこれは、ターミナルに接続しているプリンタなどの装置の動作に影響を与える可能性もある。メッセージの閲覧者は、メッセージを表示する前に潜在的に危険なエスケープシーケンスを取り除くことを望むかもしれない。しかしながら、メッセージ中のこれら以外のエスケープシーケンスは有用である([ISO.2022.1994], [RFC2045], [RFC2046], [RFC2047], [RFC2049], [RFC4288], [RFC4289] 参照)ため、無差別に取り除かれるべきではない。

Transmission of non-text objects in messages raises additional security issues. These issues are discussed in [RFC2045], [RFC2046], [RFC2047], [RFC2049], [RFC4288], and [RFC4289]. メッセージ中に非テキストのオブジェクトを含めて転送すると、さらなるセキュリティ問題を引き起こす。これらの問題については [RFC2045], [RFC2046], [RFC2047], [RFC2049], [RFC4288], [RFC4289] で議論されている。

Many implementations use the "Bcc:" (blind carbon copy) field, described in section 3.6.3, to facilitate sending messages to recipients without revealing the addresses of one or more of the addressees to the other recipients. Mishandling this use of "Bcc:" may disclose confidential information that could eventually lead to security problems through knowledge of even the existence of a particular mail address. For example, if using the first method described in section 3.6.3, where the "Bcc:" line is removed from the message, blind recipients have no explicit indication that they have been sent a blind copy, except insofar as their address does not appear in the header section of a message. Because of this, one of the blind addressees could potentially send a reply to all of the shown recipients and accidentally reveal that the message went to the blind recipient. When the second method from section 3.6.3 is used, the blind recipient's address appears in the "Bcc:" field of a separate copy of the message. If the "Bcc:" field sent contains all of the blind addressees, all of the "Bcc:" recipients will be seen by each "Bcc:" recipient. Even if a separate message is sent to each "Bcc:" recipient with only the individual's address, implementations still need to be careful to process replies to the message as per section 3.6.3 so as not to accidentally reveal the blind recipient to other recipients. ひとつまたは複数のアドレスをそれ以外の受信者に知らせることなくメッセージを送信する手助けをするために、多くの実装はセクション 3.6.3 で説明されている "Bcc:" (ブラインドカーボンコピー)フィールドを使用する。"Bcc:" の扱いを間違えると機密情報を公開してしまう可能性がある。特定のメールアドレスが実在するという事実を知られることでさえ、結果的にセキュリティ問題を引き起こす可能性がある。例えばセクション 3.6.3 で説明されている第一の方法を採用する場合、"Bcc:" はメッセージから取り除かれる。このとき "Bcc:" の受信者は、自身のアドレスがメッセージのヘッダ部に含まれていないこと確認しない限り、自分にはブラインドカーボンコピーを使って送信されたのだということを明確に知ることができない。そのため、"Bcc:" の受信者の一人がヘッダに明示されているすべての受信者に返信してしまうことで、そのメッセージがその受信者に送られたことを無意識のうちに暴露してしまう可能性がある。セクション 3.6.3 の第二の方法を採用する場合、メッセージの各コピーの "Bcc:" フィールドにブラインドカーボンコピーの受信者が現れる。もし "Bcc:" フィールドにすべてのブラインドカーボンコピーのアドレスが含まれていると、すべての "Bcc:" 受信者が "Bcc:" の受信者全員を見ることになる。"Bcc:" の各受信者に対して個別のアドレスだけを持つメッセージを送信する場合でも、見えない受信者を無意識のうちに他の受信者に暴露してしまわないよう、実装はそのメッセージへの返信処理に注意する必要がある。

6. IANA Considerations 6. IANA 考察

This document updates the registrations that appeared in [RFC4021] that referred to the definitions in [RFC2822]. IANA has updated the Permanent Message Header Field Repository with the following header fields, in accordance with the procedures set out in [RFC3864]. この文書は [RFC2822] 内の定義を参照していた [RFC4021] の登録を更新する。IANA は [RFC3864] で用意されている手続きにしたがって、以下のヘッダフィールドの Permanent Message Header Field Repository を更新した。

   Header field name:  Date
   Applicable protocol:  Mail
   Status:  standard
   Author/Change controller:  IETF
   Specification document(s):  This document (section 3.6.1)
   ヘッダフィールド名: Date
   適用可能プロトコル:  Mail
   状態:  標準
   著者/変更管理者:  IETF
   仕様文書:  本文書 (セクション 3.6.1)
   Header field name:  From
   Applicable protocol:  Mail
   Status:  standard
   Author/Change controller:  IETF
   Specification document(s):  This document (section 3.6.2)
   ヘッダフィールド名: From
   適用可能プロトコル:  Mail
   状態:  標準
   著者/変更管理者:  IETF
   仕様文書:  本文書 (セクション 3.6.2)
   Header field name:  Sender
   Applicable protocol:  Mail
   Status:  standard
   Author/Change controller:  IETF
   Specification document(s):  This document (section 3.6.2)
   ヘッダフィールド名: Sender
   適用可能プロトコル:  Mail
   状態:  標準
   著者/変更管理者:  IETF
   仕様文書:  本文書 (セクション 3.6.2)
   Header field name:  Reply-To
   Applicable protocol:  Mail
   Status:  standard
   Author/Change controller:  IETF
   Specification document(s):  This document (section 3.6.2)
   ヘッダフィールド名: Reply-To
   適用可能プロトコル:  Mail
   状態:  標準
   著者/変更管理者:  IETF
   仕様文書:  本文書 (セクション 3.6.2)
   Header field name:  To
   Applicable protocol:  Mail
   Status:  standard
   Author/Change controller:  IETF
   Specification document(s):  This document (section 3.6.3)
   ヘッダフィールド名: To
   適用可能プロトコル:  Mail
   状態:  標準
   著者/変更管理者:  IETF
   仕様文書:  本文書 (セクション 3.6.3)
   Header field name:  Cc
   Applicable protocol:  Mail
   Status:  standard
   Author/Change controller:  IETF
   Specification document(s):  This document (section 3.6.3)
   ヘッダフィールド名: Cc
   適用可能プロトコル:  Mail
   状態:  標準
   著者/変更管理者:  IETF
   仕様文書:  本文書 (セクション 3.6.3)
   Header field name:  Bcc
   Applicable protocol:  Mail
   Status:  standard
   Author/Change controller:  IETF
   Specification document(s):  This document (section 3.6.3)
   ヘッダフィールド名: Bcc
   適用可能プロトコル:  Mail
   状態:  標準
   著者/変更管理者:  IETF
   仕様文書:  本文書 (セクション 3.6.3)
   Header field name:  Message-ID
   Applicable protocol:  Mail
   Status:  standard
   Author/Change controller:  IETF
   Specification document(s):  This document (section 3.6.4)
   ヘッダフィールド名: Message-ID
   適用可能プロトコル:  Mail
   状態:  標準
   著者/変更管理者:  IETF
   仕様文書:  本文書 (セクション 3.6.4)
   Header field name:  In-Reply-To
   Applicable protocol:  Mail
   Status:  standard
   Author/Change controller:  IETF
   Specification document(s):  This document (section 3.6.4)
   ヘッダフィールド名: In-Reply-To
   適用可能プロトコル:  Mail
   状態:  標準
   著者/変更管理者:  IETF
   仕様文書:  本文書 (セクション 3.6.4)
   Header field name:  References
   Applicable protocol:  Mail
   Status:  standard
   Author/Change controller:  IETF
   Specification document(s):  This document (section 3.6.4)
   ヘッダフィールド名: References
   適用可能プロトコル:  Mail
   状態:  標準
   著者/変更管理者:  IETF
   仕様文書:  本文書 (セクション 3.6.4)
   Header field name:  Subject
   Applicable protocol:  Mail
   Status:  standard
   Author/Change controller:  IETF
   Specification document(s):  This document (section 3.6.5)
   ヘッダフィールド名: Subject
   適用可能プロトコル:  Mail
   状態:  標準
   著者/変更管理者:  IETF
   仕様文書:  本文書 (セクション 3.6.5)
   Header field name:  Comments
   Applicable protocol:  Mail
   Status:  standard
   Author/Change controller:  IETF
   Specification document(s):  This document (section 3.6.5)
   ヘッダフィールド名: Comments
   適用可能プロトコル:  Mail
   状態:  標準
   著者/変更管理者:  IETF
   仕様文書:  本文書 (セクション 3.6.5)
   Header field name:  Keywords
   Applicable protocol:  Mail
   Status:  standard
   Author/Change controller:  IETF
   Specification document(s):  This document (section 3.6.5)
   ヘッダフィールド名: Keywords
   適用可能プロトコル:  Mail
   状態:  標準
   著者/変更管理者:  IETF
   仕様文書:  本文書 (セクション 3.6.5)
   Header field name:  Resent-Date
   Applicable protocol:  Mail
   Status:  standard
   Author/Change controller:  IETF
   Specification document(s):  This document (section 3.6.6)
   ヘッダフィールド名: Resent-Date
   適用可能プロトコル:  Mail
   状態:  標準
   著者/変更管理者:  IETF
   仕様文書:  本文書 (セクション 3.6.6)
   Header field name:  Resent-From
   Applicable protocol:  Mail
   Status:  standard
   Author/Change controller:  IETF
   Specification document(s):  This document (section 3.6.6)
   ヘッダフィールド名: Resent-From
   適用可能プロトコル:  Mail
   状態:  標準
   著者/変更管理者:  IETF
   仕様文書:  本文書 (セクション 3.6.6)
   Header field name:  Resent-Sender
   Applicable protocol:  Mail
   Status:  standard
   Author/Change controller:  IETF
   Specification document(s):  This document (section 3.6.6)
   ヘッダフィールド名: Resent-Sender
   適用可能プロトコル:  Mail
   状態:  標準
   著者/変更管理者:  IETF
   仕様文書:  本文書 (セクション 3.6.6)
   Header field name:  Resent-To
   Applicable protocol:  Mail
   Status:  standard
   Author/Change controller:  IETF
   Specification document(s):  This document (section 3.6.6)
   ヘッダフィールド名: Resent-To
   適用可能プロトコル:  Mail
   状態:  標準
   著者/変更管理者:  IETF
   仕様文書:  本文書 (セクション 3.6.6)
   Header field name:  Resent-Cc
   Applicable protocol:  Mail
   Status:  standard
   Author/Change controller:  IETF
   Specification document(s):  This document (section 3.6.6)
   ヘッダフィールド名: Resent-Cc
   適用可能プロトコル:  Mail
   状態:  標準
   著者/変更管理者:  IETF
   仕様文書:  本文書 (セクション 3.6.6)
   Header field name:  Resent-Bcc
   Applicable protocol:  Mail
   Status:  standard
   Author/Change controller:  IETF
   Specification document(s):  This document (section 3.6.6)
   ヘッダフィールド名: Resent-Bcc
   適用可能プロトコル:  Mail
   状態:  標準
   著者/変更管理者:  IETF
   仕様文書:  本文書 (セクション 3.6.6)
   Header field name:  Resent-Reply-To
   Applicable protocol:  Mail
   Status:  obsolete
   Author/Change controller:  IETF
   Specification document(s):  This document (section 4.5.6)
   ヘッダフィールド名: Resent-Reply-To
   適用可能プロトコル:  Mail
   状態:  標準
   著者/変更管理者:  IETF
   仕様文書:  本文書 (セクション 4.5.6)
   Header field name:  Resent-Message-ID
   Applicable protocol:  Mail
   Status:  standard
   Author/Change controller:  IETF
   Specification document(s):  This document (section 3.6.6)
   ヘッダフィールド名: Resent-Message-ID
   適用可能プロトコル:  Mail
   状態:  標準
   著者/変更管理者:  IETF
   仕様文書:  本文書 (セクション 3.6.6)
   Header field name:  Return-Path
   Applicable protocol:  Mail
   Status:  standard
   Author/Change controller:  IETF
   Specification document(s):  This document (section 3.6.7)
   ヘッダフィールド名: Return-Path
   適用可能プロトコル:  Mail
   状態:  標準
   著者/変更管理者:  IETF
   仕様文書:  本文書 (セクション 3.6.7)
   Header field name:  Received
   Applicable protocol:  Mail
   Status:  standard
   Author/Change controller:  IETF
   Specification document(s):  This document (section 3.6.7)
   Related information:  [RFC5321]
   ヘッダフィールド名: Received
   適用可能プロトコル:  Mail
   状態:  標準
   著者/変更管理者:  IETF
   仕様文書:  本文書 (セクション 3.6.7)
   関連情報:  [RFC5321]

Appendix A. Example Messages 付録 A. メッセージの例

This section presents a selection of messages. These are intended to assist in the implementation of this specification, but should not be taken as normative; that is to say, although the examples in this section were carefully reviewed, if there happens to be a conflict between these examples and the syntax described in sections 3 and 4 of this document, the syntax in those sections is to be taken as correct. このセクションではいくつかのメッセージを提示する。これらはこの仕様の実装を手助けすることを目的としたものであり、模範として受け取るべきでものではない。つまり、このセクションの例は注意深く検討されているとはいえ、もしこれらの例とセクション 3・4 で説明されている文法との間に矛盾する部分があった場合には、セクション 3・4 の文法を正しいものと受け取るべきである。

In the text version of this document, messages in this section are delimited between lines of "----". The "----" lines are not part of the message itself. この文書のテキスト版において、このセクションでは二つの "----" の間の範囲をメッセージとする。"----" の行そのものはメッセージの一部ではない。

Appendix A.1. Addressing Examples 付録 A.1. アドレス指定の例

The following are examples of messages that might be sent between two individuals. 以下の例は、二人の個人の間で送信されたであろうメッセージである。

Appendix A.1.1. A Message from One Person to Another with Simple Addressing 付録 A.1.1. 個人から個人への単純なアドレス指定によるメッセージ

This could be called a canonical message. It has a single author, John Doe, a single recipient, Mary Smith, a subject, the date, a message identifier, and a textual message in the body. これは標準的なメッセージと言えるだろう。単独の作者 John Doe と単独の受信者 Mary Smith、サブジェクト、日付、メッセージ識別子、そしてボディにはテキストのメッセージを持つ。

   ----
   From: John Doe <jdoe@machine.example>
   To: Mary Smith <mary@example.net>
   Subject: Saying Hello
   Date: Fri, 21 Nov 1997 09:55:06 -0600
   Message-ID: <1234@local.machine.example>

   This is a message just to say hello.
   So, "Hello".
   ----

If John's secretary Michael actually sent the message, even though John was the author and replies to this message should go back to him, the sender field would be used: メッセージを実際に送信したのが John の秘書 Michael だった場合、このメッセージへの返信は作者である John に返されるべきだが、sender フィールドが使われることになる:

   ----
   From: John Doe <jdoe@machine.example>
   Sender: Michael Jones <mjones@machine.example>
   To: Mary Smith <mary@example.net>
   Subject: Saying Hello
   Date: Fri, 21 Nov 1997 09:55:06 -0600
   Message-ID: <1234@local.machine.example>

   This is a message just to say hello.
   So, "Hello".
   ----

Appendix A.1.2. Different Types of Mailboxes 付録 A.1.2. 様々な種類のメールボックス

This message includes multiple addresses in the destination fields and also uses several different forms of addresses. このメッセージは宛先フィールドに複数のアドレスを含んでおり、またそれぞれのアドレスの形式も異なる。

   ----
   From: "Joe Q. Public" <john.q.public@example.com>
   To: Mary Smith <mary@x.test>, jdoe@example.org, Who? <one@y.test>
   Cc: <boss@nil.test>, "Giant; \"Big\" Box" <sysservices@example.net>
   Date: Tue, 1 Jul 2003 10:52:37 +0200
   Message-ID: <5678.21-Nov-1997@example.com>

   Hi everyone.
   ----

Note that the display names for Joe Q. Public and Giant; "Big" Box needed to be enclosed in double-quotes because the former contains the period and the latter contains both semicolon and double-quote characters (the double-quote characters appearing as quoted-pair constructs). Conversely, the display name for Who? could appear without them because the question mark is legal in an atom. Notice also that jdoe@example.org and boss@nil.test have no display names associated with them at all, and jdoe@example.org uses the simpler address form without the angle brackets. Joe Q. Public はピリオドを含んでおり、Giant; "Big" Box はセミコロンと引用符とを含んでいるため、それぞれ表示名を引用符で囲う必要があることに注意してほしい(引用符は quoted-pair 構造として現れる)。それに対して疑問符は atom における正当な文字として認められているため、Who? の表示名は引用符なしで現れている。また jdoe@example.org および boss@nil.test はともに対応する表示名を持たず、jdoe@example.org はさらに単純なアングルブラケットのないアドレスであることに注意してほしい。

Appendix A.1.3. Group Addresses 付録 A.1.3. グループアドレス

   ----
   From: Pete <pete@silly.example>
   To: A Group:Ed Jones <c@a.test>,joe@where.test,John <jdoe@one.test>;
   Cc: Undisclosed recipients:;
   Date: Thu, 13 Feb 1969 23:32:54 -0330
   Message-ID: <testabcd.1234@silly.example>

   Testing.
   ----

In this message, the "To:" field has a single group recipient named "A Group", which contains 3 addresses, and a "Cc:" field with an empty group recipient named Undisclosed recipients. このメッセージでは、"To:" フィールドが "A Group" という名前の単一の group 受信者を持ち、それには 3 つのアドレスが含まれている。また "Cc:" フィールドは Undisclosed recipients という名前の空の group を持っている。

Appendix A.2. Reply Messages 付録 A.2. 返信メッセージ

The following is a series of three messages that make up a conversation thread between John and Mary. John first sends a message to Mary, Mary then replies to John's message, and then John replies to Mary's reply message. 以下に示すのは、John と Mary との間での会話スレッドを構成する一連の 3 つのメッセージである。最初に John が Mary にメッセージを送り、Mary がそれに返信し、さらに John が返信している。

Note especially the "Message-ID:", "References:", and "In-Reply-To:" fields in each message. 特に各メッセージの "Message-ID:"・"References:"・"In-Reply-To:" に注目してほしい。

   ----
   From: John Doe <jdoe@machine.example>
   To: Mary Smith <mary@example.net>
   Subject: Saying Hello
   Date: Fri, 21 Nov 1997 09:55:06 -0600
   Message-ID: <1234@local.machine.example>

   This is a message just to say hello.
   So, "Hello".
   ----

When sending replies, the Subject field is often retained, though prepended with "Re: " as described in section 3.6.5. 返信するとき Subject フィールドはしばしば保持されるが、セクション 3.6.5 で説明されている "Re: " が先頭に付けられる。

   ----
   From: Mary Smith <mary@example.net>
   To: John Doe <jdoe@machine.example>
   Reply-To: "Mary Smith: Personal Account" <smith@home.example>
   Subject: Re: Saying Hello
   Date: Fri, 21 Nov 1997 10:01:10 -0600
   Message-ID: <3456@example.net>
   In-Reply-To: <1234@local.machine.example>
   References: <1234@local.machine.example>

   This is a reply to your hello.
   ----

Note the "Reply-To:" field in the above message. When John replies to Mary's message above, the reply should go to the address in the "Reply-To:" field instead of the address in the "From:" field. 上記のメッセージの "Reply-To:" フィールドに注目してほしい。John が上記の Mary のメッセージに返信するとき、その返信は "From:" フィールドのアドレスではなく、"Reply-To:" フィールドのアドレスに送られるべきである。

   ----
   To: "Mary Smith: Personal Account" <smith@home.example>
   From: John Doe <jdoe@machine.example>
   Subject: Re: Saying Hello
   Date: Fri, 21 Nov 1997 11:00:00 -0600
   Message-ID: <abcd.1234@local.machine.test>
   In-Reply-To: <3456@example.net>
   References: <1234@local.machine.example> <3456@example.net>

   This is a reply to your reply.
   ----

Appendix A.3. Resent Messages 付録 A.3. 再送メッセージ

Start with the message that has been used as an example several times: 何度か例として使ったメッセージから始めよう。

   ----
   From: John Doe <jdoe@machine.example>
   To: Mary Smith <mary@example.net>
   Subject: Saying Hello
   Date: Fri, 21 Nov 1997 09:55:06 -0600
   Message-ID: <1234@local.machine.example>

   This is a message just to say hello.
   So, "Hello".
   ----

Say that Mary, upon receiving this message, wishes to send a copy of the message to Jane such that (a) the message would appear to have come straight from John; (b) if Jane replies to the message, the reply should go back to John; and (c) all of the original information, like the date the message was originally sent to Mary, the message identifier, and the original addressee, is preserved. In this case, resent fields are prepended to the message: このメッセージを受け取ったとき、Mary はそのコピーを Jane に送信したいと考えた。そして、(a) メッセージが直接 John から届いたように見せたい、(b) Jane がメッセージに返信するとき、John に返されるべきだ、(c) すべての元の情報(Mary に送信されたときの日付やメッセージ識別子、元のアドレスなど)を保持したいと考えた。この場合、メッセージの先頭に再送フィールドを付加する:

   ----
   Resent-From: Mary Smith <mary@example.net>
   Resent-To: Jane Brown <j-brown@other.example>
   Resent-Date: Mon, 24 Nov 1997 14:22:01 -0800
   Resent-Message-ID: <78910@example.net>
   From: John Doe <jdoe@machine.example>
   To: Mary Smith <mary@example.net>
   Subject: Saying Hello
   Date: Fri, 21 Nov 1997 09:55:06 -0600
   Message-ID: <1234@local.machine.example>

   This is a message just to say hello.
   So, "Hello".
   ----

If Jane, in turn, wished to resend this message to another person, she would prepend her own set of resent header fields to the above and send that. (Note that for brevity, trace fields are not shown.) Jane がこのメッセージをさらに別の人に再送したいと考えた場合、上記のメッセージの先頭に彼女自身の再送ヘッダフィールドを追加して送信することになる。(簡潔さのためにトレースフィールドが示されていないことに注意してほしい。)

Appendix A.4. Messages with Trace Fields 付録 A.4. トレースフィールドを持つメッセージ

As messages are sent through the transport system as described in [RFC5321], trace fields are prepended to the message. The following is an example of what those trace fields might look like. Note that there is some folding white space in the first one since these lines can be long. [RFC5321] で説明されているような転送システムを通してメッセージが送信される場合、メッセージの先頭にトレースフィールドが追加される。以下の例はトレースフィールドがどのようなものであるかを示している。これらの行は長くなる可能性があるため、1 行目にはいくつか空白の折り返しが含まれていることに注意してほしい。

   ----
   Received: from x.y.test
      by example.net
      via TCP
      with ESMTP
      id ABC12345
      for <mary@example.net>;  21 Nov 1997 10:05:43 -0600
   Received: from node.example by x.y.test; 21 Nov 1997 10:01:22 -0600
   From: John Doe <jdoe@node.example>
   To: Mary Smith <mary@example.net>
   Subject: Saying Hello
   Date: Fri, 21 Nov 1997 09:55:06 -0600
   Message-ID: <1234@local.node.example>

   This is a message just to say hello.
   So, "Hello".
   ----

Appendix A.5. White Space, Comments, and Other Oddities 付録 A.5. 空白、コメント、その他

White space, including folding white space, and comments can be inserted between many of the tokens of fields. Taking the example from A.1.3, white space and comments can be inserted into all of the fields. フィールドの多くのトークン間に空白文字(空白の折り返しを含む)およびコメントを挿入することができる。A.1.3 の例に限れば、すべてのフィールドに空白およびコメントを挿入することができる。

   ----
   From: Pete(A nice \) chap) <pete(his account)@silly.test(his host)>
   To:A Group(Some people)
        :Chris Jones <c@(Chris's host.)public.example>,
            joe@example.org,
     John <jdoe@one.test> (my dear friend); (the end of the group)
   Cc:(Empty list)(start)Hidden recipients  :(nobody(that I know))  ;
   Date: Thu,
         13
           Feb
             1969
         23:32
                  -0330 (Newfoundland Time)
   Message-ID:              <testabcd.1234@silly.test>

   Testing.
   ----

The above example is aesthetically displeasing, but perfectly legal. Note particularly (1) the comments in the "From:" field (including one that has a ")" character appearing as part of a quoted-pair); (2) the white space absent after the ":" in the "To:" field as well as the comment and folding white space after the group name, the special character (".") in the comment in Chris Jones's address, and the folding white space before and after "joe@example.org,"; (3) the multiple and nested comments in the "Cc:" field as well as the comment immediately following the ":" after "Cc"; (4) the folding white space (but no comments except at the end) and the missing seconds in the time of the date field; and (5) the white space before (but not within) the identifier in the "Message-ID:" field. 見た目は美しくないが、上記の例は完全に正しいものである。特に注意してほしい点は、(1) "From:" フィールド内のコメント(quoted-pair の一部として現れている文字 ")" を含む)、(2) "To:" フィールド内の ":" の後に空白がないこと、グループ名の後のコメントと空白の折り返し、Chris Jones のアドレス内のコメントに含まれる特殊文字(".")、"joe@example.org," の前後にある空白の折り返し、(3) "Cc:" フィールド内の複数かつネストしたコメントと、"Cc" の後の ":" の直後のコメント、(4) 日付フィールドの途中に空白の折り返しがあること(ただしコメントは終端だけにあること)、また時刻に秒がないこと、(5) "Message-ID:" フィールドの識別子の前(内側ではない)に空白があることである。

Appendix A.6. Obsoleted Forms 付録 A.6. 廃止された形式

The following are examples of obsolete (that is, the "MUST NOT generate") syntactic elements described in section 4 of this document. セクション 4 で説明されている廃止された(つまり "生成してはならない(MUST NOT)")文法要素の例を以下に示す。

Appendix A.6.1. Obsolete Addressing 付録 A.6.1. 廃止されたアドレス指定

Note in the example below the lack of quotes around Joe Q. Public, the route that appears in the address for Mary Smith, the two commas that appear in the "To:" field, and the spaces that appear around the "." in the jdoe address. 下記の例で注意してほしい点は、Joe Q. Public の前後に引用符がないこと、Mary Smith のアドレスの中に経路が含まれていること、"To:" フィールド内に 2 つのカンマがあること、jdoe のアドレスの "." の前後に空白があることである。

   ----
   From: Joe Q. Public <john.q.public@example.com>
   To: Mary Smith <@node.test:mary@example.net>, , jdoe@test  . example
   Date: Tue, 1 Jul 2003 10:52:37 +0200
   Message-ID: <5678.21-Nov-1997@example.com>

   Hi everyone.
   ----

Appendix A.6.2. Obsolete Dates 付録 A.6.2. 廃止された日付

The following message uses an obsolete date format, including a non- numeric time zone and a two digit year. Note that although the day- of-week is missing, that is not specific to the obsolete syntax; it is optional in the current syntax as well. 以下のメッセージは廃止された日付形式(数字ではないタイムゾーン、2 桁の年)を使用している。曜日(day-of-week)がないが、これは廃止された文法に限ったことではなく、現在の文法でもオプションであることに注意してほしい。

   ----
   From: John Doe <jdoe@machine.example>
   To: Mary Smith <mary@example.net>
   Subject: Saying Hello
   Date: 21 Nov 97 09:55:06 GMT
   Message-ID: <1234@local.machine.example>

   This is a message just to say hello.
   So, "Hello".
   ----

Appendix A.6.3. Obsolete White Space and Comments 付録 A.6.3. 廃止された空白とコメント

White space and comments can appear between many more elements than in the current syntax. Also, folding lines that are made up entirely of white space are legal. 空白とコメントは、現在の文法よりも多くの要素間に現れることができる。また、空白だけから成る折り返し行も許される。

   ----
   From  : John Doe <jdoe@machine(comment).  example>
   To    : Mary Smith
   __
             <mary@example.net>
   Subject     : Saying Hello
   Date  : Fri, 21 Nov 1997 09(comment):   55  :  06 -0600
   Message-ID  : <1234   @   local(blah)  .machine .example>

   This is a message just to say hello.
   So, "Hello".
   ----

Note especially the second line of the "To:" field. It starts with two space characters. (Note that "__" represent blank spaces.) Therefore, it is considered part of the folding, as described in section 4.2. Also, the comments and white space throughout addresses, dates, and message identifiers are all part of the obsolete syntax. "To:" の 2 行目に特に注意してほしい。空白文字から始まっている("__" が空白を表している)。つまりこれは、セクション 4.2 で説明されている折り返しの一部と見なされているということである。またアドレス・日付・メッセージ識別子のそれぞれに含まれるコメントや空白も、すべて廃止された文法の一部である。

Appendix B. Differences from Earlier Specifications 付録 B. 以前の仕様からの変更点

This appendix contains a list of changes that have been made in the Internet Message Format from earlier specifications, specifically [RFC0822], [RFC1123], and [RFC2822]. Items marked with an asterisk (*) below are items which appear in section 4 of this document and therefore can no longer be generated. この付録は、過去の仕様(具体的には [RFC0822], [RFC1123], [RFC2822])のインターネットメッセージフォーマットからの変更点の一覧である。アスタリスク(*)の項目はセクション 4 で示した項目であり、現在では生成できないものである。

The following are the changes made from [RFC0822] and [RFC1123] to [RFC2822] that remain in this document: 以下は、[RFC0822] および [RFC1123] から [RFC2822] の間で変更され、この文書でも残っている変更点である:

The following are changes from [RFC2822]. 以下は [RFC2822] からの変更点である。

Appendix C. Acknowledgements 付録 C. 謝辞

Many people contributed to this document. They included folks who participated in the Detailed Revision and Update of Messaging Standards (DRUMS) Working Group of the Internet Engineering Task Force (IETF), the chair of DRUMS, the Area Directors of the IETF, and people who simply sent their comments in via email. The editor is deeply indebted to them all and thanks them sincerely. The below list includes everyone who sent email concerning both this document and [RFC2822]. Hopefully, everyone who contributed is named here: 多くの人々がこの文書に貢献した。それには、IETF の Detailed Revision and Update of Messaging Standards (DRUMS) に参加する人々、DRUMS の議長、IETF のエリアディレクター、そして単純にメールでコメントを送信してくれた人々が含まれる。編集者はそれらすべての人々から深い恩恵を受け、心から感謝している。以下のリストはこの文書と [RFC2822] との両方に関してメールを送ってくれた人々である。貢献してくれた全員の名前が示されていることを願う:

   +--------------------+----------------------+---------------------+
   | Matti Aarnio       | Tanaka Akira         | Russ Allbery        |
   | Eric Allman        | Harald Alvestrand    | Ran Atkinson        |
   | Jos Backus         | Bruce Balden         | Dave Barr           |
   | Alan Barrett       | John Beck            | J Robert von Behren |
   | Jos den Bekker     | D J Bernstein        | James Berriman      |
   | Oliver Block       | Norbert Bollow       | Raj Bose            |
   | Antony Bowesman    | Scott Bradner        | Randy Bush          |
   | Tom Byrer          | Bruce Campbell       | Larry Campbell      |
   | W J Carpenter      | Michael Chapman      | Richard Clayton     |
   | Maurizio Codogno   | Jim Conklin          | R Kelley Cook       |
   | Nathan Coulter     | Steve Coya           | Mark Crispin        |
   | Dave Crocker       | Matt Curtin          | Michael D'Errico    |
   | Cyrus Daboo        | Michael D Dean       | Jutta Degener       |
   | Mark Delany        | Steve Dorner         | Harold A Driscoll   |
   | Michael Elkins     | Frank Ellerman       | Robert Elz          |
   | Johnny Eriksson    | Erik E Fair          | Roger Fajman        |
   | Patrik Faltstrom   | Claus Andre Faerber  | Barry Finkel        |
   | Erik Forsberg      | Chuck Foster         | Paul Fox            |
   | Klaus M Frank      | Ned Freed            | Jochen Friedrich    |
   | Randall C Gellens  | Sukvinder Singh Gill | Tim Goodwin         |
   | Philip Guenther    | Arnt Gulbrandsen     | Eric A Hall         |
   | Tony Hansen        | John Hawkinson       | Philip Hazel        |
   | Kai Henningsen     | Robert Herriot       | Paul Hethmon        |
   | Jim Hill           | Alfred Hoenes        | Paul E Hoffman      |
   | Steve Hole         | Kari Hurtta          | Marco S Hyman       |
   | Ofer Inbar         | Olle Jarnefors       | Kevin Johnson       |
   | Sudish Joseph      | Maynard Kang         | Prabhat Keni        |
   | John C Klensin     | Graham Klyne         | Brad Knowles        |
   | Shuhei Kobayashi   | Peter Koch           | Dan Kohn            |
   | Christian Kuhtz    | Anand Kumria         | Steen Larsen        |
   | Eliot Lear         | Barry Leiba          | Jay Levitt          |
   | Bruce Lilly        | Lars-Johan Liman     | Charles Lindsey     |
   | Pete Loshin        | Simon Lyall          | Bill Manning        |
   | John Martin        | Mark Martinec        | Larry Masinter      |
   | Denis McKeon       | William P McQuillan  | Alexey Melnikov     |
   | Perry E Metzger    | Steven Miller        | S Moonesamy         |
   | Keith Moore        | John Gardiner Myers  | Chris Newman        |
   | John W Noerenberg  | Eric Norman          | Mike O'Dell         |
   | Larry Osterman     | Paul Overell         | Jacob Palme         |
   | Michael A Patton   | Uzi Paz              | Michael A Quinlan   |
   | Robert Rapplean    | Eric S Raymond       | Sam Roberts         |
   | Hugh Sasse         | Bart Schaefer        | Tom Scola           |
   | Wolfgang Segmuller | Nick Shelness        | John Stanley        |
   | Einar Stefferud    | Jeff Stephenson      | Bernard Stern       |
   | Peter Sylvester    | Mark Symons          | Eric Thomas         |
   | Lee Thompson       | Karel De Vriendt     | Matthew Wall        |
   | Rolf Weber         | Brent B Welch        | Dan Wing            |
   | Jack De Winter     | Gregory J Woodhouse  | Greg A Woods        |
   | Kazu Yamamoto      | Alain Zahm           | Jamie Zawinski      |
   | Timothy S Zurcher  |                      |                     |
   +--------------------+----------------------+---------------------+

7. References 7. 参照

7.1. Normative References 7.1. 引用規格

[ANSI.X3-4.1986]
American National Standards Institute, "Coded Character Set - 7-bit American Standard Code for Information Interchange", ANSI X3.4, 1986.
[RFC1034]
Mockapetris, P., "Domain names - concepts and facilities", STD 13, RFC 1034, November 1987.
[RFC1035]
Mockapetris, P., "Domain names - implementation and specification", STD 13, RFC 1035, November 1987.
[RFC1123]
Braden, R., "Requirements for Internet Hosts - Application and Support", STD 3, RFC 1123, October 1989.
[RFC2119]
Bradner, S., "Key words for use in RFCs to Indicate Requirement Levels", BCP 14, RFC 2119, March 1997.
[RFC5234]
Crocker, D. and P. Overell, "Augmented BNF for Syntax Specifications: ABNF", STD 68, RFC 5234, January 2008.

7.2. Informative References 7.2. 参考規格

[RFC0822]
Crocker, D., "Standard for the format of ARPA Internet text messages", STD 11, RFC 822, August 1982.
[RFC1305]
Mills, D., "Network Time Protocol (Version 3) Specification, Implementation", RFC 1305, March 1992.
[ISO.2022.1994]
International Organization for Standardization, "Information technology - Character code structure and extension techniques", ISO Standard 2022, 1994.
[RFC2045]
Freed, N. and N. Borenstein, "Multipurpose Internet Mail Extensions (MIME) Part One: Format of Internet Message Bodies", RFC 2045, November 1996.
[RFC2046]
Freed, N. and N. Borenstein, "Multipurpose Internet Mail Extensions (MIME) Part Two: Media Types", RFC 2046, November 1996.
[RFC2047]
Moore, K., "MIME (Multipurpose Internet Mail Extensions) Part Three: Message Header Extensions for Non-ASCII Text", RFC 2047, November 1996.
[RFC2049]
Freed, N. and N. Borenstein, "Multipurpose Internet Mail Extensions (MIME) Part Five: Conformance Criteria and Examples", RFC 2049, November 1996.
[RFC2822]
Resnick, P., "Internet Message Format", RFC 2822, April 2001.
[RFC3864]
Klyne, G., Nottingham, M., and J. Mogul, "Registration Procedures for Message Header Fields", BCP 90, RFC 3864, September 2004.
[RFC4021]
Klyne, G. and J. Palme, "Registration of Mail and MIME Header Fields", RFC 4021, March 2005.
[RFC4288]
Freed, N. and J. Klensin, "Media Type Specifications and Registration Procedures", BCP 13, RFC 4288, December 2005.
[RFC4289]
Freed, N. and J. Klensin, "Multipurpose Internet Mail Extensions (MIME) Part Four: Registration Procedures", BCP 13, RFC 4289, December 2005.
[RFC5321]
Klensin, J., "Simple Mail Transfer Protocol", RFC 5321, October 2008.

Author's Address 著者の連絡先

   Peter W. Resnick (editor)
   Qualcomm Incorporated
   5775 Morehouse Drive
   San Diego, CA  92121-1714
   US

   Phone: +1 858 651 4478
   EMail: presnick@qualcomm.com
   URI:   http://www.qualcomm.com/~presnick/

Full Copyright Statement

Copyright (C) The IETF Trust (2008).

This document is subject to the rights, licenses and restrictions contained in BCP 78, and except as set forth therein, the authors retain all their rights.

This document and the information contained herein are provided on an "AS IS" basis and THE CONTRIBUTOR, THE ORGANIZATION HE/SHE REPRESENTS OR IS SPONSORED BY (IF ANY), THE INTERNET SOCIETY, THE IETF TRUST AND THE INTERNET ENGINEERING TASK FORCE DISCLAIM ALL WARRANTIES, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO ANY WARRANTY THAT THE USE OF THE INFORMATION HEREIN WILL NOT INFRINGE ANY RIGHTS OR ANY IMPLIED WARRANTIES OF MERCHANTABILITY OR FITNESS FOR A PARTICULAR PURPOSE.

Intellectual Property

The IETF takes no position regarding the validity or scope of any Intellectual Property Rights or other rights that might be claimed to pertain to the implementation or use of the technology described in this document or the extent to which any license under such rights might or might not be available; nor does it represent that it has made any independent effort to identify any such rights. Information on the procedures with respect to rights in RFC documents can be found in BCP 78 and BCP 79.

Copies of IPR disclosures made to the IETF Secretariat and any assurances of licenses to be made available, or the result of an attempt made to obtain a general license or permission for the use of such proprietary rights by implementers or users of this specification can be obtained from the IETF on-line IPR repository at http://www.ietf.org/ipr.

The IETF invites any interested party to bring to its attention any copyrights, patents or patent applications, or other proprietary rights that may cover technology that may be required to implement this standard. Please address the information to the IETF at ietf-ipr@ietf.org.