Concerns from the W3C Technical Architecture Group regarding JSON

Previous Topic Next Topic
 
classic Classic list List threaded Threaded
3 messages Options
Reply | Threaded
Open this post in threaded view
|

Concerns from the W3C Technical Architecture Group regarding JSON

Philippe Le Hegaret
Dear All,

The W3C Technical Architecture Group has a concern regarding the ongoing
coordination of the industry standardization work on JSON.  JSON is a
key integration technology for Web applications and a key data
interchange format for the Web.  The current state of affairs, where
there are now two different JSON specifications which may be normatively
referenced, one developed in ECMA as ECMA-404 and one developed in IETF
as RFC 4627 and in last call as RFC 4627bis is not ideal and could lead
to confusion in the industry.  Because the two specs vary slightly, we
believe this could lead to interoperability issues.

For example, today there are JSON parsers (conforming to ECMA-404) that
can parse "42" (a JSON document consisting of a single integer). There
are also parsers (conforming to RFC 4627/draft-ietf-json-rfc4627bis-07)
that cannot parse "42" today, but they can be meaningfully upgraded to
do so too. This would not break applications using those parsers, unless
they depend on parsing "42" as an error, which is a far more unlikely
scenario than parsing it as 42 given precedence.

Regardless of the historical reasons for the current situation, the W3C
TAG believes that having one definition of JSON would be beneficial for
the Web and for the wider community of JSON implementors and JSON
consuming and producing applications.  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.

Thank you,

Philippe Le Hegaret,
IETF co-team contact for the W3C



Reply | Threaded
Open this post in threaded view
|

Re: Concerns from the W3C Technical Architecture Group regarding JSON

Mark Nottingham-2
Thanks, Philippe. I’ve forwarded to the IESG and my IAB contact for their information.

Cheers,


On 27 Nov 2013, at 9:31 am, Philippe Le Hegaret <[hidden email]> wrote:

> Dear All,
>
> The W3C Technical Architecture Group has a concern regarding the ongoing
> coordination of the industry standardization work on JSON.  JSON is a
> key integration technology for Web applications and a key data
> interchange format for the Web.  The current state of affairs, where
> there are now two different JSON specifications which may be normatively
> referenced, one developed in ECMA as ECMA-404 and one developed in IETF
> as RFC 4627 and in last call as RFC 4627bis is not ideal and could lead
> to confusion in the industry.  Because the two specs vary slightly, we
> believe this could lead to interoperability issues.
>
> For example, today there are JSON parsers (conforming to ECMA-404) that
> can parse "42" (a JSON document consisting of a single integer). There
> are also parsers (conforming to RFC 4627/draft-ietf-json-rfc4627bis-07)
> that cannot parse "42" today, but they can be meaningfully upgraded to
> do so too. This would not break applications using those parsers, unless
> they depend on parsing "42" as an error, which is a far more unlikely
> scenario than parsing it as 42 given precedence.
>
> Regardless of the historical reasons for the current situation, the W3C
> TAG believes that having one definition of JSON would be beneficial for
> the Web and for the wider community of JSON implementors and JSON
> consuming and producing applications.  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.
>
> Thank you,
>
> Philippe Le Hegaret,
> IETF co-team contact for the W3C
>
>

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




Reply | Threaded
Open this post in threaded view
|

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

Paul Hoffman-2
In reply to this post by Philippe Le Hegaret
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