idnits 2.17.1 draft-reschke-rfc5987bis-03.txt: Checking boilerplate required by RFC 5378 and the IETF Trust (see https://trustee.ietf.org/license-info): ---------------------------------------------------------------------------- No issues found here. Checking nits according to https://www.ietf.org/id-info/1id-guidelines.txt: ---------------------------------------------------------------------------- No issues found here. Checking nits according to https://www.ietf.org/id-info/checklist : ---------------------------------------------------------------------------- ** The document seems to lack an IANA Considerations section. (See Section 2.2 of https://www.ietf.org/id-info/checklist for how to handle the case when there are no actions for IANA.) ** The abstract seems to contain references ([2], [1]), which it shouldn't. Please replace those with straight textual mentions of the documents in question. -- The draft header indicates that this document obsoletes RFC5987, but the abstract doesn't seem to directly say this. It does mention RFC5987 though, so this could be OK. Miscellaneous warnings: ---------------------------------------------------------------------------- == The copyright year in the IETF Trust and authors Copyright Line does not match the current year -- The document date (December 8, 2011) is 4522 days in the past. Is this intentional? Checking references for intended status: Proposed Standard ---------------------------------------------------------------------------- (See RFCs 3967 and 4897 for information about using normative references to lower-maturity documents in RFCs) ** Obsolete normative reference: RFC 2616 (Obsoleted by RFC 7230, RFC 7231, RFC 7232, RFC 7233, RFC 7234, RFC 7235) -- Possible downref: Non-RFC (?) normative reference: ref. 'USASCII' -- Duplicate reference: RFC2978, mentioned in 'Err1912', was also mentioned in 'RFC2978'. -- Obsolete informational reference (is this intentional?): RFC 2388 (Obsoleted by RFC 7578) -- Obsolete informational reference (is this intentional?): RFC 5987 (Obsoleted by RFC 8187) -- Obsolete informational reference (is this intentional?): RFC 5988 (Obsoleted by RFC 8288) Summary: 3 errors (**), 0 flaws (~~), 1 warning (==), 7 comments (--). Run idnits with the --verbose option for more detailed information about the items above. -------------------------------------------------------------------------------- 2 Network Working Group J. Reschke 3 Internet-Draft greenbytes 4 Obsoletes: 5987 (if approved) December 8, 2011 5 Intended status: Standards Track 6 Expires: June 10, 2012 8 Indicating Character Encoding and Language for HTTP Header Field 9 Parameters 10 draft-reschke-rfc5987bis-03 12 Abstract 14 By default, message header field parameters in Hypertext Transfer 15 Protocol (HTTP) messages cannot carry characters outside the ISO- 16 8859-1 character set. RFC 2231 defines an encoding mechanism for use 17 in Multipurpose Internet Mail Extensions (MIME) headers. This 18 document specifies an encoding suitable for use in HTTP header fields 19 that is compatible with a profile of the encoding defined in RFC 20 2231. 22 Editorial Note (To be removed by RFC Editor before publication) 24 Distribution of this document is unlimited. Although this is not a 25 work item of the HTTPbis Working Group, comments should be sent to 26 the Hypertext Transfer Protocol (HTTP) mailing list at 27 ietf-http-wg@w3.org [1], which may be joined by sending a message 28 with subject "subscribe" to ietf-http-wg-request@w3.org [2]. 30 Discussions of the HTTPbis Working Group are archived at 31 . 33 XML versions, latest edits and the issues list for this document are 34 available from 35 . A 36 collection of test cases is available at 37 . 39 Status of This Memo 41 This Internet-Draft is submitted in full conformance with the 42 provisions of BCP 78 and BCP 79. 44 Internet-Drafts are working documents of the Internet Engineering 45 Task Force (IETF). Note that other groups may also distribute 46 working documents as Internet-Drafts. The list of current Internet- 47 Drafts is at http://datatracker.ietf.org/drafts/current/. 49 Internet-Drafts are draft documents valid for a maximum of six months 50 and may be updated, replaced, or obsoleted by other documents at any 51 time. It is inappropriate to use Internet-Drafts as reference 52 material or to cite them other than as "work in progress." 54 This Internet-Draft will expire on June 10, 2012. 56 Copyright Notice 58 Copyright (c) 2011 IETF Trust and the persons identified as the 59 document authors. All rights reserved. 61 This document is subject to BCP 78 and the IETF Trust's Legal 62 Provisions Relating to IETF Documents 63 (http://trustee.ietf.org/license-info) in effect on the date of 64 publication of this document. Please review these documents 65 carefully, as they describe your rights and restrictions with respect 66 to this document. Code Components extracted from this document must 67 include Simplified BSD License text as described in Section 4.e of 68 the Trust Legal Provisions and are provided without warranty as 69 described in the Simplified BSD License. 71 Table of Contents 73 1. Introduction . . . . . . . . . . . . . . . . . . . . . . . . . 4 74 2. Notational Conventions . . . . . . . . . . . . . . . . . . . . 4 75 3. Comparison to RFC 2231 and Definition of the Encoding . . . . 4 76 3.1. Parameter Continuations . . . . . . . . . . . . . . . . . 5 77 3.2. Parameter Value Character Encoding and Language 78 Information . . . . . . . . . . . . . . . . . . . . . . . 5 79 3.2.1. Definition . . . . . . . . . . . . . . . . . . . . . . 5 80 3.2.2. Examples . . . . . . . . . . . . . . . . . . . . . . . 8 81 3.3. Language Specification in Encoded Words . . . . . . . . . 8 82 4. Guidelines for Usage in HTTP Header Field Definitions . . . . 8 83 4.1. When to Use the Extension . . . . . . . . . . . . . . . . 9 84 4.2. Error Handling . . . . . . . . . . . . . . . . . . . . . . 9 85 5. Security Considerations . . . . . . . . . . . . . . . . . . . 10 86 6. Acknowledgements . . . . . . . . . . . . . . . . . . . . . . . 10 87 7. References . . . . . . . . . . . . . . . . . . . . . . . . . . 10 88 7.1. Normative References . . . . . . . . . . . . . . . . . . . 10 89 7.2. Informative References . . . . . . . . . . . . . . . . . . 11 90 Appendix A. Changes from RFC 5987 . . . . . . . . . . . . . . . . 12 91 Appendix B. Implementation Report . . . . . . . . . . . . . . . . 12 92 Appendix C. Change Log (to be removed by RFC Editor before 93 publication) . . . . . . . . . . . . . . . . . . . . 13 94 C.1. Since RFC5987 . . . . . . . . . . . . . . . . . . . . . . 13 95 C.2. Since draft-reschke-rfc5987bis-00 . . . . . . . . . . . . 13 96 C.3. Since draft-reschke-rfc5987bis-01 . . . . . . . . . . . . 13 97 C.4. Since draft-reschke-rfc5987bis-02 . . . . . . . . . . . . 13 98 Appendix D. Resolved issues (to be removed by RFC Editor 99 before publication) . . . . . . . . . . . . . . . . . 13 100 D.1. terminology . . . . . . . . . . . . . . . . . . . . . . . 13 101 Appendix E. Open issues (to be removed by RFC Editor prior to 102 publication) . . . . . . . . . . . . . . . . . . . . 13 103 E.1. edit . . . . . . . . . . . . . . . . . . . . . . . . . . . 14 104 E.2. parmsyntax . . . . . . . . . . . . . . . . . . . . . . . . 14 105 E.3. valuesyntax . . . . . . . . . . . . . . . . . . . . . . . 14 106 E.4. httpbis . . . . . . . . . . . . . . . . . . . . . . . . . 14 108 1. Introduction 110 By default, message header field parameters in HTTP ([RFC2616]) 111 messages cannot carry characters outside the ISO-8859-1 coded 112 character set ([ISO-8859-1]). RFC 2231 ([RFC2231]) defines an 113 encoding mechanism for use in MIME headers. This document specifies 114 an encoding suitable for use in HTTP header fields that is compatible 115 with a profile of the encoding defined in RFC 2231. 117 This document obsoletes [RFC5987] and moves it to "historic" status; 118 the changes are summarized in Appendix A. 120 Note: in the remainder of this document, RFC 2231 is only 121 referenced for the purpose of explaining the choice of features 122 that were adopted; they are therefore purely informative. 124 Note: this encoding does not apply to message payloads transmitted 125 over HTTP, such as when using the media type "multipart/form-data" 126 ([RFC2388]). 128 2. Notational Conventions 130 The key words "MUST", "MUST NOT", "REQUIRED", "SHALL", "SHALL NOT", 131 "SHOULD", "SHOULD NOT", "RECOMMENDED", "MAY", and "OPTIONAL" in this 132 document are to be interpreted as described in [RFC2119]. 134 This specification uses the ABNF (Augmented Backus-Naur Form) 135 notation defined in [RFC5234]. The following core rules are included 136 by reference, as defined in [RFC5234], Appendix B.1: ALPHA (letters), 137 DIGIT (decimal 0-9), HEXDIG (hexadecimal 0-9/A-F/a-f), and LWSP 138 (linear whitespace). 140 This specification uses terminology defined in [RFC6365], namely: 141 "character encoding scheme" (below abbreviated to "character 142 encoding"), "charset" and "coded character set". 144 Note that this differs from RFC 2231, which uses the term "character 145 set" for "character encoding scheme". 147 3. Comparison to RFC 2231 and Definition of the Encoding 149 RFC 2231 defines several extensions to MIME. The sections below 150 discuss if and how they apply to HTTP header fields. 152 In short: 154 o Parameter Continuations aren't needed (Section 3.1), 155 o Character Encoding and Language Information are useful, therefore 156 a simple subset is specified (Section 3.2), and 158 o Language Specifications in Encoded Words aren't needed 159 (Section 3.3). 161 3.1. Parameter Continuations 163 Section 3 of [RFC2231] defines a mechanism that deals with the length 164 limitations that apply to MIME headers. These limitations do not 165 apply to HTTP ([RFC2616], Section 19.4.7). 167 Thus, parameter continuations are not part of the encoding defined by 168 this specification. 170 3.2. Parameter Value Character Encoding and Language Information 172 Section 4 of [RFC2231] specifies how to embed language information 173 into parameter values, and also how to encode non-ASCII characters, 174 dealing with restrictions both in MIME and HTTP header field 175 parameters. 177 However, RFC 2231 does not specify a mandatory-to-implement character 178 encoding, making it hard for senders to decide which encoding to use. 179 Thus, recipients implementing this specification MUST support the 180 "UTF-8" character encoding [RFC3629]. 182 Furthermore, RFC 2231 allows the character encoding information to be 183 left out. The encoding defined by this specification does not allow 184 that. 186 3.2.1. Definition 188 The syntax for parameters is defined in Section 3.6 of [RFC2616] 189 (with RFC 2616 implied LWS translated to RFC 5234 LWSP): 191 parameter = attribute LWSP "=" LWSP value 193 attribute = token 194 value = token / quoted-string 196 quoted-string = 197 token = 199 In order to include character encoding and language information, this 200 specification modifies the RFC 2616 grammar to be: 202 parameter = reg-parameter / ext-parameter 204 reg-parameter = parmname LWSP "=" LWSP value 206 ext-parameter = parmname "*" LWSP "=" LWSP ext-value 208 parmname = 1*attr-char 210 ext-value = charset "'" [ language ] "'" value-chars 211 ; like RFC 2231's 212 ; (see [RFC2231], Section 7) 214 charset = "UTF-8" / mime-charset 216 mime-charset = 1*mime-charsetc 217 mime-charsetc = ALPHA / DIGIT 218 / "!" / "#" / "$" / "%" / "&" 219 / "+" / "-" / "^" / "_" / "`" 220 / "{" / "}" / "~" 221 ; as in Section 2.3 of [RFC2978] 222 ; except that the single quote is not included 223 ; SHOULD be registered in the IANA charset registry 225 language = 227 value-chars = *( pct-encoded / attr-char ) 229 pct-encoded = "%" HEXDIG HEXDIG 230 ; see [RFC3986], Section 2.1 232 attr-char = ALPHA / DIGIT 233 / "!" / "#" / "$" / "&" / "+" / "-" / "." 234 / "^" / "_" / "`" / "|" / "~" 235 ; token except ( "*" / "'" / "%" ) 237 Thus, a parameter is either a regular parameter (reg-parameter), as 238 previously defined in Section 3.6 of [RFC2616], or an extended 239 parameter (ext-parameter). 241 Extended parameters are those where the left-hand side of the 242 assignment ends with an asterisk character. 244 The value part of an extended parameter (ext-value) is a token that 245 consists of three parts: the REQUIRED character encoding name 246 (charset), the OPTIONAL language information (language), and a 247 character sequence representing the actual value (value-chars), 248 separated by single quote characters. Note that both character 249 encoding names and language tags are restricted to the US-ASCII coded 250 character set, and are matched case-insensitively (see [RFC2978], 251 Section 2.3 and [RFC5646], Section 2.1.1). 253 Inside the value part, characters not contained in attr-char are 254 encoded into an octet sequence using the specified character 255 encoding. That octet sequence is then percent-encoded as specified 256 in Section 2.1 of [RFC3986]. 258 Producers MUST use the "UTF-8" ([RFC3629]) character encoding. 259 Extension character encodings (mime-charset) are reserved for future 260 use. 262 Note: recipients should be prepared to handle encoding errors, 263 such as malformed or incomplete percent escape sequences, or non- 264 decodable octet sequences, in a robust manner. This specification 265 does not mandate any specific behavior, for instance, the 266 following strategies are all acceptable: 268 * ignoring the parameter, 270 * stripping a non-decodable octet sequence, 272 * substituting a non-decodable octet sequence by a replacement 273 character, such as the Unicode character U+FFFD (Replacement 274 Character). 276 Note: the RFC 2616 token production ([RFC2616], Section 2.2) 277 differs from the production used in RFC 2231 (imported from 278 Section 5.1 of [RFC2045]) in that curly braces ("{" and "}") are 279 excluded. Thus, these two characters are excluded from the attr- 280 char production as well. 282 Note: the ABNF defined here differs from the one in 283 Section 2.3 of [RFC2978] in that it does not allow the single 284 quote character (see also RFC Errata ID 1912 [Err1912]). In 285 practice, no character encoding names using that character have 286 been registered at the time of this writing. 288 Note: [RFC5987] did require support for ISO-8859-1, too; for 289 compatibility with legacy code, recipients are encouraged to 290 support this encoding as well. 292 3.2.2. Examples 294 Non-extended notation, using "token": 296 foo: bar; title=Economy 298 Non-extended notation, using "quoted-string": 300 foo: bar; title="US-$ rates" 302 Extended notation, using the Unicode character U+00A3 (POUND SIGN): 304 foo: bar; title*=utf-8'en'%C2%A3%20rates 306 Note: the Unicode pound sign character U+00A3 was encoded into the 307 octet sequence C2 A3 using the UTF-8 character encoding, then 308 percent-encoded. Also, note that the space character was encoded as 309 %20, as it is not contained in attr-char. 311 Extended notation, using the Unicode characters U+00A3 (POUND SIGN) 312 and U+20AC (EURO SIGN): 314 foo: bar; title*=UTF-8''%c2%a3%20and%20%e2%82%ac%20rates 316 Note: the Unicode pound sign character U+00A3 was encoded into the 317 octet sequence C2 A3 using the UTF-8 character encoding, then 318 percent-encoded. Likewise, the Unicode euro sign character U+20AC 319 was encoded into the octet sequence E2 82 AC, then percent-encoded. 320 Also note that HEXDIG allows both lowercase and uppercase characters, 321 so recipients must understand both, and that the language information 322 is optional, while the character encoding is not. 324 3.3. Language Specification in Encoded Words 326 Section 5 of [RFC2231] extends the encoding defined in [RFC2047] to 327 also support language specification in encoded words. Although the 328 HTTP/1.1 specification does refer to RFC 2047 ([RFC2616], Section 329 2.2), it's not clear to which header field exactly it applies, and 330 whether it is implemented in practice (see 331 for details). 333 Thus, this specification does not include this feature. 335 4. Guidelines for Usage in HTTP Header Field Definitions 337 Specifications of HTTP header fields that use the extensions defined 338 in Section 3.2 ought to clearly state that. A simple way to achieve 339 this is to normatively reference this specification, and to include 340 the ext-value production into the ABNF for that header field. 342 For instance: 344 foo-header = "foo" LWSP ":" LWSP token ";" LWSP title-param 345 title-param = "title" LWSP "=" LWSP value 346 / "title*" LWSP "=" LWSP ext-value 347 ext-value = 349 Note: The Parameter Value Continuation feature defined in Section 350 3 of [RFC2231] makes it impossible to have multiple instances of 351 extended parameters with identical parmname components, as the 352 processing of continuations would become ambiguous. Thus, 353 specifications using this extension are advised to disallow this 354 case for compatibility with RFC 2231. 356 4.1. When to Use the Extension 358 Section 4.2 of [RFC2277] requires that protocol elements containing 359 human-readable text are able to carry language information. Thus, 360 the ext-value production ought to be always used when the parameter 361 value is of textual nature and its language is known. 363 Furthermore, the extension ought to also be used whenever the 364 parameter value needs to carry characters not present in the US-ASCII 365 ([USASCII]) coded character set (note that it would be unacceptable 366 to define a new parameter that would be restricted to a subset of the 367 Unicode character set). 369 4.2. Error Handling 371 Header field specifications need to define whether multiple instances 372 of parameters with identical parmname components are allowed, and how 373 they should be processed. This specification suggests that a 374 parameter using the extended syntax takes precedence. This would 375 allow producers to use both formats without breaking recipients that 376 do not understand the extended syntax yet. 378 Example: 380 foo: bar; title="EURO exchange rates"; 381 title*=utf-8''%e2%82%ac%20exchange%20rates 383 In this case, the sender provides an ASCII version of the title for 384 legacy recipients, but also includes an internationalized version for 385 recipients understanding this specification -- the latter obviously 386 ought to prefer the new syntax over the old one. 388 Note: at the time of this writing, many implementations failed to 389 ignore the form they do not understand, or prioritize the ASCII 390 form although the extended syntax was present. 392 5. Security Considerations 394 The format described in this document makes it possible to transport 395 non-ASCII characters, and thus enables character "spoofing" 396 scenarios, in which a displayed value appears to be something other 397 than it is. 399 Furthermore, there are known attack scenarios relating to decoding 400 UTF-8. 402 See Section 10 of [RFC3629] for more information on both topics. 404 In addition, the extension specified in this document makes it 405 possible to transport multiple language variants for a single 406 parameter, and such use might allow spoofing attacks, where different 407 language versions of the same parameter are not equivalent. Whether 408 this attack is useful as an attack depends on the parameter 409 specified. 411 6. Acknowledgements 413 Thanks to Martin Duerst and Frank Ellermann for help figuring out 414 ABNF details, to Graham Klyne and Alexey Melnikov for general review, 415 to Chris Newman for pointing out an RFC 2231 incompatibility, and to 416 Benjamin Carlyle, Roar Lauritzsen, and Eric Lawrence for 417 implementer's feedback. 419 7. References 421 7.1. Normative References 423 [RFC2119] Bradner, S., "Key words for use in RFCs to Indicate 424 Requirement Levels", BCP 14, RFC 2119, March 1997. 426 [RFC2616] Fielding, R., Gettys, J., Mogul, J., Frystyk, H., 427 Masinter, L., Leach, P., and T. Berners-Lee, "Hypertext 428 Transfer Protocol -- HTTP/1.1", RFC 2616, June 1999. 430 [RFC2978] Freed, N. and J. Postel, "IANA Charset Registration 431 Procedures", BCP 19, RFC 2978, October 2000. 433 [RFC3629] Yergeau, F., "UTF-8, a transformation format of ISO 434 10646", STD 63, RFC 3629, November 2003. 436 [RFC3986] Berners-Lee, T., Fielding, R., and L. Masinter, 437 "Uniform Resource Identifier (URI): Generic Syntax", 438 STD 66, RFC 3986, January 2005. 440 [RFC5234] Crocker, D., Ed. and P. Overell, "Augmented BNF for 441 Syntax Specifications: ABNF", STD 68, RFC 5234, 442 January 2008. 444 [RFC5646] Phillips, A., Ed. and M. Davis, Ed., "Tags for 445 Identifying Languages", BCP 47, RFC 5646, 446 September 2009. 448 [USASCII] American National Standards Institute, "Coded Character 449 Set -- 7-bit American Standard Code for Information 450 Interchange", ANSI X3.4, 1986. 452 7.2. Informative References 454 [Err1912] RFC Errata, "Errata ID 1912, RFC 2978", 455 . 457 [ISO-8859-1] International Organization for Standardization, 458 "Information technology -- 8-bit single-byte coded 459 graphic character sets -- Part 1: Latin alphabet No. 460 1", ISO/IEC 8859-1:1998, 1998. 462 [RFC2045] Freed, N. and N. Borenstein, "Multipurpose Internet 463 Mail Extensions (MIME) Part One: Format of Internet 464 Message Bodies", RFC 2045, November 1996. 466 [RFC2047] Moore, K., "MIME (Multipurpose Internet Mail 467 Extensions) Part Three: Message Header Extensions for 468 Non-ASCII Text", RFC 2047, November 1996. 470 [RFC2231] Freed, N. and K. Moore, "MIME Parameter Value and 471 Encoded Word Extensions: Character Sets, Languages, and 472 Continuations", RFC 2231, November 1997. 474 [RFC2277] Alvestrand, H., "IETF Policy on Character Sets and 475 Languages", BCP 18, RFC 2277, January 1998. 477 [RFC2388] Masinter, L., "Returning Values from Forms: multipart/ 478 form-data", RFC 2388, August 1998. 480 [RFC5987] Reschke, J., "Character Set and Language Encoding for 481 Hypertext Transfer Protocol (HTTP) Header Field 482 Parameters", RFC 5987, August 2010. 484 [RFC5988] Nottingham, M., "Web Linking", RFC 5988, October 2010. 486 [RFC6266] Reschke, J., "Use of the Content-Disposition Header 487 Field in the Hypertext Transfer Protocol (HTTP)", 488 RFC 6266, June 2011. 490 [RFC6365] Hoffman, P. and J. Klensin, "Terminology Used in 491 Internationalization in the IETF", BCP 166, RFC 6365, 492 September 2011. 494 URIs 496 [1] 498 [2] 500 Appendix A. Changes from RFC 5987 502 This section summarizes the changes compared to [RFC5987]: 504 o The document title was changed to "Indicating Character Encoding 505 and Language for HTTP Header Field Parameters". 507 o The requirement to support the "ISO-8859-1" encoding was removed. 509 Appendix B. Implementation Report 511 The encoding defined in this document currently is used for two 512 different HTTP header fields: 514 o "Content-Disposition", defined in [RFC6266], and 516 o "Link", defined in [RFC5988]. 518 As the encoding is a profile/clarification of the one defined in 519 [RFC2231] in 1997, many user agents already supported it for use in 520 "Content-Disposition" when [RFC5987] got published. 522 Since the publication of [RFC5987], two more popular desktop user 523 agents have added support for this encoding; see for details. 525 At this time, only one major desktop user agent (Safari) does not 526 support it. 528 Note that the implementation in Internet Explorer 9 does not support 529 the ISO-8859-1 character encoding; this document revision 530 acknowledges that UTF-8 is sufficient for expressing all code points, 531 and removes the requirement to support ISO-8859-1. 533 The "Link" header field, on the other hand, was only recently 534 specified in [RFC5988]. At the time of this writing, no User Agent 535 supported the "title*" parameter, using the encoding defined by this 536 document, but implementation for Firefox was already in progress (see 537 ). 539 Appendix C. Change Log (to be removed by RFC Editor before publication) 541 C.1. Since RFC5987 543 Only editorial changes for the purpose of starting the revision 544 process (obs5987). 546 C.2. Since draft-reschke-rfc5987bis-00 548 Resolved issues "iso-8859-1" and "title" (title simplified). Added 549 and resolved issue "historic5987". 551 C.3. Since draft-reschke-rfc5987bis-01 553 Added issues "httpbis", "parmsyntax", "terminology" and 554 "valuesyntax". Closed issue "impls". 556 C.4. Since draft-reschke-rfc5987bis-02 558 Resolved issue "terminology". 560 Appendix D. Resolved issues (to be removed by RFC Editor before 561 publication) 563 Issues that were either rejected or resolved in this version of this 564 document. 566 D.1. terminology 568 Type: edit 570 julian.reschke@greenbytes.de (2011-09-17): Try to be consistent with 571 the terminology defined in RFC 6365. 573 Resolution (2011-12-08): Done (but abbreviating "character encoding 574 scheme" to "character encoding"). 576 Appendix E. Open issues (to be removed by RFC Editor prior to 577 publication) 579 E.1. edit 581 Type: edit 583 julian.reschke@greenbytes.de (2011-04-15): Umbrella issue for 584 editorial fixes/enhancements. 586 E.2. parmsyntax 588 Type: edit 590 593 James.H.Manger@team.telstra.com (2011-11-02): Noted by James Manger: 594 "Presumably RFC5987 (or its predecessors) decided it was highly 595 unlikely that any parameter names in use ended in "*" (though they 596 are valid) so it could redefine the syntax of values for such names." 597 - add a note that the notation indeed overloads parameter name syntax 598 and clarify the use. 600 E.3. valuesyntax 602 Type: edit 604 607 James.H.Manger@team.telstra.com (2011-11-02): Noted by James Manger: 608 "Curiously, RFC5987 disobeys the proposed recommendations for new 609 parameters. It allows foo*=UTF-8''coll%C3%A8gues but not foo*="UTF- 610 8''coll%C3%A8gues" That might be ok with a parser that understands 611 token, quoted-string, and RFC5987, but presumably it will cause 612 problems when RFC5987 processing is done after a "standard httpbis 613 parser" handles the token | quoted-string step. " - add a note 614 clarifying that this is indeed a shortcoming of the format, and what 615 it means for implementations. 617 E.4. httpbis 619 Type: edit 621 julian.reschke@greenbytes.de (2011-09-17): The document refers 622 normatively to RFC 2616. Should it continue to do so, or should we 623 wait for HTTPbis? This may affect edge case in the ABNF, such as the 624 definition of linear white space or the characters allowed in 625 "token". 627 Author's Address 629 Julian F. Reschke 630 greenbytes GmbH 631 Hafenweg 16 632 Muenster, NW 48155 633 Germany 635 EMail: julian.reschke@greenbytes.de 636 URI: http://greenbytes.de/tech/webdav/