[T2TRG] Representation issues and protocol bindings

Carsten Bormann <cabo@tzi.org> Mon, 31 August 2020 14:25 UTC

Return-Path: <cabo@tzi.org>
X-Original-To: t2trg@ietfa.amsl.com
Delivered-To: t2trg@ietfa.amsl.com
Received: from localhost (localhost [127.0.0.1]) by ietfa.amsl.com (Postfix) with ESMTP id 5126A3A13E6 for <t2trg@ietfa.amsl.com>; Mon, 31 Aug 2020 07:25:56 -0700 (PDT)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: -1.897
X-Spam-Level:
X-Spam-Status: No, score=-1.897 tagged_above=-999 required=5 tests=[BAYES_00=-1.9, RCVD_IN_MSPIKE_H4=0.001, RCVD_IN_MSPIKE_WL=0.001, SPF_HELO_NONE=0.001, SPF_PASS=-0.001, URIBL_BLOCKED=0.001] autolearn=unavailable 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 0Wfb8cVerBZH for <t2trg@ietfa.amsl.com>; Mon, 31 Aug 2020 07:25:53 -0700 (PDT)
Received: from gabriel-vm-2.zfn.uni-bremen.de (gabriel-vm-2.zfn.uni-bremen.de [134.102.50.17]) (using TLSv1.2 with cipher AECDH-AES256-SHA (256/256 bits)) (No client certificate requested) by ietfa.amsl.com (Postfix) with ESMTPS id 41BF93A13E2 for <t2trg@irtf.org>; Mon, 31 Aug 2020 07:25:53 -0700 (PDT)
Received: from [192.168.217.102] (p5089ae91.dip0.t-ipconnect.de [80.137.174.145]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by gabriel-vm-2.zfn.uni-bremen.de (Postfix) with ESMTPSA id 4BgCDH00BvzyWD; Mon, 31 Aug 2020 16:25:50 +0200 (CEST)
Content-Type: text/plain; charset="utf-8"
Mime-Version: 1.0 (Mac OS X Mail 13.4 \(3608.120.23.2.1\))
From: Carsten Bormann <cabo@tzi.org>
Date: Mon, 31 Aug 2020 16:25:50 +0200
Cc: t2trg@irtf.org, One Data Model Group <onedm@iotliaison.org>
X-Mao-Original-Outgoing-Id: 620576750.3947901-9b09c7ba8d2efee091c02d379fbdddd2
Content-Transfer-Encoding: quoted-printable
Message-Id: <2ED86F4F-2926-4FBB-91A7-39F32FE7A970@tzi.org>
To: asdf@ietf.org
X-Mailer: Apple Mail (2.3608.120.23.2.1)
Archived-At: <https://mailarchive.ietf.org/arch/msg/t2trg/Qx9_h9C9b8kTjkCtjod-cRGwyrQ>
Subject: [T2TRG] Representation issues and protocol bindings
X-BeenThere: t2trg@irtf.org
X-Mailman-Version: 2.1.29
Precedence: list
List-Id: IRTF Thing-to-Thing Research Group <t2trg.irtf.org>
List-Unsubscribe: <https://www.irtf.org/mailman/options/t2trg>, <mailto:t2trg-request@irtf.org?subject=unsubscribe>
List-Archive: <https://mailarchive.ietf.org/arch/browse/t2trg/>
List-Post: <mailto:t2trg@irtf.org>
List-Help: <mailto:t2trg-request@irtf.org?subject=help>
List-Subscribe: <https://www.irtf.org/mailman/listinfo/t2trg>, <mailto:t2trg-request@irtf.org?subject=subscribe>
X-List-Received-Date: Mon, 31 Aug 2020 14:25:56 -0000

In today’s OneDM call, Bruce Nordman brought up the issue that, in the end, we’ll need concrete representations to talk to devices and use their data.

So if we have one ecosystem that uses 0..100 for describing the brightness setting for a lamp, another one that uses 0..254 (where 255 means something complete different), and a third with 0..65535, what do we do?  (And these might also differ whether they describe a emitted light power level or a perceptive luminous flux level.)

The underlying problem is that we are abusing data model level description techniques (in part borrowed from json-schema.org) to describe information models.
That works reasonably well until we start taking these data model level descriptions at face value.  The fact that some converged model uses a scale based on the L component of Lu’v’ does not mean that everybody has to represent their ecosystem model the same way.

The obvious second problem is that we haven’t tackled a framework for describing protocol bindings (which, initially, will mostly be ecosystem bindings).  That would be the place where we say how the L component needs to mapped to the ecosystem specific concrete representation.  Since that mapping, in principle, can have arbitrary complexity, completely covering all cases requires Turing-equivalent functionality in a description language.  Or we could go for an 80 % solution and then, for the 20 %, register mapping components that are more complex in an IANA registry.

Let’s discuss this based on some real-world examples — it is easy to construct artificial ones that have more complexity than we actually need.

CCing T2TRG as well because quite a few people there are familiar with the problem; maybe we want to have the bulk of the discussion on asdf@ietf.org though.

Grüße, Carsten