Re: [apps-discuss] JSON Schema considered harmful

"Martin J. Dürst" <duerst@it.aoyama.ac.jp> Fri, 21 September 2012 08:45 UTC

Return-Path: <duerst@it.aoyama.ac.jp>
X-Original-To: apps-discuss@ietfa.amsl.com
Delivered-To: apps-discuss@ietfa.amsl.com
Received: from localhost (localhost [127.0.0.1]) by ietfa.amsl.com (Postfix) with ESMTP id 4263C21F8679 for <apps-discuss@ietfa.amsl.com>; Fri, 21 Sep 2012 01:45:08 -0700 (PDT)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: -101.963
X-Spam-Level:
X-Spam-Status: No, score=-101.963 tagged_above=-999 required=5 tests=[AWL=-2.173, BAYES_00=-2.599, HELO_EQ_JP=1.244, HOST_EQ_JP=1.265, MIME_8BIT_HEADER=0.3, USER_IN_WHITELIST=-100]
Received: from mail.ietf.org ([64.170.98.30]) by localhost (ietfa.amsl.com [127.0.0.1]) (amavisd-new, port 10024) with ESMTP id Rf75M+8sDgsH for <apps-discuss@ietfa.amsl.com>; Fri, 21 Sep 2012 01:45:07 -0700 (PDT)
Received: from scintmta01.scbb.aoyama.ac.jp (scintmta01.scbb.aoyama.ac.jp [133.2.253.33]) by ietfa.amsl.com (Postfix) with ESMTP id BD6A921F8661 for <apps-discuss@ietf.org>; Fri, 21 Sep 2012 01:45:05 -0700 (PDT)
Received: from scmse01.scbb.aoyama.ac.jp ([133.2.253.231]) by scintmta01.scbb.aoyama.ac.jp (secret/secret) with SMTP id q8L8itNt006005 for <apps-discuss@ietf.org>; Fri, 21 Sep 2012 17:44:55 +0900
Received: from (unknown [133.2.206.133]) by scmse01.scbb.aoyama.ac.jp with smtp id 5a32_ae29_9dcb5a0a_03c8_11e2_987a_001d096c566a; Fri, 21 Sep 2012 17:44:54 +0900
Received: from [IPv6:::1] ([133.2.210.1]:50783) by itmail.it.aoyama.ac.jp with [XMail 1.22 ESMTP Server] id <S15FF41B> for <apps-discuss@ietf.org> from <duerst@it.aoyama.ac.jp>; Fri, 21 Sep 2012 17:44:56 +0900
Message-ID: <505C2901.1030902@it.aoyama.ac.jp>
Date: Fri, 21 Sep 2012 17:44:49 +0900
From: "\"Martin J. Dürst\"" <duerst@it.aoyama.ac.jp>
Organization: Aoyama Gakuin University
User-Agent: Mozilla/5.0 (Windows; U; Windows NT 6.1; en-US; rv:1.9.1.9) Gecko/20100722 Eudora/3.0.4
MIME-Version: 1.0
To: Tim Bray <tbray@textuality.com>
References: <CAMm+LwjYj0gd3Cxjj8WFcLy-zgBwfVDCPaRGcNSgOHD9m_07yw@mail.gmail.com> <999913AB42CC9341B05A99BBF358718D01DF0684@FIESEXC035.nsn-intra.net> <CAK3OfOgU-Kepre2Z2dg_S8DAVCU413SRvuWMvJcC3BmE0BjNbQ@mail.gmail.com> <505B43B3.7050503@berkeley.edu> <CAHBU6iupyZEhENRVYJ2sMNk79RSZbOVAawr6vP42uzNyO0z+Nw@mail.gmail.com> <77AFECFB-F63A-457F-9C7F-F715315C0651@mnot.net> <505B78B4.80309@dcrocker.net> <CAHBU6istjQ+vxtgBXE4aQ011tcOgudkxK9tq8e6enG8u+k_M-g@mail.gmail.com>
In-Reply-To: <CAHBU6istjQ+vxtgBXE4aQ011tcOgudkxK9tq8e6enG8u+k_M-g@mail.gmail.com>
Content-Type: text/plain; charset="UTF-8"; format="flowed"
Content-Transfer-Encoding: 8bit
Cc: Mark Nottingham <mnot@mnot.net>, dcrocker@bbiw.net, apps-discuss@ietf.org
Subject: Re: [apps-discuss] JSON Schema considered harmful
X-BeenThere: apps-discuss@ietf.org
X-Mailman-Version: 2.1.12
Precedence: list
List-Id: General discussion of application-layer protocols <apps-discuss.ietf.org>
List-Unsubscribe: <https://www.ietf.org/mailman/options/apps-discuss>, <mailto:apps-discuss-request@ietf.org?subject=unsubscribe>
List-Archive: <http://www.ietf.org/mail-archive/web/apps-discuss>
List-Post: <mailto:apps-discuss@ietf.org>
List-Help: <mailto:apps-discuss-request@ietf.org?subject=help>
List-Subscribe: <https://www.ietf.org/mailman/listinfo/apps-discuss>, <mailto:apps-discuss-request@ietf.org?subject=subscribe>
X-List-Received-Date: Fri, 21 Sep 2012 08:45:08 -0000

