
[1] [[電子メイル]] ([[822]]) [[メッセージ]]で使われる
[DFN[[CODE(822)[Disposition-Notification-To:]] [[頭欄]]]]は、
[[配置通知]] [WEAK[(いわゆる[[開封通知]])]]
の送信を要求すると共にその[[宛先]]を指定する[[欄]]です。

[2] 仕様書:
-[MDN RFC]
-= [DEL[[[RFC 2298]] <urn:ietf:rfc:2298>]]
-= [[RFC 3798]] <urn:ietf:rfc3798>

** 構文

[3] [CODE(822)[Disposition-Notification-To:]] [[頭欄]]の[[欄本体]]は次の構文を持ちます
[WEAK[(正式には [[RFC 3798]] をご覧下さい)]]。

- [CODE(ABNF)[[DFN[DNT-body]] := [[mailbox]] *("," [[mailbox]])]]
-- [CODE(ABNF)[[[mailbox]]]] は [[RFC 2822]] で定義されています。
-- [[RFC 2822]] の [CODE(ABNF)[[[mailbox]]]] の定義の通り、
適宜前後に [CODE(ABNF)[[[CFWS]]]] を挿入できます。

[[#comment]]

** 意味

[4] [CODE(822)[Disposition-Notification-To:]] 欄の存在は、
[[MDN]] の発行を[[受信者]]に[[要求]]します。
ただし、受信者に発行の義務は''ありません''。
また、事前に [WEAK[(設定により、または事前の確認により)]]
[[利用者]]に発行の確認を求めるべきであるとされています。

[5] [[MDN]] 自体は [CODE(822)[Disposition-Notification-To:]]
欄を持っていてはいけません。また、 [[MDN]]
に [CODE(822)[Disposition-Notification-To:]] 
欄があっても[[受信者]]は無視しなければなりません。
[WEAK[([[MDN]] の循環を防ぐためです。)]]

[9] [[電子ニュース]]に[[投稿]]する[[メッセージ]]では
[CODE(822)[Disposition-Notification-To:]] 欄を使用するべきではありません
[SRC[MDN RFC]]。
電子ニュースの[[利用者エージェント]]も電子ニュースとして受け取ったメッセージでは無視するべきでしょう。

[6]
[CODE(822)[[[Return-Path]]:]] 欄の値
[WEAK[([[envelope from]])]] と 
[CODE(822)[Disposition-Notification-To:]] 欄の値が一致しない場合には
[WEAK[(つまり元の[[送信者]]と [[MDN]] の提出先が異なる場合には)]]
[[MDN]] が自動的に発行される'''べきではありません'''。

[[#comment]]

** 他との関係

[11] '''MDN''':
[CODE(822)[Disposition-Notification-To:]] 欄を受け取った[[利用者エージェント]]は、
[[MDN]] を指定された宛先に送信します。

[13] '''オプション指定''':
[CODE(822)[Disposition-Notification-To:]] 欄と併用される
[CODE(822)[[[Disposition-Notification-Options]]:]]
欄があります。

[7] '''[CODE(822)[Message-ID]]''':
[CODE(822)[Disposition-Notification-To:]] 欄を指定する場合、
[CODE(822)[[[Message-ID]]:]] 欄も使用する'''べきです'''。
これは、 [[MDN]] の [CODE(MDN)[[[Original-Message-ID]]:]]
欄を指定するためです。
[WEAK[(そうすれば [[MDN]] の元のメッセージがどれか元の[[送信者]]の側で機械的に処理できます。)]]

[8] '''複数の宛先''':
[[宛先]]が複数であり、 
[CODE(822)[Disposition-Notification-To:]] 
欄を一部の[[受信者]]に対してのみ指定したい時には、
複数の[[メッセージ]]を用意する必要があります。
[WEAK[(この程度の違いの時は [CODE(822)[[[Message-ID]]:]] 欄を違う値にする必要は普通ありません。)]]

[10] '''分割メッセージ''':
[CODE(MIME)[[[message/partial]]]] による分割メッセージでは、
[CODE(822)[Disposition-Notification-To:]] 欄は[Q[内側]]に入れます。

[12] '''関門''':
[[メイリング・リスト]]の配送ソフトウェアや[[電子ニュース]]や
[[X.400]] などの別の[[プロトコル]]への[[関門]]などでは、
その性質に応じて [CODE(822)[Disposition-Notification-To:]] 
欄を適切なプロトコル要素に翻訳したり、
[[メッセージ]]から削除したり、部分的に修正したりする必要があるかもしれません。

しかし、そのような編集が行われないこともあるかもしれません。
[WEAK[([[MDN]] は元から[[インターネット・メイル]]に存在する機能ではないので、対応していないことも普通にあります。)]]
仕様書 [SRC[MDN RFC]] にもありますが、
[[メイリング・リスト]]で配送されると [[MDN]]
が何通送信者に送られるかは未知数です。
[[電子ニュース]]に[[投稿]]する[[メッセージ]]では
[CODE(822)[Disposition-Notification-To:]] 欄を使うべきではないとされていますが
[SRC[MDN RFC]]、電子メイルから電子ニュースに注入する関門や電子ニュースから電子メイルに宛てた関門も沢山あります。
[[送信者]]はあらゆる場合を想定しておく必要があります。

[[#comment]]

** メモ

[14] もっと短い名前にしてくれればいいものを。面倒くさい。。。

[[#comment]]

* メモ


[15] [CITE@en[RFC 8098 - Message Disposition Notification]]
([TIME[2017-03-02 23:20:54 +09:00]])
<https://tools.ietf.org/html/rfc8098#section-2.1>