Re: [Json] [Technical Errata Reported] RFC7158 (3907)

"Paul E. Jones" <> Tue, 04 March 2014 20:13 UTC

Return-Path: <>
Received: from localhost ( []) by (Postfix) with ESMTP id CD1561A0263 for <>; Tue, 4 Mar 2014 12:13:01 -0800 (PST)
X-Virus-Scanned: amavisd-new at
X-Spam-Flag: NO
X-Spam-Score: -1.538
X-Spam-Status: No, score=-1.538 tagged_above=-999 required=5 tests=[BAYES_00=-1.9, DKIM_ADSP_ALL=0.8, DKIM_SIGNED=0.1, HTML_MESSAGE=0.001, RP_MATCHES_RCVD=-0.547, SPF_HELO_PASS=-0.001, SPF_PASS=-0.001, T_DKIM_INVALID=0.01] autolearn=no
Received: from ([]) by localhost ( []) (amavisd-new, port 10024) with ESMTP id HeEk-lwegELy for <>; Tue, 4 Mar 2014 12:13:00 -0800 (PST)
Received: from ( []) by (Postfix) with ESMTP id BE82A1A020D for <>; Tue, 4 Mar 2014 12:12:59 -0800 (PST)
Received: from [] ( []) (authenticated bits=0) by (8.14.5/8.14.5) with ESMTP id s24KCWj2015484 (version=TLSv1/SSLv3 cipher=AES128-SHA bits=128 verify=NO); Tue, 4 Mar 2014 15:12:32 -0500
DKIM-Signature: v=1; a=rsa-sha256; c=simple/simple;; s=dublin; t=1393963954; bh=co/SuVaQKly/kQgeV8KMDBkJp9b8a3GPwkxmk6Fv2jc=; h=From:To:Subject:Cc:Date:Content-Type:In-Reply-To:Message-Id: Mime-Version:Reply-To; b=JiK/3Jyx2d0802AEAonSjm4Qr9XwrlbJ+2p3QXJ4/s239hKk+FG+9ZqDwrxM/A4kV unfdnGkzB1/sn1thpkz7nRniQCX0mnqt7nL2hKF3+qbQXI2gcCaukN3G8hvK52AiLh CnvpOL9PVzupY7NWgtv4QR0UOlGZaagophZaj5e8=
From: "Paul E. Jones" <>
To: Tim Bray <>
Date: Tue, 04 Mar 2014 20:12:45 +0000
Content-Type: multipart/alternative; boundary="------=_MB4AF4E751-9671-4E95-937A-24BDF17C2F70"
In-Reply-To: <>
Message-Id: <em36b68433-9adf-4d3e-8035-a8c1b5b0e60f@sydney>
Mime-Version: 1.0
User-Agent: eM_Client/6.0.19861.0
Cc: Pete Resnick <>, Bjoern Hoehrmann <>, Paul Hoffman <>, "" <>, Matthew Miller <>, Barry Leiba <>,, RFC Errata System <>
Subject: Re: [Json] [Technical Errata Reported] RFC7158 (3907)
X-Mailman-Version: 2.1.15
Precedence: list
Reply-To: "Paul E. Jones" <>
List-Id: "JavaScript Object Notation \(JSON\) WG mailing list" <>
List-Unsubscribe: <>, <>
List-Archive: <>
List-Post: <>
List-Help: <>
List-Subscribe: <>, <>
X-List-Received-Date: Tue, 04 Mar 2014 20:13:02 -0000


Yeah, I saw that.  However, I still think this only opens the door for 
future implementations to produce things that do not work reliably.  As 
Marc Lehmann rightfully pointed out (and, BTW, his Errata text appears 
to have disappeared), a serializer that is requested to serialize a 
series of integers like 1 and 999 might produce 1999.  Reading that back 
in, the single value 1999 would be read.  Likewise, a serializer might 
produce truefalse as output, but then fail when one tries to read that 
back.  One might argue to start all serialization with whitespace to 
avoid having values serialized adjacent to each other.  That would work, 
but unfortunate.

Maybe I missed it, but I could not see _why_ the change was made to this 
production.  What was wrong with allowing only an object or array?

Looking at some of the messages hanging off of the link Björn provided, 
I can see people are worried, too, about the BOM.  The previous text 
made it very clear how to determine whether the text is UTF-16LE or 
UTF-16BE, for example.  That text seems to have disappeared.  Is there a 
reason?  I think the same approach spelled out in Section 3 of RFC 4627 
would still work, no?


------ Original Message ------
From: "Tim Bray" <>
To: "Paul E. Jones" <>
Cc: "Bjoern Hoehrmann" <>; "RFC Errata System" 
<>; "Pete Resnick" <>; 
"Paul Hoffman" <>; "" <>; 
"Matthew Miller" <>; "Barry Leiba" 
Sent: 3/4/2014 12:27:51 PM
Subject: Re: [Json] [Technical Errata Reported] RFC7158 (3907)

>On this issue, also please read the interoperability note in the 
>paragraph before the new production.
>On Tue, Mar 4, 2014 at 6:17 AM, Paul E. Jones <> 
>>I've not been following the list closely, as I thought this was more 
>>of an editorial exercise than anything else.  This is definitely more 
>>than editorial.  This could definitely break things and the commenter 
>>is right that there are instances where there could be 
>>Why was it decided to change this:
>>     JSON-text = object / array
>>     JSON-text = ws value ws
>>Was there some misunderstanding of what 4627 said?
>>------ Original Message ------
>>From: "Bjoern Hoehrmann" <>
>>To: "RFC Errata System" <>
>>Sent: 3/2/2014 4:31:07 PM
>>Subject: Re: [Json] [Technical Errata Reported] RFC7158 (3907)
>>>* RFC Errata System wrote:
>>>>Since RFC7158 breaks compatibility with the specifications, this 
>>>>should be
>>>>duly noted.
>>>It is in Appendix A., "Changes from RFC 4627":
>>>    o Changed the definition of "JSON text" so that it can be any JSON
>>>       value, removing the constraint that it be an object or array.
>>>Failing to note this in the Introduction is not ideal, but the errata
>>>system is not a good place to record that (holding it for document 
>>>date probably does not make sense, if and when the document does get
>>>updated, this particular issue will not require prominent notice).
>>>Björn Höhrmann · · 
>>>Am Badedeich 7 · Telefon: +49(0)160/4415681 · 
>>>25899 Dagebüll · PGP Pub. KeyID: 0xA4357E78 · 
>>>json mailing list