Content-ID and Message-ID Uniform Resource Locators
RFC 2392

Document Type RFC - Proposed Standard (August 1998; Errata)
Obsoletes RFC 2111
Author Ed Levinson 
Last updated 2020-01-21
Stream Internet Engineering Task Force (IETF)
Formats plain text html pdf htmlized (tools) htmlized with errata bibtex
Stream WG state (None)
Document shepherd No shepherd assigned
IESG IESG state RFC 2392 (Proposed Standard)
Consensus Boilerplate Unknown
Telechat date
Responsible AD (None)
Send notices to (None)
Network Working Group                                        E. Levinson
Request for Comments: 2392                                   August 1998
Obsoletes: 2111
Category: Standards Track

          Content-ID and Message-ID Uniform Resource Locators

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.

Copyright Notice

   Copyright (C) The Internet Society (1998).  All Rights Reserved.


   The Uniform Resource Locator (URL) schemes, "cid:" and "mid:" allow
   references to messages and the body parts of messages.  For example,
   within a single multipart message, one HTML body part might include
   embedded references to other parts of the same message.

Changes from (RFC 2111)

   Clarified the example on page 3 on of converting cid URLs to
   Content-IDs.  The example now uses a cid URL instead of an mid.

   Corrected the example messages to have the correct Content-ID form;
   they now use the angle brackets.  Added a Message-ID header to the
   second example.

1. Introduction

   The use of [MIME] within email to convey Web pages and their
   associated images requires a URL scheme to permit the HTML to refer
   to the images or other data included in the message.  The Content-ID
   Uniform Resource Locator, "cid:", serves that purpose.

   Similarly Net News readers use Message-IDs to link related messages
   together.  The Message-ID URL provides a scheme, "mid:", to refer to
   such messages as a "resource".

Levinson                    Standards Track                     [Page 1]
RFC 2392               Message- & Content-ID URLs            August 1998

   The "mid" (Message-ID) and "cid" (Content-ID) URL schemes provide
   identifiers for messages and their body parts.  The "mid" scheme uses
   (a part of) the message-id of an email message to refer to a specific
   message.  The "cid" scheme refers to a specific body part of a
   message; its use is generally limited to references to other body
   parts in the same message as the referring body part.  The "mid"
   scheme may also refer to a specific body part within a designated
   message, by including the content-ID's address.

   A note on terminology.  The terms "body part" and "MIME entity" are
   used interchangeably.  They refer to the headers and body of a MIME
   message, either the message itself or one of the body parts contained
   in a Multipart message.

2. The MID and CID URL Schemes

   RFC 1738 [URL] reserves the "mid" and "cid" schemes for Message-ID
   and Content-ID respectively.  This memorandum defines the syntax for
   those URLs.  Because they use the same syntactic elements they are
   presented together.

   The URLs take the form

     content-id    = url-addr-spec

     message-id    = url-addr-spec

     url-addr-spec = addr-spec  ; URL encoding of RFC 822 addr-spec

     cid-url       = "cid" ":" content-id

     mid-url       = "mid" ":" message-id [ "/" content-id ]

     Notes: In Internet mail messages, the addr-spec in a Content-ID
     [MIME] or Message-ID [822] header is enclosed in angle brackets
     (<>).  Since addr-spec in a Message-ID or Content-ID might contain
     characters not allowed within a URL; any such character (including
     "/", which is reserved within the "mid" scheme) must be hex-encoded
     using the %hh escape mechanism in [URL].

   A "mid" URL with only a "message-id" refers to an entire message.
   With the appended "content-id", it refers to a body part within a
   message, as does a "cid" URL.  The Content-ID of a MIME body part is
   required to be globally unique.  However, in many systems that store
   messages, body parts are not indexed independently their context
   (message).  The "mid" URL long form was designed to supply the
   context needed to support interoperability with such systems.

Levinson                    Standards Track                     [Page 2]
RFC 2392               Message- & Content-ID URLs            August 1998

   A implementation conforming to this specification is required to
   support the "mid" URL long form (message-id/content-id).  Conforming
   implementations can choose to, but are not required to, take
   advantage of the content-id's uniqueness and interpret a "cid" URL to
   refer to any body part within the message store.

   In limited circumstances (e.g., within multipart/alternate), a single
   message may contain several body parts that have the same Content-ID.
   That occurs, for example, when identical data can be accessed through
   different methods.  In those cases, conforming implementations are
   required to use the rules of the containing MIME entity (e.g.,
   multipart/alternate) to select the body part to which the Content-ID
Show full document text