Registration of xmlns Media Feature Tag
Network Working GroupS. St.Laurent
Internet-DraftO'Reilly & Associates
Expires: July 24, 2002January 23, 2002

Registration of xmlns Media Feature Tag

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

The list of Internet-Draft Shadow Directories can be accessed at

This Internet-Draft will expire on July 24, 2002.

Copyright Notice

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


This document registers a media feature tag 'xmlns', per RFC 2506, intended for use in a Content-features header to indicate the XML namespaces used in an XML document. This information augments MIME content-type information, providing a finer granularity of content description for XML documents.


Table of Contents


1. Introduction

MIME Content-Type identifiers have proven very useful as tools for describing homogeneous information. They do not fare as well at describing content which is unpredictably heterogeneous. XML documents may be homogeneous, but are also frequently heterogeneous. It is not difficult to create, for instance, an XHTML[26] document which also contains RDF[19] metadata, MathML[20] equations, hypertext using XLink[22], XForms[25],and SVG[21] graphics. XSLT[17] stylesheets routinely include information in both the XSLT namespace and in the namespace of the format resulting from proper execution of the stylesheet.

This document specifies a Media Feature which identifies the URIs used as XML namespaces[14] in a given XML document. While a list of namespaces cannot tell a recipient application everything about the use of those namespaces and their interactions in a given document, it can provide a baseline set of expectations.

A program may be better able to choose among a set of XSLT stylesheets if it knows the namespaces of the results they generate, or a renderer may take advantage of foreknowledge to begin setting up components before content actually arrives. Processors working with SOAP[18] envelopes may find it useful to know what they will be facing inside the envelope. Applications faced with "unknown" XML namespaces may want to attempt to download RDDL[16] documents to collect information on how to process them. Applications may also choose to reject documents containing unknown namespaces.

This feature is designed primarily to be used with the XML Media Types defined in RFC 3023[12]. By providing additional information about the content of the document beyond its overall type, it provides XML applications with a more comprehensive view of information they may (or may not) wish to process, potentially avoiding wasted parsing and processing.


2. Registration

Media feature tag name:
ASN.1 identifier associated with feature tag:
New assignment by IANA
Summary of the media feature indicated by this feature tag:
This feature tag is used to identify XML namespaces either contained in a given document or processable by a given recipient.
Values appropriate for use with this feature tag:
The feature tag must contain a String conforming to the RFC 2396[4] syntax for URI references, as restricted by plenary[15]. URI references must be absolute.
The feature tag is intended primarily for use in the following applications, protocols, services, or negotiation mechanisms:
Any protocol that exchanges XML-formatted information in MIME encapsulation
Examples of typical use:

