Subject: Re: [Json] Concerns from the W3C Technical Architecture Group regarding JSON

From: Paul Hoffman <[email-masked]>
Date: Tue, 10 Dec 2013 14:58:16 -0800

Thank you for your statement of concern about draft-ietf-json-rfc4627bis. We hope that this response from the chairs of the IETF's JSON Working Group allays those concerns.

The TAG expresses concerns about differences between ECMA-404 and draft-ietf-json-rfc4627bis. It says "the two specs vary slightly", which is no longer true of the syntax in the latest draft of draft-ietf-json-rfc4627bis. The TAG gives an example of its concern as being about what is allowed in a JSON text. That concern has already been met in the latest draft of draft-ietf-json-rfc4627bis: the two specifications now have no more syntax differences. During the IETF Last Call, it became clear that the consensus was that it was acceptable for the definition in draft-ietf-json-rfc4627bis be changed to match that of ECMA-404, namely that a JSON text can consist of any single JSON token (including the four-character string "42" and the two-digit number 42).

On the topic of JSON semantics, Ecma TC39 has said repeatedly that ECMA-404 is meant to only document the JSON syntax, with no description of the semantics of encoding or parsing. On the other hand, draft-ietf-json-rfc4627bis and RFC 4627 before it express both syntax and semantics. For a format such as JSON, interoperability in encoders and parsers can only be achieved with descriptions of both syntax and semantics.

The statement "we believe this could lead to interoperability issues" is of course true: ECMA chose to make JSON as described in the ECMAScript standard have different semantics than were expressed in RFC 4627. The JSON WG did not, and does not, object to ECMA choosing to have a non-interoperable semantics for JSON in its specifications: different SDOs are welcome to do so. A great deal of effort in the JSON WG process around draft-ietf-json-rfc4627bis has been to carefully describe differences between the new spec and ECMAScript.

Lastly, the TAG says "We suggest that the IETF JSON working group should re-enter discussions with ECMA TC39 in order to facilitate aligning RFC 4627bis with the current ECMA-404 specification." The syntax in the current IETF draft and the current version of ECMA-404 are believed to agree completely.

We also note that "discussions with ECMA TC39" never actually happened: the chairs of the IETF JSON WG attempted repeatedly to engage members of TC39, but were met almost completely with silence. Further, TC39 never engaged the IETF JSON Working Group for any input on ECMA-404. We understand that outside the JSON WG, the IETF (through the IAB) and Ecma had some early discussions on making a formal liaison relationship; if those discussions become fruitful in the future, the sort of non-discussion that happened in this work can be avoided.

--Paul Hoffman and Matt Miller