On 2012/09/21 5:20, Tim Bray wrote:
> Frankly that notion had never crossed my mind, but is there a case for a
> “Tao of network protocols” or an “Informational BCP” or some such?  I could
> put some cycles into it.  -T

What about doing it in the style of http://tools.ietf.org/html/rfc3470, 
or maybe even as an update of tha document?

Regards,    Martin.


> On Thu, Sep 20, 2012 at 1:12 PM, Dave Crocker<dhc@dcrocker.net>  wrote:
>
>>
>>
>> On 9/20/2012 1:05 PM, Mark Nottingham wrote:
>>
>>>
>>> On 20/09/2012, at 9:53 AM, Tim Bray<tbray@textuality.com>  wrote:
>>>
>>>   I believe:
>>>> - ASN.1 has been bypassed by history and has truly horrible tooling.
>>>> Just don’t go there.
>>>> - If you’re interchanging documents, use XML; if (much more common)
>>>> you’re interchanging data structures, use JSON.
>>>> - Do not use multiple syntaxes for the same protocol. Pick one of XML or
>>>> JSON and stick with it.
>>>> - The most important thing in defining a protocol is good clean
>>>> comprehensible human-readable prose.
>>>> - All the protocols I’ve ever seen have important constraints that can’t
>>>> be expressed usefully in declarative schema languages.
>>>> - Therefore, the next most important thing is an automated
>>>> validator/test-suite.
>>>> - A schema is a nice-to-have.
>>>> - If you’re in XML and want schema-ware, use RelaxNG. For an example,
>>>> see RFC4287.
>>>> - If your protocol is JSON, investment in a validator/test-suite has
>>>> much higher ROI than chasing schema unicorns.
>>>>
>>>
>>> +1; somebody please give this a BCP#.
>>>
>>
>>
>> In its current form, perhaps not.
>>
>> On the other hand, something along this lines could provide exremely
>> useful pedagogy in doing specifications work.
>>
>> It would, of course, need rather more verbose discussion/justification of
>> its guidance.
>>
>> That is, something that says what the characteristics are of the better
>> formal notation choices are and what the characteristics of the less better
>> ones are.  Then describes the better choices and their enticing features,
>> perhaps in terms of tradeoffs.
>>
>> Then meta-points, such as "choose exactly one".  Etc.
>>
>> d/
>>
>> --
>>   Dave Crocker
>>   Brandenburg InternetWorking
>>   bbiw.net
>>
>
>
>
> _______________________________________________
> apps-discuss mailing list
> apps-discuss@ietf.org
> https://www.ietf.org/mailman/listinfo/apps-discuss