Network Working Group G. Klyne
Internet-Draft MIMEsweeper Group
Expires: March 25, 2002 Sep 24, 2001
A URN sub-namespace for message headers
draft-klyne-urn-ietf-rfc822-00
Status of this Memo
This document is an Internet-Draft and is in full conformance with
all provisions of Section 10 of RFC2026.
Internet-Drafts are working documents of the Internet Engineering
Task Force (IETF), its areas, and its 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
and may be updated, replaced, or obsoleted by other documents at any
time. It is inappropriate to use Internet-Drafts as reference
material or to cite them other than as "work in progress."
The list of current Internet-Drafts can be accessed at
http://www.ietf.org/ietf/1id-abstracts.txt.
The list of Internet-Draft Shadow Directories can be accessed at
http://www.ietf.org/shadow.html.
This Internet-Draft will expire on March 25, 2002.
Copyright Notice
Copyright (C) The Internet Society (2001). All Rights Reserved.
Abstract
This specification defines a form of URI to be used to identify email
and MIME message headers, defined by RFC 2822 and related documents.
Klyne Expires March 25, 2002 [Page 1]
Internet-Draft URNs for message headers Sep 2001
Table of Contents
1. Introduction . . . . . . . . . . . . . . . . . . . . . . . . . 3
1.1 Message metadata . . . . . . . . . . . . . . . . . . . . . . . 3
1.2 Definitions of message headers . . . . . . . . . . . . . . . . 3
2. Registration template . . . . . . . . . . . . . . . . . . . . 4
3. Examples . . . . . . . . . . . . . . . . . . . . . . . . . . . 5
4. IANA considerations . . . . . . . . . . . . . . . . . . . . . 5
5. Security considerations . . . . . . . . . . . . . . . . . . . 5
6. Acknowledgements . . . . . . . . . . . . . . . . . . . . . . . 5
References . . . . . . . . . . . . . . . . . . . . . . . . . . 5
Author's Address . . . . . . . . . . . . . . . . . . . . . . . 8
A. Revision history . . . . . . . . . . . . . . . . . . . . . . . 8
A.1 draft-klyne-urn-ietf-rfc822-00 . . . . . . . . . . . . . . . . 8
B. Todo . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 8
Full Copyright Statement . . . . . . . . . . . . . . . . . . . 9
Klyne Expires March 25, 2002 [Page 2]
Internet-Draft URNs for message headers Sep 2001
1. Introduction
This specification defines a form of URI to be used to identify email
and MIME message headers, defined by RFC 2822 [20] and related
documents. The URI scheme used is 'urn:' as defined by RFC 2141
[11], and the URN namespace used is 'ietf', defined by RFC 2648 [18]
and extended by RFC ???? [26] to include names for IETF protocol
parameters.
1.1 Message metadata
Internet message headers convey a range of information about a
message that can be useful to applications other than those involved
directly in message transfer and presentation. Much personal and
corporate knowledge resides in email and other message stores, and
message headers are a rich source of metadata about the contents of
these stores.
There has been a growth of interest in extracting, storing and using
metadata about Internet resources, particularly in connection with
the World Wide Web. Traditionally, message headers have been used
during the process of transferring and presenting a message, and
otherwise pretty much ignored. This specification aims to facilitate
the exchange of metadata derived from message headers.
Much of the work on WWW information and metadata structures is based
on XML [23]. XML employs an extensibility model, XML namespaces
[24], that uses URIs to qualify local element and attribute names
used in an XML document. One XML-based metadata format developed by
the World Wide Web consortium is RDF [25]; this uses URIs to identify
the resources described, and the relationships between them.
The goal of this specification is to define a URI form for
identifying Internet message headers, which allows them to be
incorporated into XML formatted data; e.g. as in "An XML format for
mail and other messages" [27]. This form might also be used with
non-XML specifications that employ a URI-based extensibility model,
such as the common profile for instant messaging format specification
[28].
1.2 Definitions of message headers
RFC 2822 [20] defines a general syntax for Internet message headers.
It also defines a number of headers to be used with Internet mail.
Other specifications define additional headers that can appear in an
Internet message: RFC 1036 [1], RFC 2156 [12], RFC 1496 [2], RFC 1766
[4], RFC 2183 [13], RFC 1864 [5], RFC 2421[15] and RFC 2045 [6], to
name a few.
Klyne Expires March 25, 2002 [Page 3]
Internet-Draft URNs for message headers Sep 2001
Internet applications that use (some of) these message headers
include Internet mail [19][20], NNTP newsgroup feeds [1], HTTP web
access [17] and any other that uses MIME [6] encapsulation of message
content.
2. Registration template
The URN sub-namespace for message headers is defined as follows.
Registry name:
message-header
Specification:
RFC 2822 [16].
Repository:
The primary definition of Internet message headers is RFC 2822
[16]. Currently, there is no IANA registry for Internet message
headers, and additional header names are defined in a variety of
standards-track RFC documents, including: RFC 1036 [1], RFC 1496
[2], RFC 1505 [3], RFC 1766 [4], RFC 1864 [5], RFC 2156 [12], RFC
2183 [13], RFC 2045 [6], RFC 2110 [8], RFC 2298 [9], RFC 2369
[10], RFC 2421 [15], RFC 2912 [21] and RFC 2919 [22].
A summary of defined message headers can be found in RFC 2076 [7],
and updates [29].
Index value:
The header name is the index value. RFC 2822 allows a header name
to contain any printable, non-space US-ASCII character (i.e.,
characters that have US-ASCII codes between 33 and 126,
inclusive), except colon (":"). Header names are case-
insensitive.
URN formation:
The URN for a message header name is formed as:
"urn:ietf:params:message-header:<header-name>", where <header-
name> is the message header index value expressed using lower-case
letters.
RFC 2141 [11] defines the format of URNs. Allowable characters
include upper- or lower-case ASCII letters, decimal digits, "(",
")", "+", ",", "-", ".", ":", "=", "@", ";", "$", "_", "!", "*"
and "'". Any other character, or any '%' character, that appears
as part of a header name should be replaced by its %-encoded
equivalent (per URI specification [14]); e.g. '%' is represented
as '%25', '/' as '%2f', etc.
Klyne Expires March 25, 2002 [Page 4]
Internet-Draft URNs for message headers Sep 2001
URNs are defined by RFC 2141 [11] as lexically equivalent if they
are identical following case normalization of the urn scheme name,
the namespace name and any %-escaping used. Header names are
defined such that upper- and lower-case ASCII characters are not
distinguished. Therefore, in forming a URN, all ASCII characters
in the header name must be expressed in lower case.
3. Examples
This table lists some header names, and the corresponding urn: URIs.
From:
urn:ietf:params:message-header:from
To:
urn:ietf:params:message-header:to
X-Envelope-From:
urn:ietf:params:message-header:x-envelope-from
Content-MD5:
urn:ietf:params:message-header:content-md5
4. IANA considerations
This document calls for the creation of a new IETF sub-namespace, per
RFC???? [26]. Registration details are in the preceding section.
5. Security considerations
No security considerations are introduced by this specification
beyond those already inherrent in use of message headers.
6. Acknowledgements
The author gratefully acknowledges the contributions of: Leslie
Daigle, Larry Masinter, [[[...]]]
References
[1] Horton, M. and R. Adams, "Standard for interchange of USENET
messages", RFC 1036, December 1987.
[2] Alvestrand, H., Jordan, K. and J. Romaguera, "Rules for
downgrading messages from X.400/88 to X.400/84 when MIME
content-types are present in the messages", RFC 1496, August
Klyne Expires March 25, 2002 [Page 5]
Internet-Draft URNs for message headers Sep 2001
1993.
[3] Costanzo, A., Robinson, D. and R. Ullmann, "Encoding Header
Field for Internet Messages", RFC 1505, August 1993.
[4] Alvestrand, H., "Tags for the Identification of Languages", RFC
1766, March 1995.
[5] Myers, J. and M. Rose, "The Content-MD5 Header Field", RFC
1864, October 1995.
[6] Freed, N. and N. Borenstein, "Multipurpose Internet Mail
Extensions (MIME) Part One: Format of Internet Message Bodies",
RFC 2045, November 1996.
[7] Palme, J., "Common Internet Message Headers", RFC 2076,
February 1997.
[8] Palme, J. and A. Hopmann, "MIME E-mail Encapsulation of
Aggregate Documents, such as HTML (MHTML)", RFC 2110, March
1997.
[9] Fajman, R., "An Extensible Message Format for Message
Disposition Notifications", RFC 2298, March 1998.
[10] Baer, J. and G. Neufeld, "The Use of URLs as Meta-Syntax for
Core Mail List Commands and their Transport through Message
Header Fields", RFC 2369, July 1998.
[11] Moats, R., "URN Syntax", RFC 2141, May 1997.
[12] Kille, S., "MIXER (Mime Internet X.400 Enhanced Relay): Mapping
between X.400 and RFC 822/MIME", RFC 2156, January 1998.
[13] Moore, K., Troost, R. and S. Dorner, "Communicating
Presentation Information in Internet Messages: The Content-
Disposition Header Field", RFC 2183, August 1997.
[14] Berners-Lee, T., Fielding, R. and L. Masinter, "Uniform
Resource Identifiers (URI): Generic Syntax", RFC 2396, August
1998.
[15] Parsons, G. and G. Vaudreuil, "Voice Profile for Internet Mail
- version 2", RFC 2421, September 1998.
[16] Holtman, K., Mutz, A. and T. Hardie, "Media Feature Tag
Registration Procedure", BCP 31, RFC 2506, March 1999.
Klyne Expires March 25, 2002 [Page 6]
Internet-Draft URNs for message headers Sep 2001
[17] Fielding, R., Gettys, J., Mogul, J., Nielsen, H., Masinter, L.,
Leach, P. and T. Berners-Lee, "Hypertext Transfer Protocol --
HTTP/1.1", RFC 2616, June 1999.
[18] Moats, R., "A URN Namespace for IETF Documents", RFC 2648,
August 1999.
[19] Klensin, J., "Simple Mail Transfer Protocol", RFC 2821, April
2001.
[20] Resnick, P., "Internet Message Format", RFC 2822, April 2001.
[21] Klyne, G., "Indicating Media Features for MIME Content", RFC
2912, September 2000.
[22] Chandhok, R. and G. Wenger, "List-Id: A Structured Field and
Namespace for the Identification of Mailing Lists", RFC 2919,
April 2001.
[23] Bray, T., Paoli, J., Sperberg-McQueen, C. and E. Maler,
"Extensible Markup Language (XML) 1.0 (2nd ed)", W3C
Recommendation xml, October 2000,
<http://www.w3.org/TR/2000/REC-xml-20001006>.
[24] Bray, T., Hollander, D. and A. Layman, "Namespaces in XML", W3C
Recommendation xml-names, January 1999,
<http://www.w3.org/TR/REC-xml-names>.
[25] Lassila, O. and R. Swick, "Resource Description Framework (RDF)
Model and Syntax Specification", W3C Recommendation rdf-syntax,
February 1999, <http://www.w3.org/TR/REC-rdf-syntax>.
[26] Mealling, M., Masinter, L., Hardie, T. and G. Klyne, "An IETF
URN Sub-namespace for Registered Protocol Parameters", Internet
draft draft-mealling-iana-urn-01, August 2001,
<http://search.ietf.org/internet-drafts/draft-mealling-iana-
urn-01.txt>.
[27] Klyne, G., "An XML format for mail and other messages",
Internet draft draft-klyne-message-rfc822-xml-02, September
2001, <http://search.ietf.org/internet-drafts/draft-klyne-
message-rfc822-xml-02.txt>.
[28] Klyne, G., "Common Presence and Instant Messaging: Message
Format", Internet draft draft-ietf-impp-cpim-msgfmt-03, June
2001, <http://search.ietf.org/internet-drafts/draft-ietf-impp-
cpim-msgfmt-03.txt>.
Klyne Expires March 25, 2002 [Page 7]
Internet-Draft URNs for message headers Sep 2001
[29] Palme, J., "Common Internet Message Header Fields", Internet
draft draft-palme-mailext-headers-05, May 2001,
<http://search.ietf.org/internet-drafts/draft-palme-mailext-
headers-05.txt>.
Author's Address
Graham Klyne
MIMEsweeper Group
1310 Waterside
Arlington Business Park
Theale, Reading RG7 4SA
UK
Phone: +44 118 903 8000
Fax: +44 118 903 9000
EMail: Graham.Klyne@MIMEsweeper.com
(This section to be removed on final publication)
00a 19-Sep-2001: document initially created.
00b 24-Sep-2001: fix some major typos. Rework introductory sections
to more clearly indicate motivation for this specification.
Changed sub-namespace identifier to message-header. Note that
various applications (not just email) use message headers.
(This section to be removed on final publication)
o Align with urn:ietf:params: draft as it develops.
o Review name of sub-namespace (currently "message-header").
Klyne Expires March 25, 2002 [Page 8]
Internet-Draft URNs for message headers Sep 2001
Full Copyright Statement
Copyright (C) The Internet Society (2001). All Rights Reserved.
This document and translations of it may be copied and furnished to
others, and derivative works that comment on or otherwise explain it
or assist in its implementation may be prepared, copied, published
and distributed, in whole or in part, without restriction of any
kind, provided that the above copyright notice and this paragraph are
included on all such copies and derivative works. However, this
document itself may not be modified in any way, such as by removing
the copyright notice or references to the Internet Society or other
Internet organizations, except as needed for the purpose of
developing Internet standards in which case the procedures for
copyrights defined in the Internet Standards process must be
followed, or as required to translate it into languages other than
English.
The limited permissions granted above are perpetual and will not be
revoked by the Internet Society or its successors or assigns.
This document and the information contained herein is provided on an
"AS IS" basis and THE INTERNET SOCIETY AND THE INTERNET ENGINEERING
TASK FORCE DISCLAIMS ALL WARRANTIES, EXPRESS OR IMPLIED, INCLUDING
BUT NOT LIMITED TO ANY WARRANTY THAT THE USE OF THE INFORMATION
HEREIN WILL NOT INFRINGE ANY RIGHTS OR ANY IMPLIED WARRANTIES OF
MERCHANTABILITY OR FITNESS FOR A PARTICULAR PURPOSE.
Acknowledgement
Funding for the RFC Editor function is currently provided by the
Internet Society.
Klyne Expires March 25, 2002 [Page 9]