<html xmlns="http://www.w3.org/1999/xhtml"><head></head><body><p><anchor-end xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:" a0:anchor="52" xmlns:a0="urn:x-suika-fam-cx:markup:suikawiki:0:9:">[52]</anchor-end> 
<dfn><rubyb xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">内容識別子<rt xmlns="http://www.w3.org/1999/xhtml">Content ID</rt></rubyb></dfn>は、
<anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">MIME実体</anchor>を<anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">識別</anchor>する<anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">識別子</anchor>です。</p><p><anchor-end xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:" a0:anchor="53" xmlns:a0="urn:x-suika-fam-cx:markup:suikawiki:0:9:">[53]</anchor-end> 
<anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">メッセージ識別子</anchor>とよく似ており、歴史的にも関係が深いですが、
<anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">メッセージ</anchor>全体ではなく<rubyb xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">部分<rt xmlns="http://www.w3.org/1999/xhtml">part</rt></rubyb>を識別できる点が違います。</p><section><h1>仕様書</h1><refs xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:"><ul xmlns="http://www.w3.org/1999/xhtml"><li><anchor-end xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:" a0:anchor="31" xmlns:a0="urn:x-suika-fam-cx:markup:suikawiki:0:9:">[31]</anchor-end> <cite xml:lang="en">RFC 2046 - Multipurpose Internet Mail Extensions (MIME) Part Two: Media Types</cite> (<time>2015-03-22 13:14:46 +09:00</time> 版) <anchor-external xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:" a0:resScheme="URI" xmlns:a0="urn:x-suika-fam-cx:markup:suikawiki:0:9:" a0:resParameter="http://tools.ietf.org/html/rfc2046#section-5.1.4">http://tools.ietf.org/html/rfc2046#section-5.1.4</anchor-external></li><li><anchor-end xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:" a0:anchor="36" xmlns:a0="urn:x-suika-fam-cx:markup:suikawiki:0:9:">[36]</anchor-end> <cite xml:lang="en">RFC 2046 - Multipurpose Internet Mail Extensions (MIME) Part Two: Media Types</cite> (<time>2015-03-22 13:14:46 +09:00</time> 版) <anchor-external xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:" a0:resScheme="URI" xmlns:a0="urn:x-suika-fam-cx:markup:suikawiki:0:9:" a0:resParameter="http://tools.ietf.org/html/rfc2046#section-5.2.3">http://tools.ietf.org/html/rfc2046#section-5.2.3</anchor-external></li><li><anchor-end xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:" a0:anchor="38" xmlns:a0="urn:x-suika-fam-cx:markup:suikawiki:0:9:">[38]</anchor-end> <cite xml:lang="en">RFC 2392 - Content-ID and Message-ID Uniform Resource Locators</cite> (<time>2015-06-21 16:39:07 +09:00</time> 版) <anchor-external xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:" a0:resScheme="URI" xmlns:a0="urn:x-suika-fam-cx:markup:suikawiki:0:9:" a0:resParameter="https://tools.ietf.org/html/rfc2392">https://tools.ietf.org/html/rfc2392</anchor-external></li><li><anchor-end xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:" a0:anchor="39" xmlns:a0="urn:x-suika-fam-cx:markup:suikawiki:0:9:">[39]</anchor-end> <cite>RFC Errata Report</cite> (<time>2015-06-24 13:52:46 +09:00</time> 版) <anchor-external xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:" a0:resScheme="URI" xmlns:a0="urn:x-suika-fam-cx:markup:suikawiki:0:9:" a0:resParameter="http://www.rfc-editor.org/errata_search.php?rfc=2392">http://www.rfc-editor.org/errata_search.php?rfc=2392</anchor-external></li></ul></refs></section><section><h1>意味</h1><p><anchor-end xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:" a0:anchor="54" xmlns:a0="urn:x-suika-fam-cx:markup:suikawiki:0:9:">[54]</anchor-end> <anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">内容識別子</anchor>は、それが付与された<anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">MIME実体</anchor>を<anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">識別</anchor>します。</p><comment-p xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:10:"><anchor-end xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:" a0:anchor="55" xmlns:a0="urn:x-suika-fam-cx:markup:suikawiki:0:9:">[55]</anchor-end> <anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">MIME実体</anchor>への<anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">内容ID</anchor>の付与は、
<code xmlns="http://www.w3.org/1999/xhtml">Content-ID:</code>
<anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">MIMEヘッダー</anchor>によります。</comment-p><p><anchor-end xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:" a0:anchor="56" xmlns:a0="urn:x-suika-fam-cx:markup:suikawiki:0:9:">[56]</anchor-end> 
<anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">内容識別子</anchor>は、それ単独で大域的に固有な識別子であることが本来の仕様上は期待されています。</p><p><anchor-end xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:" a0:anchor="57" xmlns:a0="urn:x-suika-fam-cx:markup:suikawiki:0:9:">[57]</anchor-end> 
しかし実際にはそれが含まれる<anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">メッセージ</anchor>内で固有であることしか保証できない程度の固有性の識別子が使われることもよくあります。</p></section><section><h1>構文</h1><p><anchor-end xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:" a0:anchor="51" xmlns:a0="urn:x-suika-fam-cx:markup:suikawiki:0:9:">[51]</anchor-end> <anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">メッセージ識別子</anchor>を参照。</p></section><section><h1>文脈</h1><figure class="short list"><figcaption><anchor-end xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:" a0:anchor="58" xmlns:a0="urn:x-suika-fam-cx:markup:suikawiki:0:9:">[58]</anchor-end> <anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">内容識別子</anchor>の利用</figcaption><ul><li><code>cid:</code></li><li><code>mid:</code></li><li><code>message/external-body</code></li></ul></figure></section><section><h1><code class="MIME" xml:lang="en">multipart/alternative</code> における内容ID</h1><p><anchor-end xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:" a0:anchor="32" xmlns:a0="urn:x-suika-fam-cx:markup:suikawiki:0:9:">[32]</anchor-end> <code class="MIME" xml:lang="en"><anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">multipart/alternative</anchor></code> の各<anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">本体部分</anchor>は、
情報内容が同じでないなら、異なる <code class="MIME" xml:lang="en"><anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">Content-ID</anchor></code>
とするべきです <src xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:10:"><anchor-internal xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:" a0:anchor="31" xmlns:a0="urn:x-suika-fam-cx:markup:suikawiki:0:9:">&gt;&gt;31</anchor-internal></src>。</p><p><anchor-end xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:" a0:anchor="33" xmlns:a0="urn:x-suika-fam-cx:markup:suikawiki:0:9:">[33]</anchor-end> 情報内容が同じ<anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">本体部分</anchor>は、同じ <code class="MIME" xml:lang="en"><anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">Content-ID</anchor></code>
でも構いません <src xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:10:"><anchor-internal xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:" a0:anchor="31" xmlns:a0="urn:x-suika-fam-cx:markup:suikawiki:0:9:">&gt;&gt;31</anchor-internal></src>。</p><example xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:"><p xmlns="http://www.w3.org/1999/xhtml"><anchor-end xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:" a0:anchor="34" xmlns:a0="urn:x-suika-fam-cx:markup:suikawiki:0:9:">[34]</anchor-end> 例えば異なる方法でアクセスする <code class="MIME" xml:lang="en"><anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">message/external-body</anchor></code>
同士は、同じ <code class="MIME" xml:lang="en"><anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">Content-ID</anchor></code> にできます <src xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:10:"><anchor-internal xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:" a0:anchor="31" xmlns:a0="urn:x-suika-fam-cx:markup:suikawiki:0:9:">&gt;&gt;31</anchor-internal></src>。</p></example><p><anchor-end xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:" a0:anchor="35" xmlns:a0="urn:x-suika-fam-cx:markup:suikawiki:0:9:">[35]</anchor-end> <code class="MIME" xml:lang="en"><anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">multipart/alternative</anchor></code> 全体と各<anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">本体部分</anchor>では、
異なる <code class="MIME" xml:lang="en"><anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">Content-ID</anchor></code> とするべきです <src xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:10:"><anchor-internal xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:" a0:anchor="31" xmlns:a0="urn:x-suika-fam-cx:markup:suikawiki:0:9:">&gt;&gt;31</anchor-internal></src>。</p></section><section><h1><code class="MIME" xml:lang="en">message/external-body</code> における内容ID</h1><p><anchor-end xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:" a0:anchor="37" xmlns:a0="urn:x-suika-fam-cx:markup:suikawiki:0:9:">[37]</anchor-end> <code class="MIME" xml:lang="en"><anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">message/external-body</anchor></code> の内側の<anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">ヘッダー</anchor>では、
<code class="MIME" xml:lang="en"><anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">Content-ID</anchor></code> は必須です <src xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:10:"><anchor-internal xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:" a0:anchor="36" xmlns:a0="urn:x-suika-fam-cx:markup:suikawiki:0:9:">&gt;&gt;36</anchor-internal></src>。</p></section><section><h1><code class="URI" xml:lang="en">cid:</code> URL</h1><p><anchor-end xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:" a0:anchor="43" xmlns:a0="urn:x-suika-fam-cx:markup:suikawiki:0:9:">[43]</anchor-end> <code class="URI" xml:lang="en"><anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">cid:</anchor></code> <anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">URL</anchor> を使うと <code class="MIME" xml:lang="en"><anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">Content-ID</anchor></code>
によって<anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">本体部分</anchor>を識別できます。</p><p><anchor-end xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:" a0:anchor="44" xmlns:a0="urn:x-suika-fam-cx:markup:suikawiki:0:9:">[44]</anchor-end> この <anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">URL</anchor> は、同じ<anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">メッセージ</anchor>中の<anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">本体部分</anchor>を参照するために使えます
<src xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:10:"><anchor-internal xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:" a0:anchor="38" xmlns:a0="urn:x-suika-fam-cx:markup:suikawiki:0:9:">&gt;&gt;38</anchor-internal></src>。</p><comment-p xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:10:"><anchor-end xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:" a0:anchor="45" xmlns:a0="urn:x-suika-fam-cx:markup:suikawiki:0:9:">[45]</anchor-end> 同じ<anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">メッセージ</anchor>との制約しかありませんから、 <code xmlns="http://www.w3.org/1999/xhtml" class="MIME" xml:lang="en"><anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">multipart/*</anchor></code>
の階層を超えて参照することはできると思われます。 <code xmlns="http://www.w3.org/1999/xhtml" class="MIME" xml:lang="en"><anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">message/rfc822</anchor></code>
など <code xmlns="http://www.w3.org/1999/xhtml" class="MIME" xml:lang="en"><anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">message/*</anchor></code> の壁を越えることはできないと思われます。</comment-p></section><section><h1><code class="URI" xml:lang="en">mid:</code> URL</h1><p><anchor-end xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:" a0:anchor="46" xmlns:a0="urn:x-suika-fam-cx:markup:suikawiki:0:9:">[46]</anchor-end> <code class="URI" xml:lang="en"><anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">mid:</anchor></code> <anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">URL</anchor> には<anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">メッセージID</anchor>に加えて
<code class="MIME" xml:lang="en"><anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">Content-ID</anchor></code> を指定できます。異なる<anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">メッセージ</anchor>であっても<anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">本体部分</anchor>を識別できます。</p><comment-p xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:10:"><code xmlns="http://www.w3.org/1999/xhtml" class="URI" xml:lang="en"><anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">mid:</anchor></code> を参照。</comment-p></section><section><h1>歴史</h1><figure class="quote"><figcaption><anchor-end xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:" a0:anchor="40" xmlns:a0="urn:x-suika-fam-cx:markup:suikawiki:0:9:">[40]</anchor-end> RFC 1340             6.1  Optional Content-ID Header Field</figcaption><blockquote><p>In constructing a high-level user agent, it may be desirable
to   allow   one   body   to   make  reference  to  another.
Accordingly, bodies may be labeled  using  the  &quot;Content-ID&quot;
header  field,  which  is  syntactically  identical  to  the
&quot;Message-ID&quot; header field:</p></blockquote><p><anchor-end xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:" a0:anchor="1" xmlns:a0="urn:x-suika-fam-cx:markup:suikawiki:0:9:">[1]</anchor-end> 高水準<anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">利用者エージェント</anchor>の構築のために、ある<anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">本体</anchor>が他の本体を参照可能にするのが望ましいかもしれません。
従って、本体は &quot;Message-ID&quot; 頭欄と構文的に同等の &quot;Content-ID&quot;
頭欄を使って札付けできます。</p><ul><li><anchor-end xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:" a0:anchor="2" xmlns:a0="urn:x-suika-fam-cx:markup:suikawiki:0:9:">[2]</anchor-end>            Content-ID := msg-id</li></ul><blockquote><p>Like  the  Message-ID  values,  Content-ID  values  must  be
generated to be as unique as possible.</p></blockquote><p><anchor-end xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:" a0:anchor="3" xmlns:a0="urn:x-suika-fam-cx:markup:suikawiki:0:9:">[3]</anchor-end> Message-ID 値同様、 Content-ID 値は可能な限り固有であるように生成しなければなりません。</p></figure><figure class="quote"><figcaption><anchor-end xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:" a0:anchor="41" xmlns:a0="urn:x-suika-fam-cx:markup:suikawiki:0:9:">[41]</anchor-end> RFC 1521 6.1.  Optional Content-ID Header Field</figcaption><blockquote><p>In constructing a high-level user agent, it may be desirable to allow
one body to make reference to another.  Accordingly, bodies may be
labeled using the &quot;Content-ID&quot; header field, which is syntactically
identical to the &quot;Message-ID&quot; header field:</p></blockquote><p><anchor-end xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:" a0:anchor="8" xmlns:a0="urn:x-suika-fam-cx:markup:suikawiki:0:9:">[8]</anchor-end> 高水準<anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">利用者エージェント</anchor>の構築のために、ある<anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">本体</anchor>が他の本体を参照可能にするのが望ましいかもしれません。
従って、本体は &quot;Message-ID&quot; 頭欄と構文的に同等の &quot;Content-ID&quot;
頭欄を使って札付けできます。</p><ul><li><anchor-end xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:" a0:anchor="4" xmlns:a0="urn:x-suika-fam-cx:markup:suikawiki:0:9:">[4]</anchor-end>   id :=  &quot;Content-ID&quot; &quot;:&quot; msg-id</li></ul><blockquote><p>Like the Message-ID values, Content-ID values must be generated to be
world-unique.</p></blockquote><p><anchor-end xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:" a0:anchor="5" xmlns:a0="urn:x-suika-fam-cx:markup:suikawiki:0:9:">[5]</anchor-end> Message-ID 値同様、 Content-ID 値は世界的に固有であるように生成しなければなりません。</p><blockquote><p>The Content-ID value may be used for uniquely identifying MIME
entities in several contexts, particularly for cacheing data
referenced by the message/external-body mechanism.  Although the
Content-ID header is generally optional, its use is mandatory in
implementations which generate data of the optional MIME Content-type
&quot;message/external-body&quot;.  That is, each message/external-body entity
must have a Content-ID field to permit cacheing of such data.</p></blockquote><p><anchor-end xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:" a0:anchor="6" xmlns:a0="urn:x-suika-fam-cx:markup:suikawiki:0:9:">[6]</anchor-end> Content-ID 値は幾つかの文脈で <anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">MIME</anchor> 
<anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">実体</anchor>を唯一的に特定するために使われ得ます。
とりわけ message/external-body 
の仕組みでは参照データのキャッシュのために使われます。
Content-ID 頭は一般に省略可能ですが、任意の MIME
内容型 &quot;message/external-body&quot; 
のデータを生成する実装には使用することを強制します。
つまり、各 message/external-body 実体は必ず Content-ID
欄を持ってそうしたデータのキャッシュを可能にしなければなりません。</p><blockquote><p>It is also worth noting that the Content-ID value has special
semantics in the case of the multipart/alternative content-type.
This is explained in the section of this document dealing with
multipart/alternative.</p></blockquote><p><anchor-end xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:" a0:anchor="7" xmlns:a0="urn:x-suika-fam-cx:markup:suikawiki:0:9:">[7]</anchor-end> Content-ID 値は multipart/alternative 
内容型の場合に特別な意味を持つことにも注意しておく必要があります。
これはこの文書の multipart/alternative の処理の節で説明しています。</p><insert xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:"><p xmlns="http://www.w3.org/1999/xhtml">訳注: <anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">message/external-body媒体型</anchor>及び
<anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">mulipart/alternative媒体型</anchor>を参照。</p></insert></figure><figure class="quote"><figcaption><anchor-end xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:" a0:anchor="42" xmlns:a0="urn:x-suika-fam-cx:markup:suikawiki:0:9:">[42]</anchor-end> RFC 2045 7.  Content-ID Header Field</figcaption><blockquote><p>In constructing a high-level user agent, it may be desirable to allow
one body to make reference to another.  Accordingly, bodies may be
labelled using the &quot;Content-ID&quot; header field, which is syntactically
identical to the &quot;Message-ID&quot; header field:</p></blockquote><p><anchor-end xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:" a0:anchor="9" xmlns:a0="urn:x-suika-fam-cx:markup:suikawiki:0:9:">[9]</anchor-end> 高水準<anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">利用者エージェント</anchor>の構築のために、ある<anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">本体</anchor>が他の本体を参照可能にするのが望ましいかもしれません。
従って、本体は &quot;Message-ID&quot; 頭欄と構文的に同等の &quot;Content-ID&quot;
頭欄を使って札付けできます。</p><ul><li><anchor-end xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:" a0:anchor="10" xmlns:a0="urn:x-suika-fam-cx:markup:suikawiki:0:9:">[10]</anchor-end>     id := &quot;Content-ID&quot; &quot;:&quot; msg-id</li></ul><blockquote><p>Like the Message-ID values, Content-ID values must be generated to be
world-unique.</p></blockquote><p><anchor-end xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:" a0:anchor="11" xmlns:a0="urn:x-suika-fam-cx:markup:suikawiki:0:9:">[11]</anchor-end> Message-ID 値同様、 Content-ID 値は世界的に固有であるように生成しなければなりません。</p><blockquote><p>The Content-ID value may be used for uniquely identifying MIME
entities in several contexts, particularly for caching data
referenced by the message/external-body mechanism.  Although the
Content-ID header is generally optional, its use is MANDATORY in
implementations which generate data of the optional MIME media type
&quot;message/external-body&quot;.  That is, each message/external-body entity
must have a Content-ID field to permit caching of such data.</p></blockquote><p><anchor-end xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:" a0:anchor="12" xmlns:a0="urn:x-suika-fam-cx:markup:suikawiki:0:9:">[12]</anchor-end> Content-ID 値は幾つかの文脈で <anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">MIME</anchor> 
<anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">実体</anchor>を唯一的に特定するために使われ得ます。
とりわけ message/external-body 
の仕組みでは参照データのキャッシュのために使われます。
Content-ID 頭は一般に省略可能ですが、任意の MIME
内容型 &quot;message/external-body&quot; 
のデータを生成する実装には使用することを強制します。
つまり、各 message/external-body 実体は必ず Content-ID
欄を持ってそうしたデータのキャッシュを可能にしなければなりません。</p><blockquote><p>It is also worth noting that the Content-ID value has special
semantics in the case of the multipart/alternative media type.  This
is explained in the section of RFC 2046 dealing with
multipart/alternative.</p></blockquote><p><anchor-end xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:" a0:anchor="13" xmlns:a0="urn:x-suika-fam-cx:markup:suikawiki:0:9:">[13]</anchor-end> Content-ID 値は multipart/alternative 
内容型の場合に特別な意味を持つことにも注意しておく必要があります。
これはこの文書の multipart/alternative の処理の節で説明しています。</p><comment-p xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:10:"><anchor-end xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:" a0:anchor="50" xmlns:a0="urn:x-suika-fam-cx:markup:suikawiki:0:9:">[50]</anchor-end> <anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">訳注</anchor>: <anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">message/external-body媒体型</anchor>及び
<anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">multipart/alternative媒体型</anchor>を参照。</comment-p></figure><section><h1></h1><ul><li><anchor-end xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:" a0:anchor="14" xmlns:a0="urn:x-suika-fam-cx:markup:suikawiki:0:9:">[14]</anchor-end> <weak xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">2002-12-10 (火) 20:19</weak> <em><anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">名無しさん</anchor></em>: CID を未だに正しく使わない <anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">UA</anchor> があります。特に <anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">M$</anchor> 製品, 例えば <anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">Windoze</anchor> XP 付属の <anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">M$NExplorer</anchor> の「ようこそ」メッセージは、画像<anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">部分</anchor>の Content-ID: 欄の値を foo.gif のような名前にし、 <anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">HTML</anchor> 部分の <anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">img要素</anchor>の <anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">src属性</anchor>を cid:foo.gif とするような<strong>激しい規格違反</strong>を平気でしています。どうせ M$ のことですから、<anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">プロトコルの脱共有化</anchor>かなんかの一環として積極的にやってるんでしょう。</li><li><anchor-end xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:" a0:anchor="15" xmlns:a0="urn:x-suika-fam-cx:markup:suikawiki:0:9:">[15]</anchor-end> <anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">HTML+</anchor> では、複数部分で form 入力を送る時に <code>Content-ID:</code> 欄を <anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">URI</anchor> として使う云々と言っています (<em>Sending form data to an HTTP server</em> <anchor-external xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:" a0:resScheme="URI" xmlns:a0="urn:x-suika-fam-cx:markup:suikawiki:0:9:" a0:resParameter="http://www.w3.org/MarkUp/HTMLPlus/htmlplus_42.html">http://www.w3.org/MarkUp/HTMLPlus/htmlplus_42.html</anchor-external>)。 <anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">cid:</anchor> URI が規定される前ですし、 <anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">HTTP</anchor> の <anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">Message-ID:</anchor> 欄は <anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">URI</anchor> を指定するとされていたことから考えても、この当時から <code>Content-ID:</code> 欄に URI を入れようと考えていたことが推察されます。 (ただ例示がないので確かではありません。)</li><li><anchor-end xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:" a0:anchor="16" xmlns:a0="urn:x-suika-fam-cx:markup:suikawiki:0:9:">[16]</anchor-end> <anchor-internal xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:" a0:anchor="15" xmlns:a0="urn:x-suika-fam-cx:markup:suikawiki:0:9:">&gt;&gt;15</anchor-internal> これは実装されてたんでしょうかね? <anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">Arena</anchor> とかで。</li></ul><p><anchor-end xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:" a0:anchor="17" xmlns:a0="urn:x-suika-fam-cx:markup:suikawiki:0:9:">[17]</anchor-end> <cite xml:lang="en">RFC 5621 - Message Body Handling in the Session Initiation Protocol (SIP)</cite>
(<time>2009-09-12 07:37:40 +09:00</time> 版)
<anchor-external xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:" a0:resScheme="URI" xmlns:a0="urn:x-suika-fam-cx:markup:suikawiki:0:9:" a0:resParameter="http://tools.ietf.org/html/rfc5621#section-9.2">http://tools.ietf.org/html/rfc5621#section-9.2</anchor-external></p><p><anchor-end xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:" a0:anchor="18" xmlns:a0="urn:x-suika-fam-cx:markup:suikawiki:0:9:">[18]</anchor-end> <cite xml:lang="ja">デコメ。auのContent-IDの制約。@はひとつだけ。 - CPA-LABテクニカル</cite>
(<time>2009-10-16 09:00:00 +09:00</time> 版)
<anchor-external xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:" a0:resScheme="URI" xmlns:a0="urn:x-suika-fam-cx:markup:suikawiki:0:9:" a0:resParameter="http://www.cpa-lab.com/tech/0135">http://www.cpa-lab.com/tech/0135</anchor-external></p><p><anchor-end xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:" a0:anchor="19" xmlns:a0="urn:x-suika-fam-cx:markup:suikawiki:0:9:">[19]</anchor-end> <cite xml:lang="en">RFC 4463 - A Media Resource Control Protocol (MRCP) Developed by Cisco, Nuance, and Speechworks</cite>
( (<time>2011-12-04 10:31:11 +09:00</time> 版))
<anchor-external xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:" a0:resScheme="URI" xmlns:a0="urn:x-suika-fam-cx:markup:suikawiki:0:9:" a0:resParameter="http://tools.ietf.org/html/rfc4463#section-5.4.5">http://tools.ietf.org/html/rfc4463#section-5.4.5</anchor-external></p><p><anchor-end xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:" a0:anchor="20" xmlns:a0="urn:x-suika-fam-cx:markup:suikawiki:0:9:">[20]</anchor-end> <cite xml:lang="en">RFC 4975 - The Message Session Relay Protocol (MSRP)</cite>
( (<time>2012-02-26 13:20:50 +09:00</time> 版))
<anchor-external xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:" a0:resScheme="URI" xmlns:a0="urn:x-suika-fam-cx:markup:suikawiki:0:9:" a0:resParameter="http://tools.ietf.org/html/rfc4975#page-38">http://tools.ietf.org/html/rfc4975#page-38</anchor-external></p><p><anchor-end xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:" a0:anchor="21" xmlns:a0="urn:x-suika-fam-cx:markup:suikawiki:0:9:">[21]</anchor-end> <cite xml:lang="en">RFC 6787 - Media Resource Control Protocol Version 2 (MRCPv2)</cite>
( (<time>2012-11-13 15:18:40 +09:00</time> 版))
<anchor-external xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:" a0:resScheme="URI" xmlns:a0="urn:x-suika-fam-cx:markup:suikawiki:0:9:" a0:resParameter="http://tools.ietf.org/html/rfc6787#section-6.2.7">http://tools.ietf.org/html/rfc6787#section-6.2.7</anchor-external></p><refs xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:"><ul xmlns="http://www.w3.org/1999/xhtml"><li><anchor-end xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:" a0:anchor="22" xmlns:a0="urn:x-suika-fam-cx:markup:suikawiki:0:9:">[22]</anchor-end> <cite>OData Version 4.0 Part 1: Protocol Plus Errata 01</cite> (<time>2014-09-04 16:00:00 +09:00</time> 版) <anchor-external xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:" a0:resScheme="URI" xmlns:a0="urn:x-suika-fam-cx:markup:suikawiki:0:9:" a0:resParameter="http://docs.oasis-open.org/odata/odata/v4.0/odata-v4.0-part1-protocol.html#_Toc370374937">http://docs.oasis-open.org/odata/odata/v4.0/odata-v4.0-part1-protocol.html#_Toc370374937</anchor-external></li></ul></refs><p><anchor-end xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:" a0:anchor="23" xmlns:a0="urn:x-suika-fam-cx:markup:suikawiki:0:9:">[23]</anchor-end> <anchor-internal xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:" a0:anchor="22" xmlns:a0="urn:x-suika-fam-cx:markup:suikawiki:0:9:">&gt;&gt;22</anchor-internal> も正しくない <code class="MIME" xml:lang="en"><anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">Content-ID:</anchor></code> の例を示しています。</p><p><anchor-end xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:" a0:anchor="24" xmlns:a0="urn:x-suika-fam-cx:markup:suikawiki:0:9:">[24]</anchor-end> <cite xml:lang="en">RFC 5547 - A Session Description Protocol (SDP) Offer/Answer Mechanism to Enable File Transfer</cite>
( (<time>2014-09-13 18:22:39 +09:00</time> 版))
<anchor-external xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:" a0:resScheme="URI" xmlns:a0="urn:x-suika-fam-cx:markup:suikawiki:0:9:" a0:resParameter="https://tools.ietf.org/html/rfc5547#section-6">https://tools.ietf.org/html/rfc5547#section-6</anchor-external></p><p><anchor-end xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:" a0:anchor="28" xmlns:a0="urn:x-suika-fam-cx:markup:suikawiki:0:9:">[28]</anchor-end> <anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">DRP</anchor> は <anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">HTTPヘッダー</anchor>として、値が <anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">URL</anchor> である <code class="HTTP" xml:lang="en"><anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">Content-ID:</anchor></code>
<anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">ヘッダー</anchor>を提案していました <src xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:10:"><anchor-internal xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:" a0:anchor="25" xmlns:a0="urn:x-suika-fam-cx:markup:suikawiki:0:9:">&gt;&gt;25</anchor-internal></src>。</p><refs xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:"><ul xmlns="http://www.w3.org/1999/xhtml"><li><anchor-end xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:" a0:anchor="25" xmlns:a0="urn:x-suika-fam-cx:markup:suikawiki:0:9:">[25]</anchor-end> <cite>The HTTP Distribution and Replication Protocol</cite>
( (<time>1999-02-05 02:56:54 +09:00</time> 版))
<anchor-external xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:" a0:resScheme="URI" xmlns:a0="urn:x-suika-fam-cx:markup:suikawiki:0:9:" a0:resParameter="http://www.w3.org/TR/NOTE-drp">http://www.w3.org/TR/NOTE-drp</anchor-external></li><li><anchor-end xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:" a0:anchor="26" xmlns:a0="urn:x-suika-fam-cx:markup:suikawiki:0:9:">[26]</anchor-end> <cite xml:lang="en">RFC 4229 - HTTP Header Field Registrations</cite> (<time>2014-11-02 18:53:20 +09:00</time> 版) <anchor-external xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:" a0:resScheme="URI" xmlns:a0="urn:x-suika-fam-cx:markup:suikawiki:0:9:" a0:resParameter="http://tools.ietf.org/html/rfc4229#section-2.1.24">http://tools.ietf.org/html/rfc4229#section-2.1.24</anchor-external></li></ul></refs><p><anchor-end xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:" a0:anchor="27" xmlns:a0="urn:x-suika-fam-cx:markup:suikawiki:0:9:">[27]</anchor-end> <anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">RFC 4229</anchor> は <anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">DRP</anchor> <src xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:10:"><anchor-internal xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:" a0:anchor="25" xmlns:a0="urn:x-suika-fam-cx:markup:suikawiki:0:9:">&gt;&gt;25</anchor-internal></src> を出典に <anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">HTTPヘッダー</anchor>の
<anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">IANA登録簿</anchor>に状態「<anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">情報提供</anchor>」で登録しています <src xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:10:"><anchor-internal xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:" a0:anchor="26" xmlns:a0="urn:x-suika-fam-cx:markup:suikawiki:0:9:">&gt;&gt;26</anchor-internal></src>。</p><p><anchor-end xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:" a0:anchor="29" xmlns:a0="urn:x-suika-fam-cx:markup:suikawiki:0:9:">[29]</anchor-end> <cite xml:lang="en">RFC 2392 - Content-ID and Message-ID Uniform Resource Locators</cite>
( (<time>2014-12-22 15:20:11 +09:00</time> 版))
<anchor-external xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:" a0:resScheme="URI" xmlns:a0="urn:x-suika-fam-cx:markup:suikawiki:0:9:" a0:resParameter="https://tools.ietf.org/html/rfc2392">https://tools.ietf.org/html/rfc2392</anchor-external></p><p><anchor-end xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:" a0:anchor="30" xmlns:a0="urn:x-suika-fam-cx:markup:suikawiki:0:9:">[30]</anchor-end> <cite xml:lang="en-US">Batch Requests | ArangoDB Documentation</cite>
( (<time>2015-01-13 16:43:59 +09:00</time> 版))
<anchor-external xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:" a0:resScheme="URI" xmlns:a0="urn:x-suika-fam-cx:markup:suikawiki:0:9:" a0:resParameter="https://docs.arangodb.com/HttpBatchRequest/README.html">https://docs.arangodb.com/HttpBatchRequest/README.html</anchor-external></p><p><anchor-end xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:" a0:anchor="47" xmlns:a0="urn:x-suika-fam-cx:markup:suikawiki:0:9:">[47]</anchor-end> <cite xml:lang="en">RFC 5621 - Message Body Handling in the Session Initiation Protocol (SIP)</cite>
(<time>2015-06-21 16:17:31 +09:00</time> 版)
<anchor-external xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:" a0:resScheme="URI" xmlns:a0="urn:x-suika-fam-cx:markup:suikawiki:0:9:" a0:resParameter="https://tools.ietf.org/html/rfc5621">https://tools.ietf.org/html/rfc5621</anchor-external></p><figure class="quote"><figcaption><anchor-end xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:" a0:anchor="48" xmlns:a0="urn:x-suika-fam-cx:markup:suikawiki:0:9:">[48]</anchor-end> <cite xml:lang="en">Batching Requests  |  Gmail API  |  Google Developers</cite>
(<time>2015-10-08 03:21:07 +09:00</time> 版)
<anchor-external xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:" a0:resScheme="URI" xmlns:a0="urn:x-suika-fam-cx:markup:suikawiki:0:9:" a0:resParameter="https://developers.google.com/gmail/api/guides/batch">https://developers.google.com/gmail/api/guides/batch</anchor-external></figcaption><blockquote><p>If a given part of the request had a Content-ID header, then the corresponding part of the response has a matching Content-ID header, with the original value preceded by the string response-, as shown in the following example.</p></blockquote></figure><figure class="quote"><figcaption><anchor-end xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:" a0:anchor="49" xmlns:a0="urn:x-suika-fam-cx:markup:suikawiki:0:9:">[49]</anchor-end> <cite xml:lang="ja">Google アナリティクス API リクエストのバッチ処理  |  アナリティクス Real Time Reporting API  |  Google Developers</cite>
( (<time>2016-09-30 03:30:47 +09:00</time>))
<anchor-external xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:" a0:resScheme="URI" xmlns:a0="urn:x-suika-fam-cx:markup:suikawiki:0:9:" a0:resParameter="https://developers.google.com/analytics/devguides/reporting/realtime/v3/batching">https://developers.google.com/analytics/devguides/reporting/realtime/v3/batching</anchor-external></figcaption><blockquote><p>リクエストのパーツに Content-ID ヘッダーがある場合、対応する応答のパーツには、それに一致する Content-ID ヘッダーが指定されます。応答のパーツのヘッダーは、以下の例に示すように、元の値の先頭に文字列 response- が付いた値となります。</p></blockquote></figure></section></section></body></html>