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

"Paul E. Jones" <paulej@packetizer.com> Fri, 07 March 2014 21:09 UTC

Return-Path: <paulej@packetizer.com>
X-Original-To: json@ietfa.amsl.com
Delivered-To: json@ietfa.amsl.com
Received: from localhost (ietfa.amsl.com [127.0.0.1]) by ietfa.amsl.com (Postfix) with ESMTP id AC72C1A01EE for <json@ietfa.amsl.com>; Fri, 7 Mar 2014 13:09:39 -0800 (PST)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: -1.539
X-Spam-Level:
X-Spam-Status: No, score=-1.539 tagged_above=-999 required=5 tests=[BAYES_00=-1.9, DKIM_ADSP_ALL=0.8, DKIM_SIGNED=0.1, RP_MATCHES_RCVD=-0.547, SPF_HELO_PASS=-0.001, SPF_PASS=-0.001, T_DKIM_INVALID=0.01] autolearn=no
Received: from mail.ietf.org ([4.31.198.44]) by localhost (ietfa.amsl.com [127.0.0.1]) (amavisd-new, port 10024) with ESMTP id YU_FHwB14flO for <json@ietfa.amsl.com>; Fri, 7 Mar 2014 13:09:38 -0800 (PST)
Received: from dublin.packetizer.com (dublin.packetizer.com [75.101.130.125]) by ietfa.amsl.com (Postfix) with ESMTP id 452FC1A0102 for <json@ietf.org>; Fri, 7 Mar 2014 13:09:38 -0800 (PST)
Received: from [192.168.1.20] (cpe-024-211-197-136.nc.res.rr.com [24.211.197.136]) (authenticated bits=0) by dublin.packetizer.com (8.14.5/8.14.5) with ESMTP id s27L9JbN030691 (version=TLSv1/SSLv3 cipher=AES128-SHA bits=128 verify=NO); Fri, 7 Mar 2014 16:09:20 -0500
DKIM-Signature: v=1; a=rsa-sha256; c=simple/simple; d=packetizer.com; s=dublin; t=1394226561; bh=a0FcbAfzomjAQNEDCRPA7gRbBBNhhM6KX2Nl07l3D6A=; h=From:To:Subject:Cc:Date:Content-Transfer-Encoding:Content-Type: In-Reply-To:Message-Id:Mime-Version:Reply-To; b=Kq79Al+ZJ+/eNVj9lLbaR5CzWXRL/jMy7oTZF7eMWya8PhhOLU+abNIL9Srm4DHok EzQ2UP9HqenQL60M1lA6UfJ+pTuf3eIRSBJ1o1pwzVpK9rSUpJGsNRoWwtHguBiI8s JX+Q4LMVGYowMbCICQbW1GJ1x19hWRIwanzK4OFg=
From: "Paul E. Jones" <paulej@packetizer.com>
To: "Joe Hildebrand (jhildebr)" <jhildebr@cisco.com>, Tim Bray <tbray@textuality.com>
Date: Fri, 07 Mar 2014 21:09:39 +0000
Content-Transfer-Encoding: quoted-printable
Content-Type: text/plain; format="flowed"; charset="utf-8"
In-Reply-To: <CF3F74B5.3CE74%jhildebr@cisco.com>
Message-Id: <emfd366a2f-fafb-4a12-b1aa-034f9f6e4feb@sydney>
Mime-Version: 1.0
User-Agent: eM_Client/6.0.19861.0
Archived-At: http://mailarchive.ietf.org/arch/msg/json/k4Ld3vA0oKREDaOU-AwcPuiWAtw
Cc: Pete Resnick <presnick@qti.qualcomm.com>, Bjoern Hoehrmann <derhoermi@gmx.net>, Paul Hoffman <paul.hoffman@vpnc.org>, "json@ietf.org" <json@ietf.org>, "Matt Miller (mamille2)" <mamille2@cisco.com>, Barry Leiba <barryleiba@computer.org>, "rfc7158@schmorp.de" <rfc7158@schmorp.de>
Subject: Re: [Json] [Technical Errata Reported] RFC7158 (3907)
X-BeenThere: json@ietf.org
X-Mailman-Version: 2.1.15
Precedence: list
Reply-To: "Paul E. Jones" <paulej@packetizer.com>
List-Id: "JavaScript Object Notation \(JSON\) WG mailing list" <json.ietf.org>
List-Unsubscribe: <https://www.ietf.org/mailman/options/json>, <mailto:json-request@ietf.org?subject=unsubscribe>
List-Archive: <http://www.ietf.org/mail-archive/web/json/>
List-Post: <mailto:json@ietf.org>
List-Help: <mailto:json-request@ietf.org?subject=help>
List-Subscribe: <https://www.ietf.org/mailman/listinfo/json>, <mailto:json-request@ietf.org?subject=subscribe>
X-List-Received-Date: Fri, 07 Mar 2014 21:09:39 -0000

