Respect identifier scope and MIME context
04Message-ID and Content-ID values are required to be globally unique, with a limited same-data MIME exception for Content-ID. A reader still needs the right message and containing MIME rules to interpret a reference.
Limited exception: two message/external-body alternatives provide different ways to access identical data and share one Content-ID. The selected reader supports method A only, so it chooses that alternative. These are schematic access methods, not a full MIME selection or retrieval implementation.
Source for this drawing: RFC 2392 · Read RFC section 2 ↗
New to this? Start hereA quick picture + helpful background
A message needs an address.
Think of a packet as a small addressed envelope. Devices pass it onward; transport protocols decide what delivery promises an application gets.
Helpful first, if these ideas are unfamiliar
These pictures are analogies to help you learn. The linked RFC explains the actual rules.
Terms in this drawing
Related RFCs and changes
“Updates” changes part of an earlier RFC. “Obsoletes” replaces it. This list shows selected related documents.
Different messages require different Message-ID identifiers, and different body parts require different Content-ID identifiers. A timestamp plus a domain is a common technique mentioned by the RFC, not a mandated generator or proof of uniqueness.
- Different messages require different Message-ID identifiers, and different body parts require different Content-ID identifiers. A timestamp plus a domain is a common technique mentioned by the RFC, not a mandated generator or proof of uniqueness.
- CID use is generally limited to other body parts in the same message. A conforming implementation may optionally use global uniqueness for store-wide cid lookup; it is not required to provide that extra lookup scope.
- In limited circumstances, identical data accessible by alternative methods can have duplicate Content-ID values within one message. Selection must follow the containing MIME entity’s rules, rather than choosing an arbitrary first match.
- RFC 2046 §5.1.4 explains the multipart/alternative context: identical information can share an ID, but differing information should have different IDs, and the container’s own Content-ID must differ from the parts’ IDs.
Fictional .example identifiers; payloads are omitted. Consult the linked MIME and message-format specifications for complete parsing, retrieval and security requirements.
Read the RFC section ↗