Re: [Asdf] [One Data Model Group] Sensor design pattern thoughts

Szymon Słupik <simon@silvair.com> Wed, 05 May 2021 15:35 UTC

Return-Path: <simon@silvair.com>
X-Original-To: asdf@ietfa.amsl.com
Delivered-To: asdf@ietfa.amsl.com
Received: from localhost (localhost [127.0.0.1]) by ietfa.amsl.com (Postfix) with ESMTP id 9CE883A12BB for <asdf@ietfa.amsl.com>; Wed, 5 May 2021 08:35:00 -0700 (PDT)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: -1.898
X-Spam-Level:
X-Spam-Status: No, score=-1.898 tagged_above=-999 required=5 tests=[BAYES_00=-1.9, DKIM_SIGNED=0.1, DKIM_VALID=-0.1, HTML_MESSAGE=0.001, SPF_HELO_NONE=0.001, SPF_PASS=-0.001, URIBL_BLOCKED=0.001] autolearn=ham autolearn_force=no
Authentication-Results: ietfa.amsl.com (amavisd-new); dkim=pass (2048-bit key) header.d=silvair-com.20150623.gappssmtp.com
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 Hfk3ZVFH9Vbq for <asdf@ietfa.amsl.com>; Wed, 5 May 2021 08:34:55 -0700 (PDT)
Received: from mail-io1-xd31.google.com (mail-io1-xd31.google.com [IPv6:2607:f8b0:4864:20::d31]) (using TLSv1.2 with cipher ECDHE-RSA-AES128-GCM-SHA256 (128/128 bits)) (No client certificate requested) by ietfa.amsl.com (Postfix) with ESMTPS id 9BAB13A129F for <asdf@ietf.org>; Wed, 5 May 2021 08:34:15 -0700 (PDT)
Received: by mail-io1-xd31.google.com with SMTP id t3so2024722iol.5 for <asdf@ietf.org>; Wed, 05 May 2021 08:34:15 -0700 (PDT)
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=silvair-com.20150623.gappssmtp.com; s=20150623; h=mime-version:references:in-reply-to:from:date:message-id:subject:to :cc; bh=+eCIsf7wE6GdeL1HMs7uNeNlqHMFNVY6j71DAE3kUfk=; b=bEBaYlity9uKMxMmTBrqn4Jasd6E+5pP9InPSL6Z52MltCOKd0ctnusm5sSWoDMnoa DFEj4X1v6GQ7Ggjh78XtWknyz+/aeiC6i5vzlDN1rAzk4zm7+2kY6Nm4hL4ecm8aQmmA d7D1ft255BtQUzIJQ+szaGeh250Vp0+i7OcjYIkn6RvLgwFps7DMN5GQ1BA/2SbC5d4I dZQwG2/w2DvECDLzaahDXtHEL8dGunWPom88LvXJWwlG+zPqDzCbCK2ahLwNIRasLEFR O9sG8lK79MNt1PIfeukdBJq07nGCckc/EImrnbCW3FSrovvN2M1RqheubkxIHO0UxdfP Mbeg==
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:mime-version:references:in-reply-to:from:date :message-id:subject:to:cc; bh=+eCIsf7wE6GdeL1HMs7uNeNlqHMFNVY6j71DAE3kUfk=; b=QaMrvxUIWQJL0j/p5xkt0yPg+tqJIN8nqqREjahMojPkz6Ueh4FdX54YTnwwn33ADI 3uqYzfmwEqa3n6AYp2X4bh/GQpd5oIUS1Ru5Mt6T+6rVIPZKqj/F8AWxv29lh31S19NI aWZQvDfKkJ6zrv2g4rSWNxRjdQHe1T435XlnWJ4/145X/7vMWVwV18ctH817alq8VkiD 3JLYIDyNNERQkoiuHqccguI4tqqWdyoAlBIrZCg8mbIU1v8J197Lg/PgLk25/e6TChCe viw5+F41gEZA68ZKKiYX9e8IUNa66i7RPexCV1tEqYvCKoxlpOuys4wQepvq8nqY3w53 JWrQ==
X-Gm-Message-State: AOAM532raeSPfcwNoa4F+PieEOkPgs6Kxk30+jIAXo3bvE6VZPkGPkLj iK8XeWcy+Z2uj5LFsQ7/KyALdQcYtHHRYUkKv4z/tg==
X-Google-Smtp-Source: ABdhPJxyI53bmgV38BmU+FDlXSJv8E+nmAbZ06Rl8+DPtKkZf0c8qBtZQHgsxAZWhGc7VdBaS3g3G2peTVzr9+P9q1I=
X-Received: by 2002:a5d:8ad2:: with SMTP id e18mr23530802iot.51.1620228854048; Wed, 05 May 2021 08:34:14 -0700 (PDT)
MIME-Version: 1.0
References: <B84C6B80-3AD2-44FF-8025-9031171B6A20@gmail.com>
In-Reply-To: <B84C6B80-3AD2-44FF-8025-9031171B6A20@gmail.com>
From: Szymon Słupik <simon@silvair.com>
Date: Wed, 05 May 2021 17:33:37 +0200
Message-ID: <CABNHR1z0-3mV_e=EH7EtR5cLBDPFmfTZKn8vRA2cfv35GRk-7w@mail.gmail.com>
To: Michael Koster <michaeljohnkoster@gmail.com>
Cc: One Data Model Group <onedm@iotliaison.org>, asdf@ietf.org
Content-Type: multipart/alternative; boundary="0000000000004d01e105c196edab"
Archived-At: <https://mailarchive.ietf.org/arch/msg/asdf/ZLO76oddKSJ2fbAb3p9k8UxoYZw>
Subject: Re: [Asdf] [One Data Model Group] Sensor design pattern thoughts
X-BeenThere: asdf@ietf.org
X-Mailman-Version: 2.1.29
Precedence: list
List-Id: "A Semantic Description Format \(SDF\) for Things and their Interactions and Data" <asdf.ietf.org>
List-Unsubscribe: <https://www.ietf.org/mailman/options/asdf>, <mailto:asdf-request@ietf.org?subject=unsubscribe>
List-Archive: <https://mailarchive.ietf.org/arch/browse/asdf/>
List-Post: <mailto:asdf@ietf.org>
List-Help: <mailto:asdf-request@ietf.org?subject=help>
List-Subscribe: <https://www.ietf.org/mailman/listinfo/asdf>, <mailto:asdf-request@ietf.org?subject=subscribe>
X-List-Received-Date: Wed, 05 May 2021 15:35:03 -0000

