Network Working Group C. Bormann Internet-Draft Universitaet Bremen TZI Intended status: Standards Track September 02, 2019 Expires: March 5, 2020 Additional Units for SenML draft-ietf-core-senml-more-units-00 Abstract The Sensor Measurement Lists (SenML) media type supports the indication of units for a quantity represented. This short document registers a number of additional unit names in the IANA registry for Units in SenML. It also defines a registry for secondary units that cannot be in SenML's main registry as they are derived by linear transformation from units already in that registry. Status of This Memo This Internet-Draft is submitted in full conformance with the provisions of BCP 78 and BCP 79. Internet-Drafts are working documents of the Internet Engineering Task Force (IETF). Note that other groups may also distribute working documents as Internet-Drafts. The list of current Internet- Drafts is at https://datatracker.ietf.org/drafts/current/. Internet-Drafts are draft documents valid for a maximum of six months and may be updated, replaced, or obsoleted by other documents at any time. It is inappropriate to use Internet-Drafts as reference material or to cite them other than as "work in progress." This Internet-Draft will expire on March 5, 2020. Copyright Notice Copyright (c) 2019 IETF Trust and the persons identified as the document authors. All rights reserved. This document is subject to BCP 78 and the IETF Trust's Legal Provisions Relating to IETF Documents (https://trustee.ietf.org/license-info) in effect on the date of publication of this document. Please review these documents carefully, as they describe your rights and restrictions with respect to this document. Code Components extracted from this document must include Simplified BSD License text as described in Section 4.e of Bormann Expires March 5, 2020 [Page 1] Internet-Draft Additional Units for SenML September 2019 the Trust Legal Provisions and are provided without warranty as described in the Simplified BSD License. Table of Contents 1. Introduction . . . . . . . . . . . . . . . . . . . . . . . . 2 2. New Units . . . . . . . . . . . . . . . . . . . . . . . . . . 2 3. Rationale . . . . . . . . . . . . . . . . . . . . . . . . . . 3 4. New Registry . . . . . . . . . . . . . . . . . . . . . . . . 4 5. Security Considerations . . . . . . . . . . . . . . . . . . . 6 6. IANA Considerations . . . . . . . . . . . . . . . . . . . . . 6 Acknowledgements . . . . . . . . . . . . . . . . . . . . . . . . 6 8. References . . . . . . . . . . . . . . . . . . . . . . . . . 6 8.1. Normative References . . . . . . . . . . . . . . . . . . 6 8.2. Informative References . . . . . . . . . . . . . . . . . 7 Author's Address . . . . . . . . . . . . . . . . . . . . . . . . 7 1. Introduction The Sensor Measurement Lists (SenML, [RFC8428]) media type supports the indication of a unit, using the SenML field "u", for the quantity given as a data value in a SenML record. For this purpose, SenML defines an IANA registry of defined Unit names and their meanings. This short document registers a number of additional units in the IANA registry for Units in SenML that appear to be necessary for further adopting SenML in other Standards Development Organizations (SDOs). The key words "MUST", "MUST NOT", "REQUIRED", "SHALL", "SHALL NOT", "SHOULD", "SHOULD NOT", "RECOMMENDED", "NOT RECOMMENDED", "MAY", and "OPTIONAL" in this document are to be interpreted as described in BCP 14 [RFC2119] [RFC8174] when, and only when, they appear in all capitals, as shown here. 2. New Units IANA is requested to assign new units in the "SenML Units" subregistry of the SenML registry [IANA.senml] (as defined in [RFC8428]): Bormann Expires March 5, 2020 [Page 2] Internet-Draft Additional Units for SenML September 2019 +--------+--------------------------------------+-------+-----------+ | Symbol | Description | Type | Reference | +--------+--------------------------------------+-------+-----------+ | B | Byte (information content) | float | RFCthis | | | | | | | VA | volt-ampere (Apparent Power) | float | RFCthis | | | | | | | var | volt-ampere reactive (Reactive | float | RFCthis | | | Power) | | | | | | | | | vars | volt-ampere reactive seconds | float | RFCthis | | | (Reactive Energy) | | | | | | | | | J/m | joule per meter (Energy per | float | RFCthis | | | distance) | | | | | | | | | kg/m3 | kilograms per cubic meter (mass | float | RFCthis | | | concentration) | | | | | | | | | deg | degrees (angle)* | float | RFCthis | +--------+--------------------------------------+-------+-----------+ Table 1: New units registered for SenML 3. Rationale SenML [RFC8428] takes the position that unscaled SI units should always be used. However, SenML makes one exception: The degree Celsius (as Cel) is allowed as an alternative to the K (Kelvin). This document takes the position that the same should apply to a small number of alternative units in wide use: o The Byte. [IEC-80000-13] defines both the bit (item 13-9.b) and the byte (item 13-9.c, also called octet) as alternative names for the coherent unit one for the purpose of giving storage capacity and related quantities. While the name octet is associated with the symbol o, this is in wide use only in French-speaking countries. Globally more wide-spread is the symbol B for byte, even though B is already taken in SI for bel. [RFC8428] therefore registers dB as the SenML unit for logarithmic relative power, leaving B free for the usage proposed here. While this is potentially confusing, the situation is widely understood in engineering circles and is unlikely to cause actual problems. o The Volt-Ampere. [IEC-80000-6]} item 6-57.a defines the VA (volt ampere) as a unit for apparent power; items 6-59.a, 6-60.a and Bormann Expires March 5, 2020 [Page 3] Internet-Draft Additional Units for SenML September 2019 6-61.a also use the unit for complex, reactive, and non-active power. o The Volt-Ampere-reactive. [IEC-80000-6] item 6-60.b defines the var (volt ampere reactive) as an alternative (and fully equivalent) unit to VA specifically for reactive power (with the primary unit VA). It is not presently known to this author how the upcoming revision of IEC 80000-6 will update this, but it has became clear since that there is strong interest in using this unit specifically for the imaginary content of complex power, reactive power [IEEE-1459]. The unit "degrees" is unit in wide use in practice for plane angle (as in heading, bearing, etc.). It is marked with an asterisk because the preferred coherent SI unit is radian ("rad"). The Joule per meter is not a traditional electromagnetic unit. It and its scaled derivatives (in particular Wh/km) are used to describe the energy expended for achieving motion over a given distance, e.g., as an equivalent for electrical cars of the inverse of "mileage". 4. New Registry IANA is requested to create a "secondary units" subregistry in the SenML registry [IANA.senml] defined in [RFC8428]. The registry has four columns: o secondary unit: a newly registered name allocated within the same namespace as SenML units o SenML unit: an existing SenML unit from the SenML units registry o scale, offset: two rational numbers, expressed in decimal (optionally, with a decimal exponent given) or as a fraction divided by a "/" character. Quantities expressed in the secondary unit can be converted into the SenML unit by first multiplying their value with the scale number and then adding the offset, yielding the value in the given SenML unit. The initial content of the secondary units registry is: Bormann Expires March 5, 2020 [Page 4] Internet-Draft Additional Units for SenML September 2019 +----------------+------------+-----------+--------+-----------+ | secondary unit | SenML unit | scale | offset | Reference | +----------------+------------+-----------+--------+-----------+ | ms | s | 1/1000 | 0 | RFCthis | | | | | | | | min | s | 60 | 0 | RFCthis | | | | | | | | h | s | 3600 | 0 | RFCthis | | | | | | | | kW | W | 1000 | 0 | RFCthis | | | | | | | | kVA | VA | 1000 | 0 | RFCthis | | | | | | | | kvar | var | 1000 | 0 | RFCthis | | | | | | | | Ah | C | 3600 | 0 | RFCthis | | | | | | | | Wh | J | 3600 | 0 | RFCthis | | | | | | | | kWh | J | 3600000 | 0 | RFCthis | | | | | | | | kvar | var | 1000 | 0 | RFCthis | | | | | | | | varh | vars | 3600 | 0 | RFCthis | | | | | | | | Wh/km | J/m | 3.6 | 0 | RFCthis | | | | | | | | KiB | B | 1024 | 0 | RFCthis | | | | | | | | mV | V | 1/1000 | 0 | RFCthis | | | | | | | | mA | A | 1/1000 | 0 | RFCthis | | | | | | | | dBm | dBW | 1 | -30 | RFCthis | | | | | | | | ug/m3 | kg/m3 | 1e-9 | 0 | RFCthis | | | | | | | | mm/h | m/s | 1/3600000 | 0 | RFCthis | | | | | | | | ppm | / | 1e-6 | 0 | RFCthis | | | | | | | | hPa | Pa | 100 | 0 | RFCthis | | | | | | | | mm | m | 1/1000 | 0 | RFCthis | +----------------+------------+-----------+--------+-----------+ Example: the value of a quantity given as 100 ms is first multiplied by 1/1000, yielding the number 0.1, and then the offset 0 is added, Bormann Expires March 5, 2020 [Page 5] Internet-Draft Additional Units for SenML September 2019 yielding the number 0.1 again, leading to a quantity of 0.1 s. The value of a quantity given as 10 dBm is first multiplied by 1, yielding the number 10, and then the offset -30 is added, yielding the number -20, leading to a quantity of -20 dBW. New entries can be added to the registration by Expert Review as defined in [RFC8126]. Experts should exercise their own good judgment, with the same guidelines as used for SenML units (Section 12.1 of [RFC8428]), but without applying the rules 4 and 5. Guidelines to the difference between units (which can go into the registry) and quantities are widely available, see for instance [RS]. SenML packs MAY, but SHOULD NOT use secondary units in place of SenML units, where the exception of the "SHOULD NOT" lies in the context of specific existing data models that are based on these secondary units. [So does this spec update RFC 8428?] 5. Security Considerations The security considerations of [RFC8428] apply. The introduction of new measurement units poses no additional security considerations except from a possible potential for additional confusion about the proper unit to use. 6. IANA Considerations See Section 2 and Section 4. Acknowledgements Ari Keranen pointed out the need for additional units in SenML. 8. References 8.1. Normative References [IANA.senml] IANA, "Sensor Measurement Lists (SenML)", . [IEC-80000-13] "Quantities and units - Part 13: Information science and technology", IEC 80000-13, Edition 1.0, March 2008. Bormann Expires March 5, 2020 [Page 6] Internet-Draft Additional Units for SenML September 2019 [IEC-80000-6] "Quantities and units - Part 6: Electromagnetism", IEC 80000-6, Edition 1.0, March 2008. [IEEE-1459] "IEEE Standard Definitions for the Measurement of Electric Power Quantities Under Sinusoidal, Nonsinusoidal, Balanced, or Unbalanced Conditions", IEEE Std 1459-2010, March 2010. [RFC2119] Bradner, S., "Key words for use in RFCs to Indicate Requirement Levels", BCP 14, RFC 2119, DOI 10.17487/RFC2119, March 1997, . [RFC8126] Cotton, M., Leiba, B., and T. Narten, "Guidelines for Writing an IANA Considerations Section in RFCs", BCP 26, RFC 8126, DOI 10.17487/RFC8126, June 2017, . [RFC8174] Leiba, B., "Ambiguity of Uppercase vs Lowercase in RFC 2119 Key Words", BCP 14, RFC 8174, DOI 10.17487/RFC8174, May 2017, . [RFC8428] Jennings, C., Shelby, Z., Arkko, J., Keranen, A., and C. Bormann, "Sensor Measurement Lists (SenML)", RFC 8428, DOI 10.17487/RFC8428, August 2018, . 8.2. Informative References [RS] Rohde&Schwarz, "Standard-compliant usage of quantities, units and equations", version 4.0, November 2016, . Author's Address Carsten Bormann Universitaet Bremen TZI Postfach 330440 Bremen D-28359 Germany Phone: +49-421-218-63921 Email: cabo@tzi.org Bormann Expires March 5, 2020 [Page 7]