RFC Errata
Found 3 records.
Status: Reported (3)
RFC 8259, "The JavaScript Object Notation (JSON) Data Interchange Format", December 2017
Source of RFC: jsonbis (art)
Errata ID: 5218
Status: Reported
Type: Technical
Reported By: Vasiliy Faronov
Date Reported: 2017-12-28
Section 12 says:
JSON is a subset of JavaScript
It should say:
JSON is nearly a subset of JavaScript
Notes:
JSON is not a subset of JavaScript: there are syntactically valid JSON texts that are not syntactically valid JavaScript. Namely, JSON strings can contain unescaped U+2028 LINE SEPARATOR or U+2029 PARAGRAPH SEPARATOR characters, while JavaScript string literals cannot. Thus, a sequence of characters U+0022 U+2028 U+0022 matches this RFC's 'string' production, but does not match ECMA-262's 'Expression' production.
Errata ID: 5210
Status: Reported
Type: Editorial
Reported By: Julian Reschke
Date Reported: 2017-12-16
Throughout the document, when it says:
Internet Engineering Task Force (IETF) T. Bray, Ed. Request for Comments: 8259 Textuality Obsoletes: 7159 December 2017 Category: Standards Track ISSN: 2070-1721
It should say:
Internet Engineering Task Force (IETF) T. Bray, Ed. Request for Comments: 8259 Textuality STD: 90 December 2017 Obsoletes: 7159 Category: Standards Track ISSN: 2070-1721
Notes:
Missing "STD" entry in boilerplate.
Errata ID: 5318
Status: Reported
Type: Editorial
Reported By: Joakim Erdfelt
Date Reported: 2018-04-04
Section 7 says:
string = quotation-mark *char quotation-mark char = unescaped / escape ( %x22 / ; " quotation mark U+0022 %x5C / ; \ reverse solidus U+005C %x2F / ; / solidus U+002F %x62 / ; b backspace U+0008 %x66 / ; f form feed U+000C %x6E / ; n line feed U+000A %x72 / ; r carriage return U+000D %x74 / ; t tab U+0009 %x75 4HEXDIG ) ; uXXXX U+XXXX escape = %x5C ; \ quotation-mark = %x22 ; " unescaped = %x20-21 / %x23-5B / %x5D-10FFFF
It should say:
string = quotation-mark *char quotation-mark char = unescaped / escape ( %x22 / ; " quotation mark U+0022 %x5C / ; \ reverse solidus U+005C %x2F / ; / solidus U+002F %x62 / ; b backspace U+0008 %x66 / ; f form feed U+000C %x6E / ; n line feed U+000A %x72 / ; r carriage return U+000D %x74 / ; t tab U+0009 %x75 4HEXDIG ) ; uXXXX U+XXXX escape = %x5C ; \ quotation-mark = %x22 ; " unescaped = %x20-21 / %x23-2E / %x30-5B / %x5D-10FFFF
Notes:
The solidus U+002F is listed as being escaped above, but is not excluded in the 'unescaped' sequence.