MIMESGML Working Group E. Levinson Internet Draft: CID and MID URLs 1 October 1996 Content-ID and Message-ID Uniform Resource Locators This draft document is being circulated for comment. Please send your comments to the authors or to the mhtml mail list . If consensus is reached, this Access Type may be registered with IANA and this document may be submitted to the RFC editor as an Informational protocol specification. Status of this Memo This document is an Internet Draft; Internet Drafts are working documents of the Internet Engineering Task Force (IETF) its Areas, and Working Groups. Note that other groups may also distribute working documents as Internet Drafts. Internet Drafts are draft documents valid for a maximum of six months. They may be updated, replaced, or obsoleted by other documents at any time. It is not appropriate to use Internet Drafts as reference material or to cite them other than as a "working draft" or "work in progress". Please check the abstract listing in each Internet Draft directory for the current status of this or any other Internet Draft. Abstract 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. Change log "images" -> "images or other data". Corrected typos: "body body", "to to", and "URLs takes". Added examples to section 2 and cleaned up references. Changes suggested by Larry Masinter. Clarification suggested by Jacob Palme. 1. Introduction Levinson Expires April 1997 [Page 1] Internet Draft Message- & Content-ID URLs 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". The "mid" (Message-ID) and "cid" (Content-ID) URL schemes provide iden- tifiers 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 mes- sage. 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 con- tent-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 Multi- part message. 2. The MID and CID URL Schemes RFC1738 [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 ] Note: in Internet mail messages, the addr-spec in a Content-ID [MIME] or Message-ID [822] header are 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 Levinson Expires April 1997 [Page 2] Internet Draft Message- & Content-ID URLs 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. A implementation conforming to this specification MUST support the "mid" URL long form (message-id/content-id). Implementations MAY take advan- tage 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. In those cases, the corresponding selection rules (e.g., for selecting an appropriate alternate of multipart/alternate) will A "cid" URL is converted to the corresponding Content-ID message header [MIME] by removing the "cid:" prefix, converting %hh hex-escaped charac- ters to their ASCII equivalents and enclosing the remaining parts with an angle bracket pair, "<" and ">". For example, "mid:foo4%25foo1@bar.net" corresponds to Message-ID: A "mid" URL is converted to a Message-ID or Message-ID/Content-ID pair in a similar fashion. A msgmid (cidurl) can be converted to its corresponding Message-ID (Con- tent-ID) by removing the "mid:" ("cid:) prefix, converting escaped char- acters to their ASCII equivalent, and enclosing the remaining part with an angle bracket pair, "<" and ">". Ignoring the escape mechanism, "mid:_addr-spec_" has the message-id "<_addr-spec_>". Similarly, a msg- cid can be converted to a message-id, content-id pair. Both message-id and content-id are required to be globally unique. That is, no two different messages will ever have the same Message-ID addr- spec; no different body parts will ever have the # same Content-ID addr- spec. A common technique used by many message systems is to use a time and date stamp along with the local host's domain name, e.g., 950124.162336@XIson.com. Levinson Expires April 1997 [Page 3] Internet Draft Message- & Content-ID URLs Some Examples The following message contains an HTML body part that refers to an image contained in another body part. Both body parts are contained in a Mul- tipart/Related MIME entity. The HTML IMG tag contains a cidurl which points to the image. From: foo1@bar.net To: foo2@bar.net Subject: A simple example Mime-Version: 1.0 Content-Type: multipart/related; boundary="boundary-example-1"; type=Text/HTML --boundary-example 1 Content-Type: Text/HTML; charset=US-ASCII ... text of the HTML document, which might contain a hyperlink to the other body part, for example through a statement such as: IETF logo --boundary-example-1 Content-ID: foo4*foo1@bar.net Content-Type: IMAGE/GIF Content-Transfer-Encoding: BASE64 R0lGODlhGAGgAPEAAP/////ZRaCgoAAAACH+PUNvcHlyaWdodCAoQykgMTk5 NSBJRVRGLiBVbmF1dGhvcml6ZWQgZHVwbGljYXRpb24gcHJvaGliaXRlZC4A etc... --boundary-example-1-- The following message points to another message (hopefully still in the recipient's message store). From: bar@none.com To: phooey@all.com Subject: Here's how to do it Content-type: text/html; charset=usascii ... The items in my previous message, shows how the approach you propose can be used to accomplish ... Levinson Expires April 1997 [Page 4] Internet Draft Message- & Content-ID URLs 3. Security The URLs defined here provide an addressing or referencing mechanism. The values of these URLs disclose no more about the originators environ- ment than the corresponding Message-ID and Content-ID values. Where concern exists about such disclosures the originator of a message using mid and cid URLs must take precautions to insure that confidential information is not disclosed. Those precautions should already be in place to handle existing mail use of the Message-ID and Content-ID. 4. References [822] Crocker, D., "Standard for the Format of ARPA Internet Text Messages," August 1982, University of Delaware, STD 11, RFC 822. [MIME] N. Borenstein, N. Freed, "MIME (Multipurpose Internet Mail Extensions) Part One: Mechanisms for Specifying and Describ- ing the Format of Internet Message Bodies," September 1993, RFC 1521. [URL] Berners-Lee, T., Masinter, L., and McCahill, M., "Uniform Resource Locators (URL)," December 1994. [MULREL] E. Levinson, "The MIME Multipart/Related Content-type," Decem- ber 1995, RFC 1874. 5. Acknowledgments The original concept of "mid" and "cid" URLs were part of the Tim Bern- ers-Lee's original vision of the World Wide Web. The ideas and design have benefited greatly by discussions with Harald Alvestrand, Dan Con- nolly, Roy Fielding, Larry Masinter, Jacob Palme, and others in the MHTML working group. 6. Author's Address Edward Levinson 47 Clive Street Metuchen, NJ 08840-1060 USA +1 908 549 3716 Levinson Expires April 1997 [Page 5]