Subject: [Technical Errata Reported] RFC7231 (4689)

From: RFC Errata System <[email-masked]>
Date: Tue, 10 May 2016 01:00:59 -0700 (PDT)

The following errata report has been submitted for RFC7231,
"Hypertext Transfer Protocol (HTTP/1.1): Semantics and Content".

--------------------------------------
You may review the report below and at:
http://www.rfc-editor.org/errata_search.php?rfc=7231&eid=4689

--------------------------------------
Type: Technical
Reported by: Daurnimator <[email-masked]>

Section: 3.1.1.2

Original Text
-------------
3.1.1.2.  Charset

   HTTP uses charset names to indicate or negotiate the character
   encoding scheme of a textual representation [RFC6365].  A charset is
   identified by a case-insensitive token.

     charset = token

   Charset names ought to be registered in the IANA "Character Sets"
   registry (<http://www.iana.org/assignments/character-sets>) according
   to the procedures defined in [RFC2978].

Corrected Text
--------------
3.1.1.2.  Charset

   HTTP uses charset names to indicate or negotiate the character
   encoding scheme of a textual representation [RFC6365].

     charset       = <mime-charset, see [RFC5987], Section 3.2.1>

   Charset names ought to be registered in the IANA "Character Sets"
   registry (<http://www.iana.org/assignments/character-sets>) according
   to the procedures defined in [RFC2978].

Notes
-----
The definition of charset from RFC 5987 is more strict and more correct.

Instructions:
-------------
This erratum is currently posted as "Reported". If necessary, please
use "Reply All" to discuss whether it should be verified or
rejected. When a decision is reached, the verifying party (IESG)
can log in to change the status and edit the report, if necessary. 

--------------------------------------
RFC7231 (draft-ietf-httpbis-p2-semantics-26)
--------------------------------------
Title               : Hypertext Transfer Protocol (HTTP/1.1): Semantics and Content
Publication Date    : June 2014
Author(s)           : R. Fielding, Ed., J. Reschke, Ed.
Category            : PROPOSED STANDARD
Source              : Hypertext Transfer Protocol Bis APP
Area                : Applications
Stream              : IETF
Verifying Party     : IESG

---

From: Mark Nottingham <[email-masked]>
Date: Tue, 10 May 2016 18:05:12 +1000

HOLD FOR UPDATE.

This is not an errata; it is a suggestion for a technical change in the document, and needs to be discussed by the working group.

If you'd like to make suggestions, the best place to do so is the issues list for this document set:
  https://github.com/httpwg/http11bis/issues

Regards,

> On 10 May 2016, at 6:00 PM, RFC Errata System <[email-masked]> wrote:
> 

--
Mark Nottingham   https://www.mnot.net/

---

From: Julian Reschke <[email-masked]>
Date: Tue, 10 May 2016 10:27:07 +0200

>   https://github.com/httpwg/http11bis/issues

+1

Furthermore, I disagree with that change. The purpose of the ABNF 
production *in the HTTP spec* is to define how field values are parsed, 
not how potentially invalid charset names are to be detected.

Best regards, Julian

---

From: Daurnimator <[email-masked]>
Date: Tue, 31 May 2016 14:29:24 +1000

The issue I ran into is that 'charset' was defined by both RFC 5987 and RFC
7231.

RFC 5988 defines Link using ext-value
RFC 6266 defines Content-Disposition using ext-value
RFC 5987 defines ext-value as `charset "'" [ language ] "'" value-chars`
and charset in terms of mime-charset from Section 2.3 of RFC 2978

RFC 7231 defines charset as a case insensitive token, it is only used for
Accept-Charset.
Though it does mention that charset may be used in other places (such as in
media type parameters)

I guess there is no true conflict here; but it might be nice to address in
a future update.

On 10 May 2016 at 18:27, Julian Reschke <[email-masked]>
wrote:

>> This is not an errata; it is a suggestion for a technical change in the
>> document, and needs to be discussed by the working group.
>>
> production *in the HTTP spec* is to define how field values are parsed, not
> how potentially invalid charset names are to be detected.
>
> Best regards, Julian
>