Re: [Json] Using a non-whitespace separator (Re: Working Group Last Call on draft-ietf-json-text-sequence)

Phillip Hallam-Baker <ietf@hallambaker.com> Wed, 04 June 2014 11:41 UTC

Return-Path: <hallam@gmail.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 E4D731A01B3 for <json@ietfa.amsl.com>; Wed, 4 Jun 2014 04:41:17 -0700 (PDT)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: -0.678
X-Spam-Level:
X-Spam-Status: No, score=-0.678 tagged_above=-999 required=5 tests=[BAYES_00=-1.9, DKIM_SIGNED=0.1, DKIM_VALID=-0.1, FM_FORGED_GMAIL=0.622, FREEMAIL_FROM=0.001, J_CHICKENPOX_14=0.6, SPF_PASS=-0.001] 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 wmW5piXPygyN for <json@ietfa.amsl.com>; Wed, 4 Jun 2014 04:41:16 -0700 (PDT)
Received: from mail-we0-x22b.google.com (mail-we0-x22b.google.com [IPv6:2a00:1450:400c:c03::22b]) (using TLSv1 with cipher ECDHE-RSA-RC4-SHA (128/128 bits)) (No client certificate requested) by ietfa.amsl.com (Postfix) with ESMTPS id 6827A1A01CF for <json@ietf.org>; Wed, 4 Jun 2014 04:41:16 -0700 (PDT)
Received: by mail-we0-f171.google.com with SMTP id w62so8430028wes.30 for <json@ietf.org>; Wed, 04 Jun 2014 04:41:09 -0700 (PDT)
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20120113; h=mime-version:sender:in-reply-to:references:date:message-id:subject :from:to:cc:content-type; bh=l9vtsukqxbaWyMluX+SYP7Kjj42G7PBgghZOp6/pVTo=; b=biTkuh/yhTeedKwTsZWFGKKGDcZkjMj6r5p8TtaNluHLgMHTfEU4SBAIER1Q5DyLA0 qqrOKQcFoQOy5wiGLEClqbOw5hZnXX1+P/4hXBPdGkIfj3tDIRNopWXZsPU5gG+fRfWh hB0r3rOYCqniJzGsciQJyYT+AlvOUFfraeQU47qk8gRDA6R5H49B8W8fZB7FvVX1LBVp 1C2RdHv2lJkv8jQEj5oz5kgqlcHgL2m3b8m592ADsnt/zEBxjBxNcQTW27xnyvAPmssw a8l+KlcWrZX4mjxgxuBFKRdqZhg5XMR/L/e8Omfp49XLawngtFGJV3dJfw0uU5rMTRpC YzMg==
MIME-Version: 1.0
X-Received: by 10.194.175.106 with SMTP id bz10mr3804896wjc.96.1401882068809; Wed, 04 Jun 2014 04:41:08 -0700 (PDT)
Sender: hallam@gmail.com
Received: by 10.194.79.136 with HTTP; Wed, 4 Jun 2014 04:41:08 -0700 (PDT)
In-Reply-To: <CFB42410.4EDDC%jhildebr@cisco.com>
References: <CAK3OfOidgk13ShPzpF-cxBHeg34s99CHs=bpY1rW-yBwnpPC-g@mail.gmail.com> <CAHBU6itr=ogxP4uoj57goEUSOCpsRx1AXVnW1NQwSTPxbbttkw@mail.gmail.com> <CAK3OfOhft+XJeMrg5rdY9E6fxAkJ2qsT3UHwu7zt=NEz2Q3XOQ@mail.gmail.com> <CAK3OfOhy-N0zjCVxtOMB8SqZEKceVvBz9Y6i0fo2W8i+gHKm4Q@mail.gmail.com> <CAK3OfOiQnLq29cv+kas3B8it-+82VmXvL3Rq1C5_767FDhBjRg@mail.gmail.com> <03CFAB3E-F4C6-4AE8-A501-8525376C4AA7@vpnc.org> <CAK3OfOja-17V391tTK91R98X8XQzd0iPnur2=oo4ii+MCOt+Rg@mail.gmail.com> <CFB42410.4EDDC%jhildebr@cisco.com>
Date: Wed, 04 Jun 2014 07:41:08 -0400
X-Google-Sender-Auth: xSeDgCgF7FFa79nQi3Wlijzyess
Message-ID: <CAMm+Lwime-=UQPu3t2ty05CZLb7xUMi9KGi31Xi2B7RNF5S3Og@mail.gmail.com>
From: Phillip Hallam-Baker <ietf@hallambaker.com>
To: "Joe Hildebrand (jhildebr)" <jhildebr@cisco.com>
Content-Type: text/plain; charset="UTF-8"
Archived-At: http://mailarchive.ietf.org/arch/msg/json/369Jqxul_PzM8jjpMSZis_mw8KE
Cc: Nico Williams <nico@cryptonector.com>, Paul Hoffman <paul.hoffman@vpnc.org>, IETF JSON WG <json@ietf.org>
Subject: Re: [Json] Using a non-whitespace separator (Re: Working Group Last Call on draft-ietf-json-text-sequence)
X-BeenThere: json@ietf.org
X-Mailman-Version: 2.1.15
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: <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: Wed, 04 Jun 2014 11:41:18 -0000

+1 on the separator MUST be an ascii character, not a UNICODE sequence.

Most of my projects don't actually use or need Unicode because they
are low level and don't deal with anything the user needs to see. I
use ASCII tags to make it easier to support non-Unicode languages like
C. Having to move to multibyte Unicode sequences for this one purpose
would be a pain.

If not RS then zero.


On Wed, Jun 4, 2014 at 3:30 AM, Joe Hildebrand (jhildebr)
<jhildebr@cisco.com> wrote:
> On 6/1/14, 6:03 PM, "Nico Williams" <nico@cryptonector.com> wrote:
>
>>5) #4 with ASCII RS as the separator
>
> This is the best one on the list.  It's what RS is for.  If you also want
> to allow optional inter-item ignorable whitespace (e.g. \n) for better
> printability, you get everything you want.  RS is only used for parser
> state synchronization.  RS is forbidden in a JSON text by 7159, so it's
> unambiguously a recoverable parse error if it is detected in the middle of
> an item.  Grep works fine with this format, particularly when combined
> with newlines.  Several editors I tried worked fine with it; one even
> rendered the RS as a nice RS-surrounded-by-box glyph.  It's certainly
> going to be more interoperable with tooling than U+FFFE, for example.
>
> I also agree with Tim that there should be precisely one way of doing item
> separation.  Having to do multiple ways is going to make the parsers
> slower and more complicated than they have to be, for no technical benefit.
>
> --
> Joe Hildebrand
>
>
>
>
> _______________________________________________
> json mailing list
> json@ietf.org
> https://www.ietf.org/mailman/listinfo/json