Joe,

But if my understanding is correct, it's not just a matter of 
backward-compatibility.  There is the question of "how does a serializer 
write out data now"?

As Marc pointed out, if one has two integers and requests a stateless 
serializing function to write those out to a file or on the wire, it 
will write out "1" and "999", using his examples.  Reading it back in, 
it would look like a single integer ("1999").  This means the serializer 
would have to be explicitly told whether to insert space before or after 
writing out data.  Alternatively, the application would have to ask the 
serializer to serialize it to a string and the application deal with 
whitespace itself.

Paul

------ Original Message ------
From: "Joe Hildebrand (jhildebr)" <jhildebr@cisco.com>
To: "Paul E. Jones" <paulej@packetizer.com>; "Tim Bray" 
<tbray@textuality.com>
Cc: "Pete Resnick" <presnick@qti.qualcomm.com>; "Bjoern Hoehrmann" 
<derhoermi@gmx.net>; "Paul Hoffman" <paul.hoffman@vpnc.org>; 
"json@ietf.org" <json@ietf.org>; "Matt Miller (mamille2)" 
<mamille2@cisco.com>; "Barry Leiba" <barryleiba@computer.org>; 
"rfc7158@schmorp.de" <rfc7158@schmorp.de>; "RFC Errata System" 
<rfc-editor@rfc-editor.org>
Sent: 3/7/2014 8:09:30 AM
Subject: Re: [Json] [Technical Errata Reported] RFC7158 (3907)

>Paul: ECMA's version of JSON has allowed anything at the top level for
>quite a while. The WG explicitly decided that having the two specs in
>sync was more important to us than the backward-compatility issue, 
>which
>we documented. This isn't a "mistake" in the sense that we didn't know 
>it
>was happening - it was the consensus of the people who were 
>participating.
>
>
>On 3/4/14 8:12 PM, "Paul E. Jones" <paulej@packetizer.com> wrote:
>
>>Tim,
>>
>>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?
>>
>>Paul
>>
>>------ Original Message ------
>>From: "Tim Bray" <tbray@textuality.com>
>>To: "Paul E. Jones" <paulej@packetizer.com>
>>Cc: "Bjoern Hoehrmann" <derhoermi@gmx.net>; "RFC Errata System"
>><rfc-editor@rfc-editor.org>; "Pete Resnick" 
>><presnick@qti.qualcomm.com>;
>>  "Paul Hoffman" <paul.hoffman@vpnc.org>; "json@ietf.org" 
>><json@ietf.org>;
>>"Matthew Miller" <mamille2@cisco.com>; "Barry Leiba"
>><barryleiba@computer.org>;
>>rfc7158@schmorp.de
>>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
>><paulej@packetizer.com> wrote:
>>
>>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 misinterpretation.
>>
>>Why was it decided to change this:
>>
>>     JSON-text = object / array
>>
>>to
>>
>>     JSON-text = ws value ws
>>
>>Was there some misunderstanding of what 4627 said?
>>
>>Paul
>>
>>------ Original Message ------
>>From: "Bjoern Hoehrmann" <derhoermi@gmx.net>
>>To: "RFC Errata System" <rfc-editor@rfc-editor.org>
>>Cc: presnick@qti.qualcomm.com;
>>paul.hoffman@vpnc.org <mailto:paul.hoffman@vpnc.org>; json@ietf.org;
>>tbray@textuality.com <mailto:tbray@textuality.com>; 
>>mamille2@cisco.com;
>>barryleiba@computer.org;
>>rfc7158@schmorp.de <mailto:rfc7158@schmorp.de>; 
>>rfc-editor@rfc-editor.org
>>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 up-
>>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 · mailto:bjoern@hoehrmann.de ·
>>http://bjoern.hoehrmann.de <http://bjoern.hoehrmann.de/>
>>Am Badedeich 7 · Telefon:
>>+49(0)160/4415681 <tel:%2B49%280%29160%2F4415681> ·
>>http://www.bjoernsworld.de <http://www.bjoernsworld.de/>
>>25899 Dagebüll · PGP Pub. KeyID: 0xA4357E78 ·
>>http://www.websitedev.de/ <http://www.websitedev.de/>
>>
>>
>>
>>_______________________________________________
>>json mailing list
>>json@ietf.org
>>https://www.ietf.org/mailman/listinfo/json
>>
>>
>>
>>
>>
>>
>>
>>
>>
>>
>>
>>
>>
>
>
>--
>Joe Hildebrand
>
>
>