Re: [core] SenML JSON syntax (with multiple base objects)

Carsten Bormann <cabo@tzi.org> Tue, 20 October 2015 18:46 UTC

Return-Path: <cabo@tzi.org>
X-Original-To: core@ietfa.amsl.com
Delivered-To: core@ietfa.amsl.com
Received: from localhost (ietfa.amsl.com [127.0.0.1]) by ietfa.amsl.com (Postfix) with ESMTP id 6561C1AC398 for <core@ietfa.amsl.com>; Tue, 20 Oct 2015 11:46:10 -0700 (PDT)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: -1.55
X-Spam-Level:
X-Spam-Status: No, score=-1.55 tagged_above=-999 required=5 tests=[BAYES_00=-1.9, HELO_EQ_DE=0.35] 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 aepKAyjoKhWC for <core@ietfa.amsl.com>; Tue, 20 Oct 2015 11:46:09 -0700 (PDT)
Received: from mailhost.informatik.uni-bremen.de (mailhost.informatik.uni-bremen.de [IPv6:2001:638:708:30c9::12]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by ietfa.amsl.com (Postfix) with ESMTPS id C4DF01A92E1 for <core@ietf.org>; Tue, 20 Oct 2015 11:46:08 -0700 (PDT)
X-Virus-Scanned: amavisd-new at informatik.uni-bremen.de
Received: from submithost.informatik.uni-bremen.de (submithost.informatik.uni-bremen.de [IPv6:2001:638:708:30c9::b]) by mailhost.informatik.uni-bremen.de (8.14.5/8.14.5) with ESMTP id t9KIk3Ps006398; Tue, 20 Oct 2015 20:46:03 +0200 (CEST)
Received: from nar.local (p5DC7F6AE.dip0.t-ipconnect.de [93.199.246.174]) (using TLSv1 with cipher ECDHE-RSA-AES256-SHA (256/256 bits)) (No client certificate requested) by submithost.informatik.uni-bremen.de (Postfix) with ESMTPSA id 3ngP6g4jBbz4nnj; Tue, 20 Oct 2015 20:46:03 +0200 (CEST)
Message-ID: <56268BEA.8060009@tzi.org>
Date: Tue, 20 Oct 2015 20:46:02 +0200
From: Carsten Bormann <cabo@tzi.org>
User-Agent: Postbox 4.0.5 (Macintosh/20150923)
MIME-Version: 1.0
To: Michael Koster <michaeljohnkoster@gmail.com>
References: <58C4BBDD-895C-4946-983A-405C6E5B760D@ericsson.com> <DAFB7C72-CF08-438E-B681-10918717A5D5@gmail.com>
In-Reply-To: <DAFB7C72-CF08-438E-B681-10918717A5D5@gmail.com>
X-Enigmail-Version: 1.2.3
Content-Type: text/plain; charset="UTF-8"
Content-Transfer-Encoding: 8bit
Archived-At: <http://mailarchive.ietf.org/arch/msg/core/pQWokoLTC9ROYKg6wZ9meWixsa0>
Cc: "draft-jennings-core-senml@tools.ietf.org" <draft-jennings-core-senml@tools.ietf.org>, core <core@ietf.org>
Subject: Re: [core] SenML JSON syntax (with multiple base objects)
X-BeenThere: core@ietf.org
X-Mailman-Version: 2.1.15
Precedence: list
List-Id: "Constrained RESTful Environments \(CoRE\) Working Group list" <core.ietf.org>
List-Unsubscribe: <https://www.ietf.org/mailman/options/core>, <mailto:core-request@ietf.org?subject=unsubscribe>
List-Archive: <https://mailarchive.ietf.org/arch/browse/core/>
List-Post: <mailto:core@ietf.org>
List-Help: <mailto:core-request@ietf.org?subject=help>
List-Subscribe: <https://www.ietf.org/mailman/listinfo/core>, <mailto:core-request@ietf.org?subject=subscribe>
X-List-Received-Date: Tue, 20 Oct 2015 18:46:10 -0000

Michael Koster wrote:
> Is the proposed format simpler because it removes the need to have an
> “e” tag and instead associates a data object with a base object by
> position in the array?

Old SenML has the problem that there is no way in JSON (or CBOR, which
is modeled on JSON here) to ensure that the base values come before the
measurements.  This has to be an array unless it's OK to force an
implementation to keep the measurements until finally the base values
come through.

The "simplification" that has been proposed today is that the clear
delineation between base values and measurements would be lost and an
implementation has to examine each element of the array whether it is a
base object or a measurement.  I have no idea how that simplifies
things, except for the superficial property of having fewer brackets.
To the contrary, making the structure very explicit is a recipe that
allows very simple implementations.

Grüße, Carsten