Re: [apps-discuss] JSON Schema considered harmful
Tim Bray <tbray@textuality.com> Thu, 20 September 2012 20:20 UTC
Return-Path: <tbray@textuality.com>
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 B82E221F84B6 for <apps-discuss@ietfa.amsl.com>; Thu, 20 Sep 2012 13:20:29 -0700 (PDT)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: -4.726
X-Spam-Level:
X-Spam-Status: No, score=-4.726 tagged_above=-999 required=5 tests=[AWL=-1.750, BAYES_00=-2.599, FM_FORGED_GMAIL=0.622, HTML_MESSAGE=0.001, RCVD_IN_DNSWL_LOW=-1]
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 SkrKhJOoW8Ak for <apps-discuss@ietfa.amsl.com>; Thu, 20 Sep 2012 13:20:28 -0700 (PDT)
Received: from mail-wi0-f170.google.com (mail-wi0-f170.google.com [209.85.212.170]) by ietfa.amsl.com (Postfix) with ESMTP id 7882E21F85EA for <apps-discuss@ietf.org>; Thu, 20 Sep 2012 13:20:28 -0700 (PDT)
Received: by wibcb5 with SMTP id cb5so772219wib.1 for <apps-discuss@ietf.org>; Thu, 20 Sep 2012 13:20:27 -0700 (PDT)
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=20120113; h=mime-version:x-originating-ip:in-reply-to:references:date :message-id:subject:from:to:cc:content-type:x-gm-message-state; bh=DYdLPV9NwJHin8SpjyVrPvCEfE2MIqUC5U2e1YpqK3M=; b=Ny6aK6Q8hPNyy0laK+FdjWyWr4WZvIvSmS6gUIAw03AsJpvoKMFGXU5YsR2BZgQBJq Rn0Q0XlAExCZfX4SkGKnYRM9g2hfbz+zu0J01+D8cuNx+xf136+XdM0YxWWHumJuUpbi j8PcycJAKt6r9IdlsmutZAGPUO2roAAgi8MyoUxU8Ba7IkJDnvePvSDwkmgmSR8PfqEj YFsqqTbDRVg4Y+/KkffGb3A8mJ9J85aWeE4vgkeuV82I5/N2dSmsYF7wW1o18jV6Rvjh iiWiSyCP7sH8gIGdQydRIXEpoT/vxR7fRwB9W+arNTun2vfUpBBYn/uMek7ZOccT2DL1 b4aA==
MIME-Version: 1.0
Received: by 10.216.23.202 with SMTP id v52mr1674520wev.32.1348172427397; Thu, 20 Sep 2012 13:20:27 -0700 (PDT)
Received: by 10.195.13.200 with HTTP; Thu, 20 Sep 2012 13:20:27 -0700 (PDT)
X-Originating-IP: [24.84.208.217]
In-Reply-To: <505B78B4.80309@dcrocker.net>
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>
Date: Thu, 20 Sep 2012 13:20:27 -0700
Message-ID: <CAHBU6istjQ+vxtgBXE4aQ011tcOgudkxK9tq8e6enG8u+k_M-g@mail.gmail.com>
From: Tim Bray <tbray@textuality.com>
To: dcrocker@bbiw.net
Content-Type: multipart/alternative; boundary="0016367f9838a18a6804ca27daf9"
X-Gm-Message-State: ALoCoQnBh/bHO/QZIjtns000CzA7qeNcEv+tM9E2wVtap6FcneFBqYGxCHrGQTcCkRvdDum3WcNp
Cc: Mark Nottingham <mnot@mnot.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: Thu, 20 Sep 2012 20:20:29 -0000
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 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] JSON Schema considered harmful Phillip Hallam-Baker
- Re: [apps-discuss] JSON Schema considered harmful Francis Galiegue
- Re: [apps-discuss] JSON Schema considered harmful Phillip Hallam-Baker
- Re: [apps-discuss] JSON Schema considered harmful Francis Galiegue
- Re: [apps-discuss] JSON Schema considered harmful Phillip Hallam-Baker
- Re: [apps-discuss] JSON Schema considered harmful Francis Galiegue
- Re: [apps-discuss] JSON Schema considered harmful Phillip Hallam-Baker
- Re: [apps-discuss] JSON Schema considered harmful Francis Galiegue
- Re: [apps-discuss] JSON Schema considered harmful Phillip Hallam-Baker
- Re: [apps-discuss] JSON Schema considered harmful Francis Galiegue
- Re: [apps-discuss] JSON Schema considered harmful Nico Williams
- Re: [apps-discuss] JSON Schema considered harmful Francis Galiegue
- Re: [apps-discuss] JSON Schema considered harmful Nico Williams
- Re: [apps-discuss] JSON Schema considered harmful James M Snell
- Re: [apps-discuss] JSON Schema considered harmful Phillip Hallam-Baker
- Re: [apps-discuss] JSON Schema considered harmful Phillip Hallam-Baker
- Re: [apps-discuss] JSON Schema considered harmful Phillip Hallam-Baker
- Re: [apps-discuss] JSON Schema considered harmful Tschofenig, Hannes (NSN - FI/Espoo)
- Re: [apps-discuss] JSON Schema considered harmful Nico Williams
- Re: [apps-discuss] JSON Schema considered harmful Erik Wilde
- Re: [apps-discuss] JSON Schema considered harmful Nico Williams
- Re: [apps-discuss] JSON Schema considered harmful Phillip Hallam-Baker
- Re: [apps-discuss] JSON Schema considered harmful Erik Wilde
- Re: [apps-discuss] JSON Schema considered harmful Tim Bray
- Re: [apps-discuss] JSON Schema considered harmful Bob Wyman
- Re: [apps-discuss] JSON Schema considered harmful James M Snell
- Re: [apps-discuss] JSON Schema considered harmful evan@status.net
- Re: [apps-discuss] JSON Schema considered harmful Phillip Hallam-Baker
- Re: [apps-discuss] JSON Schema considered harmful Phillip Hallam-Baker
- Re: [apps-discuss] JSON Schema considered harmful Phillip Hallam-Baker
- Re: [apps-discuss] JSON Schema considered harmful Julian Reschke
- Re: [apps-discuss] JSON Schema considered harmful Phillip Hallam-Baker
- Re: [apps-discuss] JSON Schema considered harmful Julian Reschke
- Re: [apps-discuss] JSON Schema considered harmful Mark Nottingham
- Re: [apps-discuss] JSON Schema considered harmful Dave Crocker
- Re: [apps-discuss] JSON Schema considered harmful Tim Bray
- Re: [apps-discuss] JSON Schema considered harmful Dave Crocker
- Re: [apps-discuss] JSON Schema considered harmful Phillip Hallam-Baker
- Re: [apps-discuss] JSON Schema considered harmful SM
- Re: [apps-discuss] JSON Schema considered harmful Francis Galiegue
- Re: [apps-discuss] JSON Schema considered harmful Martin J. Dürst
- Re: [apps-discuss] JSON Schema considered harmful Hannes Tschofenig
- Re: [apps-discuss] JSON Schema considered harmful Andrew Newton
- Re: [apps-discuss] JSON Schema considered harmful Dave Crocker