draft-ietf-appsawg-mime-default-charset-01.txt | draft-ietf-appsawg-mime-default-charset-02.txt | |||
---|---|---|---|---|
Applications Area Working Group A. Melnikov | Applications Area Working Group A. Melnikov | |||
Internet-Draft Isode Limited | Internet-Draft Isode Limited | |||
Updates: 2046 (if approved) J. Reschke | Updates: 2046 (if approved) J. Reschke | |||
Intended status: Standards Track greenbytes | Intended status: Standards Track greenbytes | |||
Expires: October 1, 2012 March 30, 2012 | Expires: October 23, 2012 April 21, 2012 | |||
Update to MIME regarding Charset Parameter Handling in | Update to MIME regarding Charset Parameter Handling in | |||
Textual Media Types | Textual Media Types | |||
draft-ietf-appsawg-mime-default-charset-01 | draft-ietf-appsawg-mime-default-charset-02 | |||
Abstract | Abstract | |||
This document changes RFC 2046 rules regarding default charset | This document changes RFC 2046 rules regarding default charset | |||
parameter values for text/* media types to better align with common | parameter values for text/* media types to better align with common | |||
usage by existing clients and servers. | usage by existing clients and servers. | |||
Editorial Note (To be removed by RFC Editor) | Editorial Note (To be removed by RFC Editor) | |||
Discussion of this draft should take place on the Apps Area Working | Discussion of this draft should take place on the Apps Area Working | |||
skipping to change at page 1, line 40 | skipping to change at page 1, line 40 | |||
Internet-Drafts are working documents of the Internet Engineering | Internet-Drafts are working documents of the Internet Engineering | |||
Task Force (IETF). Note that other groups may also distribute | Task Force (IETF). Note that other groups may also distribute | |||
working documents as Internet-Drafts. The list of current Internet- | working documents as Internet-Drafts. The list of current Internet- | |||
Drafts is at http://datatracker.ietf.org/drafts/current/. | Drafts is at http://datatracker.ietf.org/drafts/current/. | |||
Internet-Drafts are draft documents valid for a maximum of six months | Internet-Drafts are draft documents valid for a maximum of six months | |||
and may be updated, replaced, or obsoleted by other documents at any | and may be updated, replaced, or obsoleted by other documents at any | |||
time. It is inappropriate to use Internet-Drafts as reference | time. It is inappropriate to use Internet-Drafts as reference | |||
material or to cite them other than as "work in progress." | material or to cite them other than as "work in progress." | |||
This Internet-Draft will expire on October 1, 2012. | This Internet-Draft will expire on October 23, 2012. | |||
Copyright Notice | Copyright Notice | |||
Copyright (c) 2012 IETF Trust and the persons identified as the | Copyright (c) 2012 IETF Trust and the persons identified as the | |||
document authors. All rights reserved. | document authors. All rights reserved. | |||
This document is subject to BCP 78 and the IETF Trust's Legal | This document is subject to BCP 78 and the IETF Trust's Legal | |||
Provisions Relating to IETF Documents | Provisions Relating to IETF Documents | |||
(http://trustee.ietf.org/license-info) in effect on the date of | (http://trustee.ietf.org/license-info) in effect on the date of | |||
publication of this document. Please review these documents | publication of this document. Please review these documents | |||
skipping to change at page 2, line 20 | skipping to change at page 2, line 20 | |||
Table of Contents | Table of Contents | |||
1. Introduction and Overview . . . . . . . . . . . . . . . 3 | 1. Introduction and Overview . . . . . . . . . . . . . . . 3 | |||
2. Conventions Used in This Document . . . . . . . . . . . 3 | 2. Conventions Used in This Document . . . . . . . . . . . 3 | |||
3. New rules for default charset parameter values for | 3. New rules for default charset parameter values for | |||
text/* media types . . . . . . . . . . . . . . . . . . 3 | text/* media types . . . . . . . . . . . . . . . . . . 3 | |||
4. Default charset parameter value for text/plain | 4. Default charset parameter value for text/plain | |||
media type . . . . . . . . . . . . . . . . . . . . . . 4 | media type . . . . . . . . . . . . . . . . . . . . . . 4 | |||
5. Security Considerations . . . . . . . . . . . . . . . . 4 | 5. Security Considerations . . . . . . . . . . . . . . . . 4 | |||
6. IANA Considerations . . . . . . . . . . . . . . . . . . 5 | 6. IANA Considerations . . . . . . . . . . . . . . . . . . 4 | |||
7. References . . . . . . . . . . . . . . . . . . . . . . 5 | 7. References . . . . . . . . . . . . . . . . . . . . . . 5 | |||
7.1. Normative References . . . . . . . . . . . . . . . . . 5 | 7.1. Normative References . . . . . . . . . . . . . . . . . 5 | |||
7.2. Informative References . . . . . . . . . . . . . . . . 5 | 7.2. Informative References . . . . . . . . . . . . . . . . 5 | |||
Appendix A. Acknowledgements . . . . . . . . . . . . . . . . . . . 5 | Appendix A. Acknowledgements . . . . . . . . . . . . . . . . . . . 5 | |||
Authors' Addresses . . . . . . . . . . . . . . . . . . 5 | Authors' Addresses . . . . . . . . . . . . . . . . . . 5 | |||
1. Introduction and Overview | 1. Introduction and Overview | |||
[RFC2046] specified that the default charset parameter (i.e. the | [RFC2046] specified that the default charset parameter (i.e. the | |||
value used when it is not specified) is "US-ASCII". [RFC2616] | value used when it is not specified) is "US-ASCII". [RFC2616] | |||
changed the default for use by HTTP to be "ISO-8859-1". This | changed the default for use by HTTP to be "ISO-8859-1". This | |||
encoding is not very common for new text/* media types and a special | encoding is not very common for new text/* media types and a special | |||
rule in HTTP adds confusion about which specification ([RFC2046] or | rule in HTTP adds confusion about which specification ([RFC2046] or | |||
[RFC2616]) is authoritative in regards to the default charset for | [RFC2616]) is authoritative in regards to the default charset for | |||
text/* media types. [[anchor2: At the time of writing of this | text/* media types. | |||
document the IETF HTTPBIS WG is working on an update to RFC 2616 | ||||
which removes the default charset of "ISO-8859-1" for "text/*" media | ||||
types. It is expected that the set of HTTPBIs documents will | ||||
reference this document in order to use the updated rules of default | ||||
charset in "text/*" media types.]] | ||||
Many complex text subtypes such as text/html [RFC2854] and text/xml | Many complex text subtypes such as text/html [RFC2854] and text/xml | |||
[RFC3023] have internal (to their format) means of describing the | [RFC3023] have internal (to their format) means of describing the | |||
charset. Many existing User Agents ignore the default of "US-ASCII" | charset. Many existing User Agents ignore the default of "US-ASCII" | |||
rule for at least text/html and text/xml. | rule for at least text/html and text/xml. | |||
This document changes RFC 2046 rules regarding default charset | This document changes RFC 2046 rules regarding default charset | |||
parameter values for text/* media types to better align with common | parameter values for text/* media types to better align with common | |||
usage by existing clients and servers. It does not change the | usage by existing clients and servers. It does not change the | |||
defaults for any currently registered media type. | defaults for any currently registered media type. | |||
skipping to change at page 3, line 50 | skipping to change at page 3, line 45 | |||
The default character set, which must be assumed in the absence of | The default character set, which must be assumed in the absence of | |||
a charset parameter, is US-ASCII. | a charset parameter, is US-ASCII. | |||
As explained in the Introduction section this rule is considered to | As explained in the Introduction section this rule is considered to | |||
be outdated, so this document replaces it with the following set of | be outdated, so this document replaces it with the following set of | |||
rules: | rules: | |||
Each subtype of the "text" media type which uses the "charset" | Each subtype of the "text" media type which uses the "charset" | |||
parameter can define its own default value for the "charset" | parameter can define its own default value for the "charset" | |||
parameter, including absence of any default. | parameter, including the absence of any default. | |||
In order to improve interoperability with deployed agents, "text/*" | In order to improve interoperability with deployed agents, "text/*" | |||
media type registrations SHOULD either | media type registrations SHOULD either | |||
a. specify that the "charset" parameter is not used for the defined | a. specify that the "charset" parameter is not used for the defined | |||
subtype, because the charset information is transported inside | subtype, because the charset information is transported inside | |||
the payload (such as in "text/xml"), or | the payload (such as in "text/xml"), or | |||
b. require explicit unconditional inclusion of the "charset" | b. require explicit unconditional inclusion of the "charset" | |||
parameter eliminating the need for a default value. | parameter eliminating the need for a default value. | |||
skipping to change at page 4, line 26 | skipping to change at page 4, line 21 | |||
corresponding payloads (such as "text/html" and "text/xml") SHOULD | corresponding payloads (such as "text/html" and "text/xml") SHOULD | |||
NOT specify the use of a "charset" parameter, nor any default value, | NOT specify the use of a "charset" parameter, nor any default value, | |||
in order to avoid conflicting interpretations should the charset | in order to avoid conflicting interpretations should the charset | |||
parameter value and the value specified in the payload disagree. | parameter value and the value specified in the payload disagree. | |||
New subtypes of the "text" media type, thus, SHOULD NOT define a | New subtypes of the "text" media type, thus, SHOULD NOT define a | |||
default "charset" value. If there is a strong reason to do so | default "charset" value. If there is a strong reason to do so | |||
despite this advice, they SHOULD use the "UTF-8" [RFC3629] charset as | despite this advice, they SHOULD use the "UTF-8" [RFC3629] charset as | |||
the default. | the default. | |||
Specifications of how to specify the "charset" parameter, and what | Specifications covering the "charset" parameter, and what default | |||
default value, if any, is used, are subtype-specific, NOT protocol- | value, if any, is used, are subtype-specific, NOT protocol-specific. | |||
specific. Protocols that use MIME, therefore, MUST NOT override | Protocols that use MIME, therefore, MUST NOT override default charset | |||
default charset values for "text/*" media types to be different for | values for "text/*" media types to be different for their specific | |||
their specific protocol. The protocol definitions MUST leave that to | protocol. The protocol definitions MUST leave that to the subtype | |||
the subtype definitions. | definitions. | |||
4. Default charset parameter value for text/plain media type | 4. Default charset parameter value for text/plain media type | |||
The default charset parameter value for text/plain is unchanged from | The default charset parameter value for text/plain is unchanged from | |||
[RFC2046] and remains as "US-ASCII". | [RFC2046] and remains as "US-ASCII". | |||
5. Security Considerations | 5. Security Considerations | |||
Guessing of the charset parameter can lead to security issues such as | Guessing of the charset parameter can lead to security issues such as | |||
content buffer overflows, denial of services or bypass of filtering | content buffer overflows, denial of services or bypass of filtering | |||
skipping to change at page 5, line 39 | skipping to change at page 5, line 35 | |||
[RFC2854] Connolly, D. and L. Masinter, "The 'text/html' Media | [RFC2854] Connolly, D. and L. Masinter, "The 'text/html' Media | |||
Type", RFC 2854, June 2000. | Type", RFC 2854, June 2000. | |||
[RFC3023] Murata, M., St. Laurent, S., and D. Kohn, "XML Media | [RFC3023] Murata, M., St. Laurent, S., and D. Kohn, "XML Media | |||
Types", RFC 3023, January 2001. | Types", RFC 3023, January 2001. | |||
Appendix A. Acknowledgements | Appendix A. Acknowledgements | |||
Many thanks to Ned Freed and John Klensin for comments and ideas that | Many thanks to Ned Freed and John Klensin for comments and ideas that | |||
motivated creation of this document, and to Barry Leiba for suggested | motivated creation of this document, and to Carsten Bormann, Murray | |||
text. | S. Kucherawy, Barry Leiba, and Henri Sivonen for feedback and text | |||
suggestions. | ||||
Authors' Addresses | Authors' Addresses | |||
Alexey Melnikov | Alexey Melnikov | |||
Isode Limited | Isode Limited | |||
5 Castle Business Village | 5 Castle Business Village | |||
36 Station Road | 36 Station Road | |||
Hampton, Middlesex TW12 2BX | Hampton, Middlesex TW12 2BX | |||
UK | UK | |||
Email: Alexey.Melnikov@isode.com | ||||
Email: Alexey.Melnikov@isode.com | ||||
Julian F. Reschke | Julian F. Reschke | |||
greenbytes GmbH | greenbytes GmbH | |||
Hafenweg 16 | Hafenweg 16 | |||
Muenster, NW 48155 | Muenster, NW 48155 | |||
Germany | Germany | |||
Email: julian.reschke@greenbytes.de | Email: julian.reschke@greenbytes.de | |||
URI: http://greenbytes.de/tech/webdav/ | URI: http://greenbytes.de/tech/webdav/ | |||
End of changes. 10 change blocks. | ||||
20 lines changed or deleted | 16 lines changed or added | |||
This html diff was produced by rfcdiff 1.41. The latest version is available from http://tools.ietf.org/tools/rfcdiff/ |