Re: [core] YANG to CBOR mapping

Carsten Bormann <cabo@tzi.org> Thu, 19 November 2015 14:55 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 616661B2AEA for <core@ietfa.amsl.com>; Thu, 19 Nov 2015 06:55:09 -0800 (PST)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: -1.9
X-Spam-Level:
X-Spam-Status: No, score=-1.9 tagged_above=-999 required=5 tests=[BAYES_00=-1.9] 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 7TeJMF4tvuZy for <core@ietfa.amsl.com>; Thu, 19 Nov 2015 06:55:03 -0800 (PST)
Received: from relay4-d.mail.gandi.net (relay4-d.mail.gandi.net [IPv6:2001:4b98:c:538::196]) (using TLSv1.2 with cipher AECDH-AES256-SHA (256/256 bits)) (No client certificate requested) by ietfa.amsl.com (Postfix) with ESMTPS id 8E4081B2AFE for <core@ietf.org>; Thu, 19 Nov 2015 06:55:03 -0800 (PST)
Received: from mfilter14-d.gandi.net (mfilter14-d.gandi.net [217.70.178.142]) by relay4-d.mail.gandi.net (Postfix) with ESMTP id 067A717214A; Thu, 19 Nov 2015 15:55:02 +0100 (CET)
X-Virus-Scanned: Debian amavisd-new at mfilter14-d.gandi.net
Received: from relay4-d.mail.gandi.net ([IPv6:::ffff:217.70.183.196]) by mfilter14-d.gandi.net (mfilter14-d.gandi.net [::ffff:10.0.15.180]) (amavisd-new, port 10024) with ESMTP id 551-x_Y5Hf-0; Thu, 19 Nov 2015 15:55:00 +0100 (CET)
X-Originating-IP: 93.199.254.229
Received: from nar.local (p5DC7FEE5.dip0.t-ipconnect.de [93.199.254.229]) (Authenticated sender: cabo@cabo.im) by relay4-d.mail.gandi.net (Postfix) with ESMTPSA id 08D4E17213D; Thu, 19 Nov 2015 15:54:58 +0100 (CET)
Message-ID: <564DE2C1.50205@tzi.org>
Date: Thu, 19 Nov 2015 15:54:57 +0100
From: Carsten Bormann <cabo@tzi.org>
User-Agent: Postbox 4.0.8 (Macintosh/20151105)
MIME-Version: 1.0
To: Michel Veillette <Michel.Veillette@trilliantinc.com>
References: <02d2efc9e66b090dd7b7932ae4e749cd@xs4all.nl> <BLUPR06MB1763C6BBEEE42279A79A8F30FE1B0@BLUPR06MB1763.namprd06.prod.outlook.com>
In-Reply-To: <BLUPR06MB1763C6BBEEE42279A79A8F30FE1B0@BLUPR06MB1763.namprd06.prod.outlook.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/urUvkFC7sZJ1VMSt5ATNTwxyFLg>
Cc: Core <core@ietf.org>, "lhotka@nic.cz" <lhotka@nic.cz>
Subject: Re: [core] YANG to CBOR mapping
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: Thu, 19 Nov 2015 14:55:09 -0000

Hi Michel,

I'm not Peter, but:

{ "hat": "chair", "message": "
We get to do COMI in CoRE (we hope -- the charter is still in process)
because we have promised to work closely with the relevant network
management groups.  This means we'll need good reasons to deviate from
what NETMOD etc. already have agreed to do.
"}

So I think that Peter's reminder to stay close to
draft-ietf-netmod-yang-json -- unless we do need to deviate -- is quite
germane.

(If I were designing this from scratch, I would ask myself whether we
shouldn't stay closer to the schemaless roots of JSON, e.g. by exposing
the exponent in the representation data and not just in the YANG schema.
 But that is a discussion that maybe should be had in NETMOD, if at all.)

I think the specific observation about decimal64 is that it is based on
signed integers as the mantissae, so we need to allow negative numbers
in CBOR as well as unsigned ones.

To contrast this to a place where we may want to deviate, doing "bits"
as an (unsigned) integer sounds right (at least until we need more than
64 of them in one "bits" item).  This runs into the same numbering
issues we have with the intra-module names, though.

Grüße, Carsten

PS.: Typo:
   Leafs of type binary MUST be encoded using a CBOR byte string data
   item (major type 0).
(CBOR byte strings are major type 2.)