Re: [apps-discuss] JSON Schema considered harmful

Andrew Newton <andy@hxr.us> Fri, 21 September 2012 13:00 UTC

Return-Path: <andy@hxr.us>
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 90D8621F870B for <apps-discuss@ietfa.amsl.com>; Fri, 21 Sep 2012 06:00:53 -0700 (PDT)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: -2.977
X-Spam-Level:
X-Spam-Status: No, score=-2.977 tagged_above=-999 required=5 tests=[BAYES_00=-2.599, FM_FORGED_GMAIL=0.622, 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 2ox9eA7AFLiP for <apps-discuss@ietfa.amsl.com>; Fri, 21 Sep 2012 06:00:53 -0700 (PDT)
Received: from mail-lb0-f172.google.com (mail-lb0-f172.google.com [209.85.217.172]) by ietfa.amsl.com (Postfix) with ESMTP id BFECA21F8705 for <apps-discuss@ietf.org>; Fri, 21 Sep 2012 06:00:52 -0700 (PDT)
Received: by lboj14 with SMTP id j14so3664364lbo.31 for <apps-discuss@ietf.org>; Fri, 21 Sep 2012 06:00:51 -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 :content-transfer-encoding:x-gm-message-state; bh=G2QBhmYpOr+HiTIFJPifKXaaIMyYmZ8VCAwIwamqmdc=; b=lX+DBSvCoepHgNG7jeE/iq0amnquYzs3ecdWqFfJTAkRBiDgDben2KuAWBFerllNfI mbY2GFx+ryKo7mUKKBxJlTXzINqUZnIgYdgGqcgBJ7xTQ+zUXMtFySl1VTleokg3+oig eG2V0jeCo+PkvamkXWIYUkfPm3QB9d/7EfXiZKPPsepIBL0NsGjxMay4DAXN6Jvg6sj9 K/1WdKpypz2Iuj58jc8ofoYWmQ1Cggl49ZHYemNe8r9K+SKOX1yXcPyaKKWj2bIpvd+L T5FzWFlUjbpHeJnB4q0MyWjdmQt8/Ampun5T6n8Ncqa9cZJDs65I2pTcUhZtYP5/kzd2 ICYQ==
MIME-Version: 1.0
Received: by 10.152.114.5 with SMTP id jc5mr4286028lab.36.1348232451688; Fri, 21 Sep 2012 06:00:51 -0700 (PDT)
Received: by 10.112.7.67 with HTTP; Fri, 21 Sep 2012 06:00:51 -0700 (PDT)
X-Originating-IP: [192.149.252.11]
In-Reply-To: <E02939D8-FFC2-4866-AD00-A6CE05F5648B@gmx.net>
References: <CAMm+LwjYj0gd3Cxjj8WFcLy-zgBwfVDCPaRGcNSgOHD9m_07yw@mail.gmail.com> <999913AB42CC9341B05A99BBF358718D01DF0684@FIESEXC035.nsn-intra.net> <CAK3OfOgU-Kepre2Z2dg_S8DAVCU413SRvuWMvJcC3BmE0BjNbQ@mail.gmail.com> <505B43B3.7050503@berkeley.edu> <E02939D8-FFC2-4866-AD00-A6CE05F5648B@gmx.net>
Date: Fri, 21 Sep 2012 09:00:51 -0400
Message-ID: <CAAQiQRe1bArC970Y+n3ikxk+6ixRYhRR2GYxJ_9_Fw4UKUQ_nw@mail.gmail.com>
From: Andrew Newton <andy@hxr.us>
To: Hannes Tschofenig <hannes.tschofenig@gmx.net>
Content-Type: text/plain; charset="ISO-8859-1"
Content-Transfer-Encoding: quoted-printable
X-Gm-Message-State: ALoCoQkV2YRTGQhlDA39nVtGX5p/lGdfbdP0RiiAoyfsjwVqsBM8qcWXGjBrWWqbo/T/ILm5wCJJ
Cc: 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 13:00:53 -0000

On Fri, Sep 21, 2012 at 5:18 AM, Hannes Tschofenig
<hannes.tschofenig@gmx.net> wrote:
>
> I don't think that arguing are against the usage of formal or semi-formal ways to describe protocols. Pseudo code may be a useful way to describe an algorithm, for example. The issue is just that they have to be applied selectively and carefully. There has to be a real benefit.
>
> In the context of this discussion I had been arguing that XML schemas (and Relax NG schemas) had not been useful for the target audience compared to the benefits they claimed to provide. For that reason I argued that we should discourage people from using them since they cause problems for extensibility, specification quality, and readability.

As far as extensibility goes, I think that's an issue more with
Namespaces in XML than with the schema languages. However, there could
be improvement. From a spec quality and readability point of view, I
think this is more true of XML Schema than RelaxNG.

Regarding utility for a target audience, from what I have experienced
the problem is that tools vendors convince programmers that as long as
they drop their XSDs or WSDL in spot X, magic will happen and they
don't have to worry about all that nasty protocol crap (including
talking to the network engineers about firewalls)... that is until
they drop an XML document in a string and the whole thing blows up.
But the issue isn't with XML Schema itself, it is with the
magic-happens-here and computers-will-learn grand architecture in
which XML Schema was drafted.

>
> I like the tool idea that PhB and Tim had brought up. I also think that examples are the most valuable tool for implementers.

+1 on the examples.

Perhaps Phillip could get some time in Atlanta in Apps or maybe get a
room for a BoF to demonstrate his idea. Though tools, including
diagramming languages and schema languages, for writing better
specifications seems like a topic for more than just Apps.

-andy