Hi Michael,

This is a very valid discussion.

I have always been wondering how we are going to map Bluetooth mesh sensors
to SDF.

Bluetooth defines today 183 so called "Properties", each representing an
atomic sensor. A Property defines the context for data, such as "Outdoor
Temperature" and points to the underlying Characteristic (which defines the
data format, such as Temperature 8 (which defines ranges, resolution,
special values such as "unknown"), which in turn points to a Unit (degree
Celsius).

A physical sensor device may include any combination of the 183 properties,
so the total number of combinations is 183! (~1.4e+345). This is of
course not doable to define in SDF any potential combination. The only way
is to define the rules for producing an SDF definition from a Bluetooth
definition of a given sensor).

Best

Szymon Slupik
President, CTO
+1-415-696-9111

[image: Silvair]
ul. Jasnogórska 44
31-358 Kraków
Poland

www.silvair.com

[image: Facebook] <https://www.facebook.com/meetsilvair/>   [image:
LinkedIn] <https://www.linkedin.com/company/meetsilvair/>   [image: Twitter]
<https://twitter.com/meetsilvair>

NOTICE TO RECIPIENT
We inform you that Silvair sp. z o.o. with its registered office in Cracow
(31-358), at Jasnogórska Street 44 is the controller of your personal data.
You can find more information about processing personal data and your
rights here
<https://silvair.com/media/filer_public/e5/ba/e5ba1ed2-84e6-47da-8277-f10df2eed7cc/information_on_personal_data_processing_of_representative_of_entity_mail_contacts_to_establish_maintain_business_relationshipsfn.pdf>.

