[core] SenML JSON syntax (with multiple base objects)
Ari Keränen <ari.keranen@ericsson.com> Tue, 20 October 2015 17:06 UTC
Return-Path: <ari.keranen@ericsson.com>
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 209AD1ACD35 for <core@ietfa.amsl.com>; Tue, 20 Oct 2015 10:06:40 -0700 (PDT)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: -3.901
X-Spam-Level:
X-Spam-Status: No, score=-3.901 tagged_above=-999 required=5 tests=[BAYES_00=-1.9, MIME_8BIT_HEADER=0.3, RCVD_IN_DNSWL_MED=-2.3, SPF_PASS=-0.001] autolearn=ham
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 zBlxKchNoMFd for <core@ietfa.amsl.com>; Tue, 20 Oct 2015 10:06:37 -0700 (PDT)
Received: from sesbmg23.ericsson.net (sesbmg23.ericsson.net [193.180.251.37]) (using TLSv1 with cipher DHE-RSA-AES256-SHA (256/256 bits)) (No client certificate requested) by ietfa.amsl.com (Postfix) with ESMTPS id 2F3201ACC83 for <core@ietf.org>; Tue, 20 Oct 2015 10:06:37 -0700 (PDT)
X-AuditID: c1b4fb25-f79a26d00000149a-1e-5626749a302f
Received: from ESESSHC011.ericsson.se (Unknown_Domain [153.88.253.124]) by sesbmg23.ericsson.net (Symantec Mail Security) with SMTP id EE.CA.05274.A9476265; Tue, 20 Oct 2015 19:06:34 +0200 (CEST)
Received: from ESESSMB205.ericsson.se ([169.254.5.167]) by ESESSHC011.ericsson.se ([153.88.183.51]) with mapi id 14.03.0248.002; Tue, 20 Oct 2015 19:06:34 +0200
From: Ari Keränen <ari.keranen@ericsson.com>
To: core <core@ietf.org>
Thread-Topic: SenML JSON syntax (with multiple base objects)
Thread-Index: AQHRC1mscjTmohfEDESlolfqvtazEQ==
Date: Tue, 20 Oct 2015 17:06:33 +0000
Message-ID: <58C4BBDD-895C-4946-983A-405C6E5B760D@ericsson.com>
Accept-Language: en-US
Content-Language: en-US
X-MS-Has-Attach:
X-MS-TNEF-Correlator:
x-originating-ip: [153.88.183.150]
Content-Type: text/plain; charset="iso-8859-1"
Content-ID: <0D3A977C94F1394F83057565042AB266@ericsson.com>
Content-Transfer-Encoding: quoted-printable
MIME-Version: 1.0
X-Brightmail-Tracker: H4sIAAAAAAAAA+NgFnrNLMWRmVeSWpSXmKPExsUyM+Jvje6sErUwg6M7bSz2vV3PbHFg2gRW ByaPJUt+Mnl8ufyZLYApissmJTUnsyy1SN8ugStj5VWPgmvcFUeWPmVtYJzG2cXIySEhYCLx 4O5xRghbTOLCvfVsXYxcHEICRxklHh6exAzhLGGUaJn5lAWkik3AXmLymo9gHSICEhKdX/ez g9jMAtES0/+uA7OFBcwlHn9/wgJRYyOxaeEaoEEcQLaexOwH4iAmi4CqxJNdJSAVvEAT7706 wgRiMwLd8P3UGiaIieISt57MZ4K4TUBiyZ7zzBC2qMTLx/9YIWwliRXbLzFC1OtJ3Jg6hQ3C tpaYsvwZlK0tsWzha2aIXYISJ2c+YZnAKDoLyYpZSNpnIWmfhaR9FpL2BYysqxhFi1OLk3LT jYz1Uosyk4uL8/P08lJLNjECY+fglt+qOxgvv3E8xCjAwajEw/sgXTVMiDWxrLgy9xCjNAeL kjhvM9ODUCGB9MSS1OzU1ILUovii0pzU4kOMTBycUg2MeWwPm79FR17y42YOnD9x6euq7uTX j98amJdaT1F5pOfitOadkMi3T5Z3WI7nXV9+ieVOSxEn40y1Zd9WfpPqDXP+VjxV6q6jg/bj p31MW296Bd+NNrM48tD55fuQ+wuWzFyfp7PkiNBUt5grO00Ej/Ef0tzTe3OHzeFdvLxT6+z8 jvnrFp9jUGIpzkg01GIuKk4EALg31v1+AgAA
Archived-At: <http://mailarchive.ietf.org/arch/msg/core/4hpljmXlCYTDdx1sR9CYk8yFB8Y>
Cc: "draft-jennings-core-senml@tools.ietf.org" <draft-jennings-core-senml@tools.ietf.org>
Subject: [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 17:06:40 -0000
Hi CoRE WG folks, Final SenML open issue for today is whether we should have simpler format for the JSON. Currently the draft uses nested array for the measurement entries as discussed in the Prague meeting (see for example [1]). However, it could be simpler to use just a single array and have entry and base objects at the same level. For example: [ {"bn": "urn:dev:mac:0024befffe804ff1/current", "bt": 1276020076, "bu": "A"}, { "t": -3, "v": 0.14e1 }, { "t": -2, "v": 1.5 }, { "t": -1, "v": 1.6 }, { "t": 0, "v": 1.7 }, {"bn": "urn:dev:mac:0024befffe804ff1/voltage", "bu":"V" }, { "t": -2, "v": 120.05 }, { "t": -1, "v": 120.1 }, ] The base objects would use the same JSON merge patch format and logic as before, but all entry objects would be simply inside the root array, potentially intermixed with base objects. One challenge with this format is that when parsing, one does not immediately know whether it is a base object or entry object, but this should be possible to discover from the member names ("b*"). Of course to accommodate for new base and entry members, we would need to have logic that makes the difference clear even if there are unknown members in the objects (for example, "only b* member names allowed in base object and no b* in entries"). Seems sensible to me. What do you think? Cheers, Ari [1] https://tools.ietf.org/html/draft-jennings-core-senml-01#section-6.1.2
- [core] SenML JSON syntax (with multiple base obje… Ari Keränen
- Re: [core] SenML JSON syntax (with multiple base … Michael Koster
- Re: [core] SenML JSON syntax (with multiple base … Carsten Bormann
- Re: [core] SenML JSON syntax (with multiple base … Christian Amsüss
- Re: [core] SenML JSON syntax (with multiple base … Michael Koster
- Re: [core] SenML JSON syntax (with multiple base … Cullen Jennings
- Re: [core] SenML JSON syntax (with multiple base … Carsten Bormann
- Re: [core] SenML JSON syntax (with multiple base … Alexander Pelov
- Re: [core] SenML JSON syntax (with multiple base … Carsten Bormann
- Re: [core] SenML JSON syntax (with multiple base … Alexander Pelov