Re: [Json] I-D Action: draft-ietf-jsonbis-rfc7159bis-04.txt

Pete Cordell <petejson@codalogic.com> Mon, 24 July 2017 15:12 UTC

Return-Path: <petejson@codalogic.com>
X-Original-To: json@ietfa.amsl.com
Delivered-To: json@ietfa.amsl.com
Received: from localhost (localhost [127.0.0.1]) by ietfa.amsl.com (Postfix) with ESMTP id 9A134131E06 for <json@ietfa.amsl.com>; Mon, 24 Jul 2017 08:12:37 -0700 (PDT)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: -0.92
X-Spam-Level:
X-Spam-Status: No, score=-0.92 tagged_above=-999 required=5 tests=[BAYES_00=-1.9, RDNS_DYNAMIC=0.982, SPF_HELO_PASS=-0.001, SPF_PASS=-0.001] autolearn=no autolearn_force=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 kEq7YWbrHe35 for <json@ietfa.amsl.com>; Mon, 24 Jul 2017 08:12:35 -0700 (PDT)
Received: from ppsa-online.com (lvps217-199-162-192.vps.webfusion.co.uk [217.199.162.192]) (using TLSv1 with cipher DHE-RSA-AES256-SHA (256/256 bits)) (No client certificate requested) by ietfa.amsl.com (Postfix) with ESMTPS id 2AC9C131DAA for <json@ietf.org>; Mon, 24 Jul 2017 08:12:34 -0700 (PDT)
Received: (qmail 9428 invoked from network); 24 Jul 2017 16:04:15 +0100
Received: from host109-155-118-120.range109-155.btcentralplus.com (HELO ?192.168.1.72?) (109.155.118.120) by lvps217-199-162-217.vps.webfusion.co.uk with ESMTPSA (DHE-RSA-AES128-SHA encrypted, authenticated); 24 Jul 2017 16:04:15 +0100
To: Anders Rundgren <anders.rundgren.net@gmail.com>
Cc: Julian Reschke <julian.reschke@gmx.de>, json@ietf.org
References: <150047191184.7507.7143481683564082881@ietfa.amsl.com> <DB9BA7EA-D393-4079-B347-620A09280B26@isode.com> <CAC4RtVBYMrRCrUZ1qqD+_rH4M8N23GOgbbh=921fEYqH+gCm5Q@mail.gmail.com> <c06e583a-965e-9eaf-975f-e6876ac056ed@filament.com> <f1a6b553-c787-e248-67bd-74d68d98a845@gmx.de> <262E8314-263A-4443-B912-AFCF1A3277B2@tzi.org> <166957c4-26fc-90b5-a798-59280c91b466@filament.com> <8B60039F-96DD-4F72-8139-D80B6F11566C@tzi.org> <3760a157-5b88-e334-712c-03eecd675794@codalogic.com> <7a88952c-3e46-3f87-b3c2-2864f216c62d@gmail.com>
From: Pete Cordell <petejson@codalogic.com>
Message-ID: <9cddf2e7-f987-3942-3580-05c3da6a4805@codalogic.com>
Date: Mon, 24 Jul 2017 16:12:29 +0100
User-Agent: Mozilla/5.0 (Windows NT 10.0; WOW64; rv:52.0) Gecko/20100101 Thunderbird/52.2.1
MIME-Version: 1.0
In-Reply-To: <7a88952c-3e46-3f87-b3c2-2864f216c62d@gmail.com>
Content-Type: text/plain; charset="utf-8"; format="flowed"
Content-Language: en-GB
Content-Transfer-Encoding: 7bit
Archived-At: <https://mailarchive.ietf.org/arch/msg/json/9wapnRUfqIvgzOt_mYL1ee8NfGE>
Subject: Re: [Json] I-D Action: draft-ietf-jsonbis-rfc7159bis-04.txt
X-BeenThere: json@ietf.org
X-Mailman-Version: 2.1.22
Precedence: list
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: <https://mailarchive.ietf.org/arch/browse/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: Mon, 24 Jul 2017 15:12:38 -0000

On 22/07/2017 08:51, Anders Rundgren wrote:
> I don't have any text to offer but I believe that UFT-8 encoding is the
> only recommendable way for transferring JSON data from one system to
> another which includes lots of other use case than HTTP.  For example:
> Writing JSON to databases, usage in WebSocket messages, or simply putting
> JSON in file.
> 
> Yes, it seems to me that "Serialized format"/"External representation" is
> really the common denominator rather than networks and/or protocols.

And:

On 22/07/2017 10:18, Anders Rundgren wrote:
 > I would consider "external form" as an alternative to limiting the
 > specification
 > to special cases like networks and or protocols.

And:

On 22/07/2017 08:53, Julian Reschke wrote:
 > Whatever we say, it should make clear that it includes all derived
 > media types (*/*+json) as well.

Thanks Anders and Julian.

Makes me wonder whether the best approach is to start with what is 
currently the second paragraph of 8.1 as a 'softener', and then hit the 
reader with UTF-8 being the only real way to go for interoperability of 
open systems.  So maybe 8.1 becomes something like:

8.1.  Character Encoding

    Previous specifications of JSON have not required the use of UTF-8
    when transmitting JSON text.  However, the vast majority of JSON-
    based software implementations have chosen to use the UTF-8 encoding,
    to the extent that it is the only encoding that achieves
    interoperability.

    Therefore, JSON text exchanged between systems that don't form a
    closed ecosystem MUST be encoded using UTF-8.

    Implementations MUST NOT add a byte order mark (U+FEFF) to the
    beginning of a networked-transmitted JSON text.  In the interests of
    interoperability, implementations that parse JSON texts MAY ignore
    the presence of a byte order mark rather than treating it as an
    error.

Cheers,

Pete.