This e-mail message and any documents accompanying it contain information
that belongs to SILVAIR. This e-mail is meant for only the intended
recipient of the transmission, and may be a communication privileged by
law, confidential and/or otherwise protected from disclosure. If you
received this e-mail in error and you are not the intended recipient, any
review, use, dissemination, distribution, or copying of this e-mail or
attachment is strictly prohibited. Please notify us immediately of the
error by return e-mail and please delete this message from your system.


On Mon, May 3, 2021 at 8:39 PM One Data Model Group <onedm@iotliaison.org>
wrote:

> Hi,
>
> Here are some follow-on thoughts from today's OneDM discussion about
> sensor modeling and sensor types, quantities, and units.
>
> asdf cc'd for interest
>
> I think, to some extent, the ambiguity around handling quantities and
> units comes from multiple sources:
>
> - We don't have a good system model
>
> In the general sense, the system model is underspecified. We are modeling
> systems of interconnected devices, not physical systems with devices
> installed at well-defined instrumentation and control points. We might
> compensate by building more into the models, based on assumptions of
> autonomy and agency in the system, both computational agency as well as
> descriptive/configuration agency. We assume that devices need to be able to
> discover each other and interoperate autonomously. We see system
> intermediaries as a sign of architectural weakness, and somehow extend that
> to external system models.
>
> So the models end up embodying some of what might be system level
> information, and the boundary is unclear. Ideally the model organization
> would support the pattern found in the O&M ontology, roughly:
>
> Physical feature (FoI) <--> measurement situation (sensing element) <-->
> sensing process (logial affordances, q+u, scale) <--> communication system
> (device and network) <--> application logic
>
> I used to think we could bypass a lot of this for "simple IoT devices",
> but I'm beginning to see the advantage of decoupling the relationships in
> the modeling to make it easier for those who just want simple devices. In
> OneDM we model the logical affordances. We might consider scales,
> quantities, and units to be part of instance bindings, especially as these
> can easily be converted and adapted.
>
> - It's not clear where the product/instance constraints and customization
> is introduced.
>
> Does an IPSO Smart Object model represent a device or a function block?
> Well, obviously it's a function block. Hmm but it seems to encapsulate a
> lot of the system features like specialization around a particular
> measurement quantity. For example, an industrial temperature transmitter is
> a specific product that contains some specialized sensing element with
> common configuration, processing, and communication. Most of the product is
> interchangeable and only gets the specialization when it's assembled.
>
> Our models are similar. Having units and range information allows
> customization, and we define a "Temperature Sensor" as an object type. What
> is the particular tradeoff being made here? Temperature sensor in many ways
> seems more like a composed type than a building block. Temperature sensing
> seems to be a specialization that may add some unique qualities but for the
> most part only sets the quantities, units, and range.
>
> A good counterpoint is concentration sensing in mixtures. There are only a
> few units (mol/mol, ppm...), but many potential components (CO, CO2, O2,
> methane, total HC, and so on). Here is seems to make sense to define a
> concentration sensor and provide a category enum for what material is being
> sensed.
>
> Maybe it would make sense to move some specialization to the sdfThing
> layer as a practice, and think about maximum reuse of object definitions.
> What if we had generic sensing building blocks and a good type system for
> quantities and units that can become part of a system model and device
> models. Then we can assemble product descriptions for things on the shelf,
> as well as measurement descriptions that are agnostic to the product or
> device being used.
>
> Maybe there will be interoperability levels, with conformance to the more
> abstract object building blocks (affordances) on a fundamental level, and
> constrained object/thing definitions (units, quantities, etc.) working on a
> more practical level.
>
> Best regards,
>
> Michael
>
>