| draft-ietf-httpbis-p3-payload-14.txt |  | draft-ietf-httpbis-p3-payload-15.txt |
--- | --- | --- | --- | ---
| HTTPbis Working Group R. Fielding, Ed. |  | HTTPbis Working Group R. Fielding, Ed. |
| Internet-Draft Adobe |  | Internet-Draft Adobe |
| Obsoletes: 2616 (if approved) J. Gettys |  | Obsoletes: 2616 (if approved) J. Gettys |
| Intended status: Standards Track Alcatel-Lucent |  | Intended status: Standards Track Alcatel-Lucent |
| Expires: October 20, 2011 J. Mogul |  | Expires: January 12, 2012 J. Mogul |
| HP |  | HP |
| H. Frystyk |  | H. Frystyk |
| Microsoft |  | Microsoft |
| L. Masinter |  | L. Masinter |
| Adobe |  | Adobe |
| P. Leach |  | P. Leach |
| Microsoft |  | Microsoft |
| T. Berners-Lee |  | T. Berners-Lee |
| W3C/MIT |  | W3C/MIT |
| Y. Lafon, Ed. |  | Y. Lafon, Ed. |
| W3C |  | W3C |
| J. Reschke, Ed. |  | J. Reschke, Ed. |
| greenbytes |  | greenbytes |
| April 18, 2011 |  | July 11, 2011 |
| HTTP/1.1, part 3: Message Payload and Content Negotiation |  | HTTP/1.1, part 3: Message Payload and Content Negotiation |
| draft-ietf-httpbis-p3-payload-14 |  | draft-ietf-httpbis-p3-payload-15 |
| Abstract |  | Abstract |
| The Hypertext Transfer Protocol (HTTP) is an application-level |  | The Hypertext Transfer Protocol (HTTP) is an application-level |
| protocol for distributed, collaborative, hypermedia information |  | protocol for distributed, collaborative, hypermedia information |
| systems. HTTP has been in use by the World Wide Web global |  | systems. HTTP has been in use by the World Wide Web global |
| information initiative since 1990. This document is Part 3 of the |  | information initiative since 1990. This document is Part 3 of the |
| seven-part specification that defines the protocol referred to as |  | seven-part specification that defines the protocol referred to as |
| "HTTP/1.1" and, taken together, obsoletes RFC 2616. Part 3 defines |  | "HTTP/1.1" and, taken together, obsoletes RFC 2616. Part 3 defines |
| HTTP message content, metadata, and content negotiation. |  | HTTP message content, metadata, and content negotiation. |
| skipping to change at page 1, line 47 |  | skipping to change at page 1, line 47 |
| Discussion of this draft should take place on the HTTPBIS working |  | Discussion of this draft should take place on the HTTPBIS working |
| group mailing list (ietf-http-wg@w3.org), which is archived at |  | group mailing list (ietf-http-wg@w3.org), which is archived at |
| <http://lists.w3.org/Archives/Public/ietf-http-wg/>. |  | <http://lists.w3.org/Archives/Public/ietf-http-wg/>. |
| The current issues list is at |  | The current issues list is at |
| <http://tools.ietf.org/wg/httpbis/trac/report/3> and related |  | <http://tools.ietf.org/wg/httpbis/trac/report/3> and related |
| documents (including fancy diffs) can be found at |  | documents (including fancy diffs) can be found at |
| <http://tools.ietf.org/wg/httpbis/>. |  | <http://tools.ietf.org/wg/httpbis/>. |
| The changes in this draft are summarized in Appendix E.15. |  | The changes in this draft are summarized in Appendix E.16. |
| Status of This Memo |  | Status of This Memo |
| This Internet-Draft is submitted in full conformance with the |  | This Internet-Draft is submitted in full conformance with the |
| provisions of BCP 78 and BCP 79. |  | provisions of BCP 78 and BCP 79. |
| 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 20, 2011. |  | This Internet-Draft will expire on January 12, 2012. |
| Copyright Notice |  | Copyright Notice |
| Copyright (c) 2011 IETF Trust and the persons identified as the |  | Copyright (c) 2011 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 3, line 41 |  | skipping to change at page 3, line 41 |
| 6.7. Content-Location . . . . . . . . . . . . . . . . . . . . . 23 |  | 6.7. Content-Location . . . . . . . . . . . . . . . . . . . . . 23 |
| 6.8. Content-Type . . . . . . . . . . . . . . . . . . . . . . . 24 |  | 6.8. Content-Type . . . . . . . . . . . . . . . . . . . . . . . 24 |
| 7. IANA Considerations . . . . . . . . . . . . . . . . . . . . . 24 |  | 7. IANA Considerations . . . . . . . . . . . . . . . . . . . . . 24 |
| 7.1. Header Field Registration . . . . . . . . . . . . . . . . 24 |  | 7.1. Header Field Registration . . . . . . . . . . . . . . . . 24 |
| 7.2. Content Coding Registry . . . . . . . . . . . . . . . . . 25 |  | 7.2. Content Coding Registry . . . . . . . . . . . . . . . . . 25 |
| 8. Security Considerations . . . . . . . . . . . . . . . . . . . 25 |  | 8. Security Considerations . . . . . . . . . . . . . . . . . . . 25 |
| 8.1. Privacy Issues Connected to Accept Header Fields . . . . . 26 |  | 8.1. Privacy Issues Connected to Accept Header Fields . . . . . 26 |
| 9. Acknowledgments . . . . . . . . . . . . . . . . . . . . . . . 26 |  | 9. Acknowledgments . . . . . . . . . . . . . . . . . . . . . . . 26 |
| 10. References . . . . . . . . . . . . . . . . . . . . . . . . . . 26 |  | 10. References . . . . . . . . . . . . . . . . . . . . . . . . . . 26 |
| 10.1. Normative References . . . . . . . . . . . . . . . . . . . 26 |  | 10.1. Normative References . . . . . . . . . . . . . . . . . . . 26 |
| 10.2. Informative References . . . . . . . . . . . . . . . . . . 29 |  | 10.2. Informative References . . . . . . . . . . . . . . . . . . 28 |
| Appendix A. Differences between HTTP and MIME . . . . . . . . . . 31 |  | Appendix A. Differences between HTTP and MIME . . . . . . . . . . 29 |
| A.1. MIME-Version . . . . . . . . . . . . . . . . . . . . . . . 31 |  | A.1. MIME-Version . . . . . . . . . . . . . . . . . . . . . . . 30 |
| A.2. Conversion to Canonical Form . . . . . . . . . . . . . . . 32 |  | A.2. Conversion to Canonical Form . . . . . . . . . . . . . . . 30 |
| A.3. Conversion of Date Formats . . . . . . . . . . . . . . . . 32 |  | A.3. Conversion of Date Formats . . . . . . . . . . . . . . . . 31 |
| A.4. Introduction of Content-Encoding . . . . . . . . . . . . . 32 |  | A.4. Introduction of Content-Encoding . . . . . . . . . . . . . 31 |
| A.5. No Content-Transfer-Encoding . . . . . . . . . . . . . . . 33 |  | A.5. No Content-Transfer-Encoding . . . . . . . . . . . . . . . 31 |
| A.6. Introduction of Transfer-Encoding . . . . . . . . . . . . 33 |  | A.6. Introduction of Transfer-Encoding . . . . . . . . . . . . 31 |
| A.7. MHTML and Line Length Limitations . . . . . . . . . . . . 33 |  | A.7. MHTML and Line Length Limitations . . . . . . . . . . . . 31 |
| Appendix B. Additional Features . . . . . . . . . . . . . . . . . 33 |  | Appendix B. Additional Features . . . . . . . . . . . . . . . . . 32 |
| Appendix C. Changes from RFC 2616 . . . . . . . . . . . . . . . . 34 |  | Appendix C. Changes from RFC 2616 . . . . . . . . . . . . . . . . 32 |
| Appendix D. Collected ABNF . . . . . . . . . . . . . . . . . . . 34 |  | Appendix D. Collected ABNF . . . . . . . . . . . . . . . . . . . 33 |
| Appendix E. Change Log (to be removed by RFC Editor before |  | Appendix E. Change Log (to be removed by RFC Editor before |
| publication) . . . . . . . . . . . . . . . . . . . . 36 |  | publication) . . . . . . . . . . . . . . . . . . . . 34 |
| E.1. Since RFC 2616 . . . . . . . . . . . . . . . . . . . . . . 36 |  | E.1. Since RFC 2616 . . . . . . . . . . . . . . . . . . . . . . 34 |
| E.2. Since draft-ietf-httpbis-p3-payload-00 . . . . . . . . . . 36 |  | E.2. Since draft-ietf-httpbis-p3-payload-00 . . . . . . . . . . 34 |
| E.3. Since draft-ietf-httpbis-p3-payload-01 . . . . . . . . . . 37 |  | E.3. Since draft-ietf-httpbis-p3-payload-01 . . . . . . . . . . 35 |
| E.4. Since draft-ietf-httpbis-p3-payload-02 . . . . . . . . . . 37 |  | E.4. Since draft-ietf-httpbis-p3-payload-02 . . . . . . . . . . 35 |
| E.5. Since draft-ietf-httpbis-p3-payload-03 . . . . . . . . . . 37 |  | E.5. Since draft-ietf-httpbis-p3-payload-03 . . . . . . . . . . 35 |
| E.6. Since draft-ietf-httpbis-p3-payload-04 . . . . . . . . . . 38 |  | E.6. Since draft-ietf-httpbis-p3-payload-04 . . . . . . . . . . 36 |
| E.7. Since draft-ietf-httpbis-p3-payload-05 . . . . . . . . . . 38 |  | E.7. Since draft-ietf-httpbis-p3-payload-05 . . . . . . . . . . 36 |
| E.8. Since draft-ietf-httpbis-p3-payload-06 . . . . . . . . . . 38 |  | E.8. Since draft-ietf-httpbis-p3-payload-06 . . . . . . . . . . 37 |
| E.9. Since draft-ietf-httpbis-p3-payload-07 . . . . . . . . . . 39 |  | E.9. Since draft-ietf-httpbis-p3-payload-07 . . . . . . . . . . 37 |
| E.10. Since draft-ietf-httpbis-p3-payload-08 . . . . . . . . . . 39 |  | E.10. Since draft-ietf-httpbis-p3-payload-08 . . . . . . . . . . 37 |
| E.11. Since draft-ietf-httpbis-p3-payload-09 . . . . . . . . . . 39 |  | E.11. Since draft-ietf-httpbis-p3-payload-09 . . . . . . . . . . 38 |
| E.12. Since draft-ietf-httpbis-p3-payload-10 . . . . . . . . . . 40 |  | E.12. Since draft-ietf-httpbis-p3-payload-10 . . . . . . . . . . 38 |
| E.13. Since draft-ietf-httpbis-p3-payload-11 . . . . . . . . . . 41 |  | E.13. Since draft-ietf-httpbis-p3-payload-11 . . . . . . . . . . 39 |
| E.14. Since draft-ietf-httpbis-p3-payload-12 . . . . . . . . . . 41 |  | E.14. Since draft-ietf-httpbis-p3-payload-12 . . . . . . . . . . 39 |
| E.15. Since draft-ietf-httpbis-p3-payload-13 . . . . . . . . . . 41 |  | E.15. Since draft-ietf-httpbis-p3-payload-13 . . . . . . . . . . 39 |
| Index . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 41 |  | E.16. Since draft-ietf-httpbis-p3-payload-14 . . . . . . . . . . 40 |
|  |  | Index . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 40 |
| 1. Introduction |  | 1. Introduction |
| This document defines HTTP/1.1 message payloads (a.k.a., content), |  | This document defines HTTP/1.1 message payloads (a.k.a., content), |
| the associated metadata header fields that define how the payload is |  | the associated metadata header fields that define how the payload is |
| intended to be interpreted by a recipient, the request header fields |  | intended to be interpreted by a recipient, the request header fields |
| that might influence content selection, and the various selection |  | that might influence content selection, and the various selection |
| algorithms that are collectively referred to as HTTP content |  | algorithms that are collectively referred to as HTTP content |
| negotiation. |  | negotiation. |
| skipping to change at page 6, line 31 |  | skipping to change at page 6, line 31 |
| The core rules below are defined in Section 1.2.2 of [Part1]: |  | The core rules below are defined in Section 1.2.2 of [Part1]: |
| token = <token, defined in [Part1], Section 1.2.2> |  | token = <token, defined in [Part1], Section 1.2.2> |
| word = <word, defined in [Part1], Section 1.2.2> |  | word = <word, defined in [Part1], Section 1.2.2> |
| OWS = <OWS, defined in [Part1], Section 1.2.2> |  | OWS = <OWS, defined in [Part1], Section 1.2.2> |
| 1.3.2. ABNF Rules defined in other Parts of the Specification |  | 1.3.2. ABNF Rules defined in other Parts of the Specification |
| The ABNF rules below are defined in other parts: |  | The ABNF rules below are defined in other parts: |
| absolute-URI = <absolute-URI, defined in [Part1], Section 2.6> |  | absolute-URI = <absolute-URI, defined in [Part1], Section 2.7> |
| partial-URI = <partial-URI, defined in [Part1], Section 2.6> |  | partial-URI = <partial-URI, defined in [Part1], Section 2.7> |
| qvalue = <qvalue, defined in [Part1], Section 6.4> |  | qvalue = <qvalue, defined in [Part1], Section 6.4> |
| 2. Protocol Parameters |  | 2. Protocol Parameters |
| 2.1. Character Encodings (charset) |  | 2.1. Character Encodings (charset) |
| HTTP uses charset names to indicate the character encoding of a |  | HTTP uses charset names to indicate the character encoding of a |
| textual representation. |  | textual representation. |
| A character encoding is identified by a case-insensitive token. The |  | A character encoding is identified by a case-insensitive token. The |
| skipping to change at page 26, line 46 |  | skipping to change at page 26, line 46 |
| requests. General purpose user agents which provide a high degree of |  | requests. General purpose user agents which provide a high degree of |
| header configurability SHOULD warn users about the loss of privacy |  | header configurability SHOULD warn users about the loss of privacy |
| which can be involved. |  | which can be involved. |
| 9. Acknowledgments |  | 9. Acknowledgments |
| 10. References |  | 10. References |
| 10.1. Normative References |  | 10.1. Normative References |
| [Part1] Fielding, R., Ed., Gettys, J., |  | [Part1] Fielding, R., Ed., Gettys, J., Mogul, J., Frystyk, H., |
| Mogul, J., Frystyk, H., Masinter, |  | Masinter, L., Leach, P., Berners-Lee, T., Lafon, Y., Ed., |
| L., Leach, P., Berners-Lee, T., |  | and J. Reschke, Ed., "HTTP/1.1, part 1: URIs, Connections, |
| Lafon, Y., Ed., and J. Reschke, |  | and Message Parsing", draft-ietf-httpbis-p1-messaging-15 |
| Ed., "HTTP/1.1, part 1: URIs, |  | (work in progress), July 2011. |
| Connections, and Message Parsing", |  |  |
| draft-ietf-httpbis-p1-messaging-14 |  |  |
| (work in progress), April 2011. |  |  |
| [Part2] Fielding, R., Ed., Gettys, J., |  | [Part2] Fielding, R., Ed., Gettys, J., Mogul, J., Frystyk, H., |
| Mogul, J., Frystyk, H., Masinter, |  | Masinter, L., Leach, P., Berners-Lee, T., Lafon, Y., Ed., |
| L., Leach, P., Berners-Lee, T., |  | and J. Reschke, Ed., "HTTP/1.1, part 2: Message |
| Lafon, Y., Ed., and J. Reschke, |  | Semantics", draft-ietf-httpbis-p2-semantics-15 (work in |
| Ed., "HTTP/1.1, part 2: Message |  | progress), July 2011. |
| Semantics", |  |  |
| draft-ietf-httpbis-p2-semantics-14 |  |  |
| (work in progress), April 2011. |  |  |
| [Part4] Fielding, R., Ed., Gettys, J., |  | [Part4] Fielding, R., Ed., Gettys, J., Mogul, J., Frystyk, H., |
| Mogul, J., Frystyk, H., Masinter, |  | Masinter, L., Leach, P., Berners-Lee, T., Lafon, Y., Ed., |
| L., Leach, P., Berners-Lee, T., |  | and J. Reschke, Ed., "HTTP/1.1, part 4: Conditional |
| Lafon, Y., Ed., and J. Reschke, |  | Requests", draft-ietf-httpbis-p4-conditional-15 (work in |
| Ed., "HTTP/1.1, part 4: |  | progress), July 2011. |
| Conditional Requests", draft-ietf- |  |  |
| httpbis-p4-conditional-14 (work in |  |  |
| progress), April 2011. |  |  |
| [Part5] Fielding, R., Ed., Gettys, J., |  | [Part5] Fielding, R., Ed., Gettys, J., Mogul, J., Frystyk, H., |
| Mogul, J., Frystyk, H., Masinter, |  | Masinter, L., Leach, P., Berners-Lee, T., Lafon, Y., Ed., |
| L., Leach, P., Berners-Lee, T., |  | and J. Reschke, Ed., "HTTP/1.1, part 5: Range Requests and |
| Lafon, Y., Ed., and J. Reschke, |  | Partial Responses", draft-ietf-httpbis-p5-range-15 (work |
| Ed., "HTTP/1.1, part 5: Range |  | in progress), July 2011. |
| Requests and Partial Responses", |  |  |
| draft-ietf-httpbis-p5-range-14 |  |  |
| (work in progress), April 2011. |  |  |
| [Part6] Fielding, R., Ed., Gettys, J., |  | [Part6] Fielding, R., Ed., Gettys, J., Mogul, J., Frystyk, H., |
| Mogul, J., Frystyk, H., Masinter, |  | Masinter, L., Leach, P., Berners-Lee, T., Lafon, Y., Ed., |
| L., Leach, P., Berners-Lee, T., |  | Nottingham, M., Ed., and J. Reschke, Ed., "HTTP/1.1, part |
| Lafon, Y., Ed., Nottingham, M., |  | 6: Caching", draft-ietf-httpbis-p6-cache-15 (work in |
| Ed., and J. Reschke, Ed., |  | progress), July 2011. |
| "HTTP/1.1, part 6: Caching", |  |  |
| draft-ietf-httpbis-p6-cache-14 |  |  |
| (work in progress), April 2011. |  |  |
| [RFC1950] Deutsch, L. and J-L. Gailly, "ZLIB |  | [RFC1950] Deutsch, L. and J-L. Gailly, "ZLIB Compressed Data Format |
| Compressed Data Format |  | Specification version 3.3", RFC 1950, May 1996. |
| Specification version 3.3", |  |  |
| RFC 1950, May 1996. |  |  |
| RFC 1950 is an Informational RFC, |  | RFC 1950 is an Informational RFC, thus it might be less |
| thus it might be less stable than |  | stable than this specification. On the other hand, this |
| this specification. On the other |  | downward reference was present since the publication of |
| hand, this downward reference was |  | RFC 2068 in 1997 ([RFC2068]), therefore it is unlikely to |
| present since the publication of |  | cause problems in practice. See also [BCP97]. |
| RFC 2068 in 1997 ([RFC2068]), |  |  |
| therefore it is unlikely to cause |  |  |
| problems in practice. See also |  |  |
| [BCP97]. |  |  |
| [RFC1951] Deutsch, P., "DEFLATE Compressed |  | [RFC1951] Deutsch, P., "DEFLATE Compressed Data Format Specification |
| Data Format Specification version |  | version 1.3", RFC 1951, May 1996. |
| 1.3", RFC 1951, May 1996. |  |  |
| RFC 1951 is an Informational RFC, |  | RFC 1951 is an Informational RFC, thus it might be less |
| thus it might be less stable than |  | stable than this specification. On the other hand, this |
| this specification. On the other |  | downward reference was present since the publication of |
| hand, this downward reference was |  | RFC 2068 in 1997 ([RFC2068]), therefore it is unlikely to |
| present since the publication of |  | cause problems in practice. See also [BCP97]. |
| RFC 2068 in 1997 ([RFC2068]), |  |  |
| therefore it is unlikely to cause |  |  |
| problems in practice. See also |  |  |
| [BCP97]. |  |  |
| [RFC1952] Deutsch, P., Gailly, J-L., Adler, |  | [RFC1952] Deutsch, P., Gailly, J-L., Adler, M., Deutsch, L., and G. |
| M., Deutsch, L., and G. Randers- |  | Randers-Pehrson, "GZIP file format specification version |
| Pehrson, "GZIP file format |  | 4.3", RFC 1952, May 1996. |
| specification version 4.3", |  |  |
| RFC 1952, May 1996. |  |  |
| RFC 1952 is an Informational RFC, |  | RFC 1952 is an Informational RFC, thus it might be less |
| thus it might be less stable than |  | stable than this specification. On the other hand, this |
| this specification. On the other |  | downward reference was present since the publication of |
| hand, this downward reference was |  | RFC 2068 in 1997 ([RFC2068]), therefore it is unlikely to |
| present since the publication of |  | cause problems in practice. See also [BCP97]. |
| RFC 2068 in 1997 ([RFC2068]), |  |  |
| therefore it is unlikely to cause |  |  |
| problems in practice. See also |  |  |
| [BCP97]. |  |  |
| [RFC2045] Freed, N. and N. Borenstein, |  | [RFC2045] Freed, N. and N. Borenstein, "Multipurpose Internet Mail |
| "Multipurpose Internet Mail |  | Extensions (MIME) Part One: Format of Internet Message |
| Extensions (MIME) Part One: Format |  | Bodies", RFC 2045, November 1996. |
| of Internet Message Bodies", |  |  |
| RFC 2045, November 1996. |  |  |
| [RFC2046] Freed, N. and N. Borenstein, |  | [RFC2046] Freed, N. and N. Borenstein, "Multipurpose Internet Mail |
| "Multipurpose Internet Mail |  | Extensions (MIME) Part Two: Media Types", RFC 2046, |
| Extensions (MIME) Part Two: Media |  | November 1996. |
| Types", RFC 2046, November 1996. |  |  |
| [RFC2119] Bradner, S., "Key words for use in |  | [RFC2119] Bradner, S., "Key words for use in RFCs to Indicate |
| RFCs to Indicate Requirement |  | Requirement Levels", BCP 14, RFC 2119, March 1997. |
| Levels", BCP 14, RFC 2119, |  |  |
| March 1997. |  |  |
| [RFC4647] Phillips, A., Ed. and M. Davis, |  | [RFC4647] Phillips, A., Ed. and M. Davis, Ed., "Matching of Language |
| Ed., "Matching of Language Tags", |  | Tags", BCP 47, RFC 4647, September 2006. |
| BCP 47, RFC 4647, September 2006. |  |  |
| [RFC5234] Crocker, D., Ed. and P. Overell, |  | [RFC5234] Crocker, D., Ed. and P. Overell, "Augmented BNF for Syntax |
| "Augmented BNF for Syntax |  | Specifications: ABNF", STD 68, RFC 5234, January 2008. |
| Specifications: ABNF", STD 68, |  |  |
| RFC 5234, January 2008. |  |  |
| [RFC5646] Phillips, A., Ed. and M. Davis, |  | [RFC5646] Phillips, A., Ed. and M. Davis, Ed., "Tags for Identifying |
| Ed., "Tags for Identifying |  | Languages", BCP 47, RFC 5646, September 2009. |
| Languages", BCP 47, RFC 5646, |  |  |
| September 2009. |  |  |
| 10.2. Informative References |  | 10.2. Informative References |
| [BCP97] Klensin, J. and S. Hartman, |  | [BCP97] Klensin, J. and S. Hartman, "Handling Normative References |
| "Handling Normative References to |  | to Standards-Track Documents", BCP 97, RFC 4897, |
| Standards-Track Documents", |  | June 2007. |
| BCP 97, RFC 4897, June 2007. |  |  |
| [RFC1945] Berners-Lee, T., Fielding, R., and |  | [RFC1945] Berners-Lee, T., Fielding, R., and H. Nielsen, "Hypertext |
| H. Nielsen, "Hypertext Transfer |  | Transfer Protocol -- HTTP/1.0", RFC 1945, May 1996. |
| Protocol -- HTTP/1.0", RFC 1945, |  |  |
| May 1996. |  |  |
| [RFC2049] Freed, N. and N. Borenstein, |  | [RFC2049] Freed, N. and N. Borenstein, "Multipurpose Internet Mail |
| "Multipurpose Internet Mail |  | Extensions (MIME) Part Five: Conformance Criteria and |
| Extensions (MIME) Part Five: |  | Examples", RFC 2049, November 1996. |
| Conformance Criteria and |  |  |
| Examples", RFC 2049, |  |  |
| November 1996. |  |  |
| [RFC2068] Fielding, R., Gettys, J., Mogul, |  | [RFC2068] Fielding, R., Gettys, J., Mogul, J., Nielsen, H., and T. |
| J., Nielsen, H., and T. Berners- |  | Berners-Lee, "Hypertext Transfer Protocol -- HTTP/1.1", |
| Lee, "Hypertext Transfer Protocol |  | RFC 2068, January 1997. |
| -- HTTP/1.1", RFC 2068, |  |  |
| January 1997. |  |  |
| [RFC2076] Palme, J., "Common Internet |  | [RFC2076] Palme, J., "Common Internet Message Headers", RFC 2076, |
| Message Headers", RFC 2076, |  | February 1997. |
| February 1997. |  |  |
| [RFC2277] Alvestrand, H., "IETF Policy on |  | [RFC2277] Alvestrand, H., "IETF Policy on Character Sets and |
| Character Sets and Languages", |  | Languages", BCP 18, RFC 2277, January 1998. |
| BCP 18, RFC 2277, January 1998. |  |  |
| [RFC2295] Holtman, K. and A. Mutz, |  | [RFC2295] Holtman, K. and A. Mutz, "Transparent Content Negotiation |
| "Transparent Content Negotiation |  | in HTTP", RFC 2295, March 1998. |
| in HTTP", RFC 2295, March 1998. |  |  |
| [RFC2388] Masinter, L., "Returning Values |  | [RFC2388] Masinter, L., "Returning Values from Forms: multipart/ |
| from Forms: multipart/form-data", |  | form-data", RFC 2388, August 1998. |
| RFC 2388, August 1998. |  |  |
| [RFC2557] Palme, F., Hopmann, A., Shelness, |  | [RFC2557] Palme, F., Hopmann, A., Shelness, N., and E. Stefferud, |
| N., and E. Stefferud, "MIME |  | "MIME Encapsulation of Aggregate Documents, such as HTML |
| Encapsulation of Aggregate |  | (MHTML)", RFC 2557, March 1999. |
| Documents, such as HTML (MHTML)", |  |  |
| RFC 2557, March 1999. |  |  |
| [RFC2616] Fielding, R., Gettys, J., Mogul, |  | [RFC2616] Fielding, R., Gettys, J., Mogul, J., Frystyk, H., |
| J., Frystyk, H., Masinter, L., |  | Masinter, L., Leach, P., and T. Berners-Lee, "Hypertext |
| Leach, P., and T. Berners-Lee, |  | Transfer Protocol -- HTTP/1.1", RFC 2616, June 1999. |
| "Hypertext Transfer Protocol -- |  |  |
| HTTP/1.1", RFC 2616, June 1999. |  |  |
| [RFC3629] Yergeau, F., "UTF-8, a |  | [RFC3629] Yergeau, F., "UTF-8, a transformation format of ISO |
| transformation format of ISO |  | 10646", STD 63, RFC 3629, November 2003. |
| 10646", STD 63, RFC 3629, |  |  |
| November 2003. |  |  |
| [RFC3864] Klyne, G., Nottingham, M., and J. |  | [RFC3864] Klyne, G., Nottingham, M., and J. Mogul, "Registration |
| Mogul, "Registration Procedures |  | Procedures for Message Header Fields", BCP 90, RFC 3864, |
| for Message Header Fields", |  | September 2004. |
| BCP 90, RFC 3864, September 2004. |  |  |
| [RFC4288] Freed, N. and J. Klensin, "Media |  | [RFC4288] Freed, N. and J. Klensin, "Media Type Specifications and |
| Type Specifications and |  | Registration Procedures", BCP 13, RFC 4288, December 2005. |
| Registration Procedures", BCP 13, |  |  |
| RFC 4288, December 2005. |  |  |
| [RFC5226] Narten, T. and H. Alvestrand, |  | [RFC5226] Narten, T. and H. Alvestrand, "Guidelines for Writing an |
| "Guidelines for Writing an IANA |  | IANA Considerations Section in RFCs", BCP 26, RFC 5226, |
| Considerations Section in RFCs", |  | May 2008. |
| BCP 26, RFC 5226, May 2008. |  |  |
| [RFC5322] Resnick, P., "Internet Message |  | [RFC5322] Resnick, P., "Internet Message Format", RFC 5322, |
| Format", RFC 5322, October 2008. |  | October 2008. |
| [RFC6151] Turner, S. and L. Chen, "Updated |  | [RFC6151] Turner, S. and L. Chen, "Updated Security Considerations |
| Security Considerations for the |  | for the MD5 Message-Digest and the HMAC-MD5 Algorithms", |
| MD5 Message-Digest and the HMAC- |  | RFC 6151, March 2011. |
| MD5 Algorithms", RFC 6151, |  |  |
| March 2011. |  |  |
| [draft-ietf-httpbis-content-disp] Reschke, J., "Use of the Content- |  | [RFC6266] Reschke, J., "Use of the Content-Disposition Header Field |
| Disposition Header Field in the |  | in the Hypertext Transfer Protocol (HTTP)", RFC 6266, |
| Hypertext Transfer Protocol |  | June 2011. |
| (HTTP)", |  |  |
| draft-ietf-httpbis-content-disp-09 |  |  |
| (work in progress), March 2011. |  |  |
| Appendix A. Differences between HTTP and MIME |  | Appendix A. Differences between HTTP and MIME |
| HTTP/1.1 uses many of the constructs defined for Internet Mail |  | HTTP/1.1 uses many of the constructs defined for Internet Mail |
| ([RFC5322]) and the Multipurpose Internet Mail Extensions (MIME |  | ([RFC5322]) and the Multipurpose Internet Mail Extensions (MIME |
| [RFC2045]) to allow a message-body to be transmitted in an open |  | [RFC2045]) to allow a message-body to be transmitted in an open |
| variety of representations and with extensible mechanisms. However, |  | variety of representations and with extensible mechanisms. However, |
| RFC 2045 discusses mail, and HTTP has a few features that are |  | RFC 2045 discusses mail, and HTTP has a few features that are |
| different from those described in MIME. These differences were |  | different from those described in MIME. These differences were |
| carefully chosen to optimize performance over binary connections, to |  | carefully chosen to optimize performance over binary connections, to |
| skipping to change at page 33, line 49 |  | skipping to change at page 32, line 20 |
| [RFC1945] and [RFC2068] document protocol elements used by some |  | [RFC1945] and [RFC2068] document protocol elements used by some |
| existing HTTP implementations, but not consistently and correctly |  | existing HTTP implementations, but not consistently and correctly |
| across most HTTP/1.1 applications. Implementors are advised to be |  | across most HTTP/1.1 applications. Implementors are advised to be |
| aware of these features, but cannot rely upon their presence in, or |  | aware of these features, but cannot rely upon their presence in, or |
| interoperability with, other HTTP/1.1 applications. Some of these |  | interoperability with, other HTTP/1.1 applications. Some of these |
| describe proposed experimental features, and some describe features |  | describe proposed experimental features, and some describe features |
| that experimental deployment found lacking that are now addressed in |  | that experimental deployment found lacking that are now addressed in |
| the base HTTP/1.1 specification. |  | the base HTTP/1.1 specification. |
| A number of other header fields, such as Content-Disposition and |  | A number of other header fields, such as Content-Disposition and |
| Title, from SMTP and MIME are also often implemented (see |  | Title, from SMTP and MIME are also often implemented (see [RFC6266] |
| [draft-ietf-httpbis-content-disp] and [RFC2076]). |  | and [RFC2076]). |
| Appendix C. Changes from RFC 2616 |  | Appendix C. Changes from RFC 2616 |
| Clarify contexts that charset is used in. (Section 2.1) |  | Clarify contexts that charset is used in. (Section 2.1) |
| Remove the default character encoding for text media types; the |  | Remove the default character encoding for text media types; the |
| default now is whatever the media type definition says. |  | default now is whatever the media type definition says. |
| (Section 2.3.1) |  | (Section 2.3.1) |
| Change ABNF productions for header fields to only define the field |  | Change ABNF productions for header fields to only define the field |
| skipping to change at page 34, line 30 |  | skipping to change at page 32, line 48 |
| Remove ISO-8859-1 special-casing in Accept-Charset. (Section 6.2) |  | Remove ISO-8859-1 special-casing in Accept-Charset. (Section 6.2) |
| Remove base URI setting semantics for Content-Location due to poor |  | Remove base URI setting semantics for Content-Location due to poor |
| implementation support, which was caused by too many broken servers |  | implementation support, which was caused by too many broken servers |
| emitting bogus Content-Location header fields, and also the |  | emitting bogus Content-Location header fields, and also the |
| potentially undesirable effect of potentially breaking relative links |  | potentially undesirable effect of potentially breaking relative links |
| in content-negotiated resources. (Section 6.7) |  | in content-negotiated resources. (Section 6.7) |
| Remove discussion of Content-Disposition header field, it is now |  | Remove discussion of Content-Disposition header field, it is now |
| defined by [draft-ietf-httpbis-content-disp]. (Appendix B) |  | defined by [RFC6266]. (Appendix B) |
| Remove reference to non-existant identity transfer-coding value |  | Remove reference to non-existant identity transfer-coding value |
| tokens. (Appendix A.5) |  | tokens. (Appendix A.5) |
| Appendix D. Collected ABNF |  | Appendix D. Collected ABNF |
| Accept = [ ( "," / ( media-range [ accept-params ] ) ) *( OWS "," [ |  | Accept = [ ( "," / ( media-range [ accept-params ] ) ) *( OWS "," [ |
| OWS media-range [ accept-params ] ] ) ] |  | OWS media-range [ accept-params ] ] ) ] |
| Accept-Charset = *( "," OWS ) ( charset / "*" ) [ OWS ";" OWS "q=" |  | Accept-Charset = *( "," OWS ) ( charset / "*" ) [ OWS ";" OWS "q=" |
| qvalue ] *( OWS "," [ OWS ( charset / "*" ) [ OWS ";" OWS "q=" |  | qvalue ] *( OWS "," [ OWS ( charset / "*" ) [ OWS ";" OWS "q=" |
| skipping to change at page 35, line 10 |  | skipping to change at page 33, line 29 |
| content-coding ] ) |  | content-coding ] ) |
| Content-Language = *( "," OWS ) language-tag *( OWS "," [ OWS |  | Content-Language = *( "," OWS ) language-tag *( OWS "," [ OWS |
| language-tag ] ) |  | language-tag ] ) |
| Content-Location = absolute-URI / partial-URI |  | Content-Location = absolute-URI / partial-URI |
| Content-Type = media-type |  | Content-Type = media-type |
| MIME-Version = 1*DIGIT "." 1*DIGIT |  | MIME-Version = 1*DIGIT "." 1*DIGIT |
| OWS = <OWS, defined in [Part1], Section 1.2.2> |  | OWS = <OWS, defined in [Part1], Section 1.2.2> |
| absolute-URI = <absolute-URI, defined in [Part1], Section 2.6> |  | absolute-URI = <absolute-URI, defined in [Part1], Section 2.7> |
| accept-ext = OWS ";" OWS token [ "=" word ] |  | accept-ext = OWS ";" OWS token [ "=" word ] |
| accept-params = OWS ";" OWS "q=" qvalue *accept-ext |  | accept-params = OWS ";" OWS "q=" qvalue *accept-ext |
| attribute = token |  | attribute = token |
| charset = token |  | charset = token |
| codings = ( content-coding / "*" ) |  | codings = ( content-coding / "*" ) |
| content-coding = token |  | content-coding = token |
| language-range = <language-range, defined in [RFC4647], Section 2.1> |  | language-range = <language-range, defined in [RFC4647], Section 2.1> |
| language-tag = <Language-Tag, defined in [RFC5646], Section 2.1> |  | language-tag = <Language-Tag, defined in [RFC5646], Section 2.1> |
| media-range = ( "*/*" / ( type "/*" ) / ( type "/" subtype ) ) *( OWS |  | media-range = ( "*/*" / ( type "/*" ) / ( type "/" subtype ) ) *( OWS |
| ";" OWS parameter ) |  | ";" OWS parameter ) |
| media-type = type "/" subtype *( OWS ";" OWS parameter ) |  | media-type = type "/" subtype *( OWS ";" OWS parameter ) |
| parameter = attribute "=" value |  | parameter = attribute "=" value |
| partial-URI = <partial-URI, defined in [Part1], Section 2.6> |  | partial-URI = <partial-URI, defined in [Part1], Section 2.7> |
| qvalue = <qvalue, defined in [Part1], Section 6.4> |  | qvalue = <qvalue, defined in [Part1], Section 6.4> |
| subtype = token |  | subtype = token |
| token = <token, defined in [Part1], Section 1.2.2> |  | token = <token, defined in [Part1], Section 1.2.2> |
| type = token |  | type = token |
| value = word |  | value = word |
| skipping to change at page 41, line 41 |  | skipping to change at page 40, line 5 |
| o <http://tools.ietf.org/wg/httpbis/trac/ticket/178>: "Content-MD5 |  | o <http://tools.ietf.org/wg/httpbis/trac/ticket/178>: "Content-MD5 |
| and partial responses" |  | and partial responses" |
| o <http://tools.ietf.org/wg/httpbis/trac/ticket/276>: "untangle |  | o <http://tools.ietf.org/wg/httpbis/trac/ticket/276>: "untangle |
| ABNFs for header fields" |  | ABNFs for header fields" |
| o <http://tools.ietf.org/wg/httpbis/trac/ticket/281>: "confusing |  | o <http://tools.ietf.org/wg/httpbis/trac/ticket/281>: "confusing |
| undefined parameter in media range example" |  | undefined parameter in media range example" |
|  |  | E.16. Since draft-ietf-httpbis-p3-payload-14 |
|  |  | None. |
| Index |  | Index |
| A |  | A |
| Accept header field 16 |  | Accept header field 16 |
| Accept-Charset header field 18 |  | Accept-Charset header field 18 |
| Accept-Encoding header field 19 |  | Accept-Encoding header field 19 |
| Accept-Language header field 20 |  | Accept-Language header field 20 |
| C |  | C |
| Coding Format |  | Coding Format |
| skipping to change at page 42, line 36 |  | skipping to change at page 41, line 4 |
| codings 19 |  | codings 19 |
| content-coding 7 |  | content-coding 7 |
| Content-Encoding 21 |  | Content-Encoding 21 |
| Content-Language 22 |  | Content-Language 22 |
| Content-Location 23 |  | Content-Location 23 |
| Content-Type 24 |  | Content-Type 24 |
| language-range 20 |  | language-range 20 |
| language-tag 10 |  | language-tag 10 |
| media-range 16 |  | media-range 16 |
| media-type 8 |  | media-type 8 |
| MIME-Version 31 |  | MIME-Version 30 |
| parameter 8 |  | parameter 8 |
| subtype 8 |  | subtype 8 |
| type 8 |  | type 8 |
| value 8 |  | value 8 |
| gzip (Coding Format) 7 |  | gzip (Coding Format) 7 |
| H |  | H |
| Header Fields |  | Header Fields |
| Accept 16 |  | Accept 16 |
| Accept-Charset 18 |  | Accept-Charset 18 |
| Accept-Encoding 19 |  | Accept-Encoding 19 |
| Accept-Language 20 |  | Accept-Language 20 |
| Content-Encoding 21 |  | Content-Encoding 21 |
| Content-Language 22 |  | Content-Language 22 |
| Content-Location 23 |  | Content-Location 23 |
| Content-Type 24 |  | Content-Type 24 |
| MIME-Version 31 |  | MIME-Version 30 |
| I |  | I |
| identity (Coding Format) 7 |  | identity (Coding Format) 7 |
| M |  | M |
| MIME-Version header field 31 |  | MIME-Version header field 30 |
| P |  | P |
| payload 10 |  | payload 10 |
| R |  | R |
| representation 11 |  | representation 11 |
| Authors' Addresses |  | Authors' Addresses |
| Roy T. Fielding (editor) |  | Roy T. Fielding (editor) |
End of changes. 50 change blocks.
| 217 lines changed or deleted |  | 153 lines changed or added |
This html diff was produced by rfcdiff 1.38. The latest version is available from http://tools.ietf.org/tools/rfcdiff/