Re: If not JSON, what then ?

Carsten Bormann <cabo@tzi.org> Tue, 02 August 2016 21:29 UTC

Return-Path: <ietf-http-wg-request+bounce-httpbisa-archive-bis2juki=lists.ie@listhub.w3.org>
X-Original-To: ietfarch-httpbisa-archive-bis2Juki@ietfa.amsl.com
Delivered-To: ietfarch-httpbisa-archive-bis2Juki@ietfa.amsl.com
Received: from localhost (localhost [127.0.0.1]) by ietfa.amsl.com (Postfix) with ESMTP id EA6BD12D674 for <ietfarch-httpbisa-archive-bis2Juki@ietfa.amsl.com>; Tue, 2 Aug 2016 14:29:36 -0700 (PDT)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: -8.208
X-Spam-Level:
X-Spam-Status: No, score=-8.208 tagged_above=-999 required=5 tests=[BAYES_00=-1.9, HEADER_FROM_DIFFERENT_DOMAINS=0.001, RCVD_IN_DNSWL_HI=-5, RCVD_IN_MSPIKE_H3=-0.01, RCVD_IN_MSPIKE_WL=-0.01, RP_MATCHES_RCVD=-1.287, SPF_HELO_PASS=-0.001, SPF_PASS=-0.001] autolearn=ham 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 WVyA3q9h1AyY for <ietfarch-httpbisa-archive-bis2Juki@ietfa.amsl.com>; Tue, 2 Aug 2016 14:29:35 -0700 (PDT)
Received: from frink.w3.org (frink.w3.org [128.30.52.56]) (using TLSv1.2 with cipher DHE-RSA-AES128-SHA (128/128 bits)) (No client certificate requested) by ietfa.amsl.com (Postfix) with ESMTPS id 9E76B12B009 for <httpbisa-archive-bis2Juki@lists.ietf.org>; Tue, 2 Aug 2016 14:29:35 -0700 (PDT)
Received: from lists by frink.w3.org with local (Exim 4.80) (envelope-from <ietf-http-wg-request@listhub.w3.org>) id 1bUhBd-0004eK-I4 for ietf-http-wg-dist@listhub.w3.org; Tue, 02 Aug 2016 21:25:17 +0000
Resent-Date: Tue, 02 Aug 2016 21:25:17 +0000
Resent-Message-Id: <E1bUhBd-0004eK-I4@frink.w3.org>
Received: from maggie.w3.org ([128.30.52.39]) by frink.w3.org with esmtps (TLS1.2:DHE_RSA_AES_128_CBC_SHA1:128) (Exim 4.80) (envelope-from <cabo@tzi.org>) id 1bUhBY-0004dd-RO for ietf-http-wg@listhub.w3.org; Tue, 02 Aug 2016 21:25:12 +0000
Received: from relay3-d.mail.gandi.net ([217.70.183.195]) by maggie.w3.org with esmtps (TLS1.2:DHE_RSA_AES_256_CBC_SHA256:256) (Exim 4.80) (envelope-from <cabo@tzi.org>) id 1bUhBV-000258-Gn for ietf-http-wg@w3.org; Tue, 02 Aug 2016 21:25:11 +0000
Received: from mfilter47-d.gandi.net (mfilter47-d.gandi.net [217.70.178.178]) by relay3-d.mail.gandi.net (Postfix) with ESMTP id 472F5A80C0; Tue, 2 Aug 2016 23:24:47 +0200 (CEST)
X-Virus-Scanned: Debian amavisd-new at mfilter47-d.gandi.net
Received: from relay3-d.mail.gandi.net ([IPv6:::ffff:217.70.183.195]) by mfilter47-d.gandi.net (mfilter47-d.gandi.net [::ffff:10.0.15.180]) (amavisd-new, port 10024) with ESMTP id 9dluXZ5aAPaH; Tue, 2 Aug 2016 23:24:45 +0200 (CEST)
X-Originating-IP: 93.199.227.76
Received: from nar-3.local (p5DC7E34C.dip0.t-ipconnect.de [93.199.227.76]) (Authenticated sender: cabo@cabo.im) by relay3-d.mail.gandi.net (Postfix) with ESMTPSA id 0983FA80C4; Tue, 2 Aug 2016 23:24:44 +0200 (CEST)
Message-ID: <57A10F9B.2060508@tzi.org>
Date: Tue, 02 Aug 2016 23:24:43 +0200
From: Carsten Bormann <cabo@tzi.org>
User-Agent: Postbox 4.0.8 (Macintosh/20151105)
MIME-Version: 1.0
To: Mark Nottingham <mnot@mnot.net>
CC: Poul-Henning Kamp <phk@phk.freebsd.dk>, HTTP Working Group <ietf-http-wg@w3.org>
References: <77778.1470037414@critter.freebsd.dk> <57A0A585.4060402@tzi.org> <64972.1470161286@critter.freebsd.dk> <57A0F8A3.3000904@tzi.org> <D7E6606E-AC13-4767-AD73-28C2E91EC67D@mnot.net>
In-Reply-To: <D7E6606E-AC13-4767-AD73-28C2E91EC67D@mnot.net>
X-Enigmail-Version: 1.2.3
Content-Type: text/plain; charset="UTF-8"
Content-Transfer-Encoding: 8bit
X-W3C-Hub-Spam-Status: No, score=-8.0
X-W3C-Hub-Spam-Report: AWL=0.566, BAYES_00=-1.9, RCVD_IN_DNSWL_LOW=-0.7, W3C_AA=-1, W3C_IRA=-1, W3C_IRR=-3, W3C_WL=-1
X-W3C-Scan-Sig: maggie.w3.org 1bUhBV-000258-Gn 8b3fbac87f7b4c04f6e29e0ac8805ef9
X-Original-To: ietf-http-wg@w3.org
Subject: Re: If not JSON, what then ?
Archived-At: <http://www.w3.org/mid/57A10F9B.2060508@tzi.org>
Resent-From: ietf-http-wg@w3.org
X-Mailing-List: <ietf-http-wg@w3.org> archive/latest/32155
X-Loop: ietf-http-wg@w3.org
Resent-Sender: ietf-http-wg-request@w3.org
Precedence: list
List-Id: <ietf-http-wg.w3.org>
List-Help: <http://www.w3.org/Mail/>
List-Post: <mailto:ietf-http-wg@w3.org>
List-Unsubscribe: <mailto:ietf-http-wg-request@w3.org?subject=unsubscribe>

Mark Nottingham wrote:
> If containers are only allowed to contain simple types, the need for a schema language diminishes quite a bit; headers can be defined pretty easily in prose, perhaps with references to registries where appropriate.

The same observation could be made of textual information and ABNF.
In the last 40 years, the industry has converged on using BNF in
specifications of languages as a matter of routine for a number of good
reasons; these become even stronger with a standard notation such as
ABNF which allows throwing some tooling into the specification process
without losing the benefit of a human-readable notation.
Yes, I have run into people who see little value in adding ABNF to
specifications; the benefit may not be universal for all users of a
specification.

I expect the same kind of benefits from using CDDL for JSON-like data
models.  (We had a similar discussion for COSE, which is very simple as
a data model, too*); still the CDDL snippets do help many spec readers,
and the tooling also does help in validating the examples against the spec.)

Grüße, Carsten

*) Well, OK, it *does* have recursion in the recipients in the
encryption spec.

(Pet peeve: "Schema languages" fundamentally come from a database world
and try to solve a different problem, even though they may overlap with
tree grammars; but the usage has become sufficiently confused in the
last 20 years that I won't insist on this difference.  But I won't get
caught calling CDDL a "schema language"...)