For an XHTML document containing SVG, MathML, SMIL, and XLink content:

     Content-Type: application/xhtml+xml
     Content-features: (|

Or, using multiple Content-features headings:

     Content-Type: application/xhtml+xml
     Content-features: (xmlns="")
     Content-features: (xmlns="")
     Content-features: (xmlns="")
     Content-features: (xmlns="")
     Content-features: (xmlns="")

For an application indicating that it accepts SMIL, XHTML, or SVG content:

  (| (xmlns="");q=1.0
Applications that want to specify combinations of namespaces they consider acceptable may do so using combinations of & and |, and may also mix the xmlns feature with other media features, as described in RFC 2533[6].
Related standards or documents:
Namespaces in XML[14], XML Media Types[12]
Considerations particular to use in individual applications, protocols, services, or negotiation mechanisms:
Interoperability considerations:
Security considerations:
If it is known that there is a security bug in the handling of a particular namespace in a particular environment, knowing that a device can accept that namespace may slightly help an attacker.
Additional information:
Name(s) & email address(es) of person(s) to contact for further information:
Simon St.Laurent <>
Intended usage
Author/Change controller:


3. Registration issues

3.1 General interest to the Internet Community

While XML processing may generally seem like something specific to the XML community, XML's reach is growing rapidly. XML is now in regular use for Web Services (XML-RPC, SOAP), vector graphics (SVG), mathematics (MathML), instant messaging (Jabber), information transformation (XSLT), and a wide variety of other projects.

Because of this general and growing interest, this document recommends registering the 'xmlns' feature in the IETF tree per RFC 2506[5].

3.2 Namespaces as Media Features

Namespaces are not strictly presentational media information, as are many of the previously registered media features. They do, however, define the set of tools used to present information, much as the type[10], charset[11], and language[11] media features do.

3.3 Relation to MIME Media Types

While namespaces, especially on the root element, are often linked to a particular MIME Media Type, these connections are not always direct.

There are well-known cases (especially in XSLT) where the root element's relation to the rest of the document is misleading. A commonly-used XSLT practice uses a shell document with stylesheet instructions nested inside. Applications which only look at the namespace of the root document will encounter trouble (whether they notice it or not) in rendering the document as expected by its designers and probable readers.

There are other cases where the root element's relation to the rest of the document is tenuous or even irrelevant. A collection of rules for processing namespaces[28], for one example, can contain rules in various namespaces, and can even reside quite naturally in documents whose root element has nothing explicit to do with namespace processing.

In these cases, some mechanism must determine the overall MIME Media Type. The list of xmlns Media Features can supplement the Media Type, but applications should look to the Media Type initially.

3.4 Security Considerations

Security considerations for this registration are listed in the registration above. Considerations for Media Features in general are described in RFC 2506.

3.5 IANA Considerations

Section 2 of this document calls for the registration of a media feature tag, per RFC 2506.



[1] Freed, N. and N. Borenstein, "Multipurpose Internet Mail Extensions (MIME) Part One: Format of Internet Message Bodies", RFC 2045, November 1996.
[2] Freed, N. and N. Borenstein, "Multipurpose Internet Mail Extensions (MIME) Part Two: Media Types", RFC 2046, November 1996.
[3] Freed, N., Klensin, J. and J. Postel, "Multipurpose Internet Mail Extensions (MIME) Part Four: Registration Procedures", RFC 2048, November 1996.
[4] Berners-Lee, T., Fielding, R. and L. Masinter, "Uniform Resource Identifiers (URI): Generic Syntax", RFC 2396, August 1998.
[5] Holtman, K., Mutz, A. and T. Hardie, "Media Feature Tag Registration Procedure", RFC 2506, March 1999.
[6] Klyne, G., "A Syntax for Describing Media Feature Sets", RFC 2533, March 1999.
[7] 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.
[8] Rose, M., "Writing I-Ds and RFCs using XML", RFC 2629, June 1999.
[9] Klyne, G., "Indicating Media Features for MIME Content", RFC 2912, September 2000.
[10] Klyne, G., "MIME Content Types in Media Feature Expressions", RFC 2913, September 2000.
[11] Hoffman, P., "Registration of Charset and Languages Media Features Tags", RFC 2987, November 2000.
[12] Murata, M., St.Laurent, S. and D. Kohn, "XML Media Types", RFC 3023, January 2001.
[13] Bray, T., Paoli, J. and C. Sperberg-McQueen, "Extensible Markup Language (XML) 1.0", World Wide Web Consortium Recommendation REC-xml, February 1998.
[14] Bray, T., Hollander, D. and A. Layman, "Namespaces in XML", World Wide Web Consortium Recommendation REC-xml-names, January 1999.
[15] Connolly, D., "W3C XML Plenary Decision on relative URI References In namespace declarations", September 2000.
[16] Borden, J. and T. Bray, "Resource Directory Description Language (RDDL)", June 2001.
[17] Clark , J., "XSL Transformations (XSLT) Version 1.0", World Wide Web Consortium Recommendation XSLT, November 1999.
[18] Mitra , N., "SOAP Version 1.2", World Wide Web Consortium Working Draft SOAP, December 2001.
[19] Lassila, O. and R. Swick, "Resource Description Framework (RDF) Model and Syntax Specification", World Wide Web Consortium Recommendation RDF-syntax, February 1999.
[20] Carlisle, D., Ion, P., Miner, R. and N. Poppelier, "Mathematical Markup Language 2.0 (MathML)", World Wide Web Consortium Recommendation MathML, February 2001.
[21] Ferraiolo, J., "Scalable Vector Graphics (SVG)", World Wide Web Consortium Working Draft SVG, August 1999.
[22] DeRose, S., Maler, E. and D. Orchard, "XML Linking Language (XLink)", World Wide Web Consortium Recommendation XLink, June 2001.
[23] DeRose, S., Daniel Jr., R. and E. Maler, "XML Pointer Language (XPointer)", World Wide Web Consortium Working Draft XPointer, July 1999.
[24] Marsh, J., "XML Base", World Wide Web Consortium Recommendation XML Base, June 2000.
[25] Dubinko, M., Dietl, J., Klotz, L., Merrick, R. and T. Raman, "XForms 1.0", World Wide Web Consortium Working Draft XForms, January 2002.
[26] Pemberton, S. and et al, "XHTML 1.0: The Extensible HyperText Markup Language", World Wide Web Consortium Recommendation REC-xhtml1, January 2000.
[27] Altheim, M. and S. McCarron, "XHTML 1.1: Module-based XHTML", World Wide Web Consortium Recommendation REC-xhtml11, January 2000.
[28] St.Laurent, S., "Namespaces for Namespace-based Processing", September 2001.


Author's Address

  Simon St.Laurent
  O'Reilly & Associates
  1259 Dryden Road
  Ithaca, New York 14850


Appendix A. Acknowledgements

Thanks to Graham Klyne, Jonathan Borden, Murata Makoto, Edd Dumbill, and Eric van der Vlist for editorial and technical comments on an early version of this document. Their help does not, of course, constitute endorsement.


Appendix B. Revision History

00 - First version.

01 - Fixed typos in abstract and introduction. Restored colons to examples. Added XForms to introduction. Added section "Relation to MIME Media Types". Added references for XForms and Namespaces for Namespace-based Processing.

[To be deleted before publication.]


Full Copyright Statement