idnits 2.17.1 draft-ietf-core-senml-more-units-02.txt: Checking boilerplate required by RFC 5378 and the IETF Trust (see https://trustee.ietf.org/license-info): ---------------------------------------------------------------------------- No issues found here. Checking nits according to https://www.ietf.org/id-info/1id-guidelines.txt: ---------------------------------------------------------------------------- No issues found here. Checking nits according to https://www.ietf.org/id-info/checklist : ---------------------------------------------------------------------------- -- The draft header indicates that this document updates RFC8428, but the abstract doesn't seem to directly say this. It does mention RFC8428 though, so this could be OK. Miscellaneous warnings: ---------------------------------------------------------------------------- == The copyright year in the IETF Trust and authors Copyright Line does not match the current year -- The document date (October 12, 2019) is 1657 days in the past. Is this intentional? Checking references for intended status: Proposed Standard ---------------------------------------------------------------------------- (See RFCs 3967 and 4897 for information about using normative references to lower-maturity documents in RFCs) -- Possible downref: Non-RFC (?) normative reference: ref. 'IEC-80000-13' -- Possible downref: Non-RFC (?) normative reference: ref. 'IEC-80000-6' -- Possible downref: Non-RFC (?) normative reference: ref. 'IEEE-1459' Summary: 0 errors (**), 0 flaws (~~), 1 warning (==), 5 comments (--). Run idnits with the --verbose option for more detailed information about the items above. -------------------------------------------------------------------------------- 2 Network Working Group C. Bormann 3 Internet-Draft Universitaet Bremen TZI 4 Updates: 8428 (if approved) October 12, 2019 5 Intended status: Standards Track 6 Expires: April 14, 2020 8 Additional Units for SenML 9 draft-ietf-core-senml-more-units-02 11 Abstract 13 The Sensor Measurement Lists (SenML) media type supports the 14 indication of units for a quantity represented. This short document 15 registers a number of additional unit names in the IANA registry for 16 Units in SenML. It also defines a registry for secondary units that 17 cannot be in SenML's main registry as they are derived by linear 18 transformation from units already in that registry; RFC 8428 is 19 updated to also accept these units. 21 Status of This Memo 23 This Internet-Draft is submitted in full conformance with the 24 provisions of BCP 78 and BCP 79. 26 Internet-Drafts are working documents of the Internet Engineering 27 Task Force (IETF). Note that other groups may also distribute 28 working documents as Internet-Drafts. The list of current Internet- 29 Drafts is at https://datatracker.ietf.org/drafts/current/. 31 Internet-Drafts are draft documents valid for a maximum of six months 32 and may be updated, replaced, or obsoleted by other documents at any 33 time. It is inappropriate to use Internet-Drafts as reference 34 material or to cite them other than as "work in progress." 36 This Internet-Draft will expire on April 14, 2020. 38 Copyright Notice 40 Copyright (c) 2019 IETF Trust and the persons identified as the 41 document authors. All rights reserved. 43 This document is subject to BCP 78 and the IETF Trust's Legal 44 Provisions Relating to IETF Documents 45 (https://trustee.ietf.org/license-info) in effect on the date of 46 publication of this document. Please review these documents 47 carefully, as they describe your rights and restrictions with respect 48 to this document. Code Components extracted from this document must 49 include Simplified BSD License text as described in Section 4.e of 50 the Trust Legal Provisions and are provided without warranty as 51 described in the Simplified BSD License. 53 Table of Contents 55 1. Introduction . . . . . . . . . . . . . . . . . . . . . . . . 2 56 2. New Units . . . . . . . . . . . . . . . . . . . . . . . . . . 3 57 3. Rationale . . . . . . . . . . . . . . . . . . . . . . . . . . 3 58 4. New Registry . . . . . . . . . . . . . . . . . . . . . . . . 4 59 5. Security Considerations . . . . . . . . . . . . . . . . . . . 6 60 6. IANA Considerations . . . . . . . . . . . . . . . . . . . . . 6 61 Acknowledgements . . . . . . . . . . . . . . . . . . . . . . . . 6 62 8. References . . . . . . . . . . . . . . . . . . . . . . . . . 6 63 8.1. Normative References . . . . . . . . . . . . . . . . . . 6 64 8.2. Informative References . . . . . . . . . . . . . . . . . 7 65 Author's Address . . . . . . . . . . . . . . . . . . . . . . . . 7 67 1. Introduction 69 The Sensor Measurement Lists (SenML, [RFC8428]) media type supports 70 the indication of a unit, using the SenML field "u", for the quantity 71 given as a data value in a SenML record. For this purpose, SenML 72 defines an IANA registry of defined Unit names and their meanings; in 73 the present document, we call the Unit names registered there 74 "primary Unit names". 76 This short document registers a number of additional units in the 77 IANA registry for Units in SenML that appear to be necessary for 78 further adopting SenML in other Standards Development Organizations 79 (SDOs). 81 The document also defines a registry for secondary Unit names that 82 cannot be in SenML's main registry as they are derived by linear 83 transformation from units already in that registry. [RFC8428] is 84 updated to also accept these secondary Unit names in place of the 85 (primary) Unit names defined in [RFC8428]. 87 The key words "MUST", "MUST NOT", "REQUIRED", "SHALL", "SHALL NOT", 88 "SHOULD", "SHOULD NOT", "RECOMMENDED", "NOT RECOMMENDED", "MAY", and 89 "OPTIONAL" in this document are to be interpreted as described in 90 BCP 14 [RFC2119] [RFC8174] when, and only when, they appear in all 91 capitals, as shown here. 93 2. New Units 95 IANA is requested to assign new units in the "SenML Units" 96 subregistry of the SenML registry [IANA.senml] (as defined in 97 [RFC8428]): 99 +--------+--------------------------------------+-------+-----------+ 100 | Symbol | Description | Type | Reference | 101 +--------+--------------------------------------+-------+-----------+ 102 | B | Byte (information content) | float | RFCthis | 103 | VA | volt-ampere (Apparent Power) | float | RFCthis | 104 | VAs | volt-ampere seconds (Apparent | float | RFCthis | 105 | | Energy) | | | 106 | var | volt-ampere reactive (Reactive | float | RFCthis | 107 | | Power) | | | 108 | vars | volt-ampere reactive seconds | float | RFCthis | 109 | | (Reactive Energy) | | | 110 | J/m | joule per meter (Energy per | float | RFCthis | 111 | | distance) | | | 112 | kg/m3 | kilograms per cubic meter (mass | float | RFCthis | 113 | | concentration) | | | 114 | deg | degrees (angle)* | float | RFCthis | 115 +--------+--------------------------------------+-------+-----------+ 117 Table 1: New units registered for SenML 119 3. Rationale 121 SenML [RFC8428] takes the position that unscaled SI units should 122 always be used. However, SenML makes one exception: The degree 123 Celsius (as Cel) is allowed as an alternative to the K (Kelvin). 125 This document takes the position that the same should apply to a 126 small number of alternative units in wide use: 128 o The Byte. [IEC-80000-13] defines both the bit (item 13-9.b) and 129 the byte (item 13-9.c, also called octet) as alternative names for 130 the coherent unit one for the purpose of giving storage capacity 131 and related quantities. While the name octet is associated with 132 the symbol o, this is in wide use only in French-speaking 133 countries. Globally more wide-spread is the symbol B for byte, 134 even though B is already taken in SI for bel. [RFC8428] therefore 135 registers dB as the SenML unit for logarithmic relative power, 136 leaving B free for the usage proposed here. While this is 137 potentially confusing, the situation is widely understood in 138 engineering circles and is unlikely to cause actual problems. 140 o The Volt-Ampere. [IEC-80000-6]} item 6-57.a defines the VA (volt 141 ampere) as a unit for apparent power; items 6-59.a, 6-60.a and 142 6-61.a also use the unit for complex, reactive, and non-active 143 power. 145 o The Volt-Ampere-reactive. [IEC-80000-6] item 6-60.b defines the 146 var (volt ampere reactive) as an alternative (and fully 147 equivalent) unit to VA specifically for reactive power (with the 148 primary unit VA). It is not presently known to this author how 149 the upcoming revision of IEC 80000-6 will update this, but it has 150 became clear that there is strong interest in using this unit 151 specifically for the imaginary content of complex power, reactive 152 power [IEEE-1459]. 154 The unit "degrees" is in wide use in practice for plane angles (as in 155 heading, bearing, etc.). It is marked with an asterisk because the 156 preferred coherent SI unit is radian ("rad"). 158 The Joule per meter is not a traditional electromagnetic unit. It 159 and its scaled derivatives (in particular Wh/km) are used to describe 160 the energy expended for achieving motion over a given distance, e.g., 161 as an equivalent for electrical cars of the inverse of "mileage". 163 4. New Registry 165 IANA is requested to create a "secondary units" subregistry in the 166 SenML registry [IANA.senml] defined in [RFC8428]. 168 The registry has six columns: 170 o secondary unit: a newly registered name allocated within the same 171 namespace as SenML units 173 o description: short description (usually just expansion of 174 abbreviation) 176 o SenML unit: an existing SenML unit from the SenML units registry 178 o scale, offset: two rational numbers, expressed in decimal 179 (optionally, with a decimal exponent given) or as a fraction 180 divided by a "/" character. 182 o Reference: where does the entry come from. 184 Quantities expressed in the secondary unit can be converted into the 185 SenML unit by first multiplying their value with the scale number and 186 then adding the offset, yielding the value in the given SenML unit. 188 The initial content of the secondary units registry is provided in 189 Table 2: 191 +-----------+-------------------+-------+-----------+-----+---------+ 192 | secondary | description | SenML | scale | off | refer- | 193 | unit | | unit | | set | ence | 194 +-----------+-------------------+-------+-----------+-----+---------+ 195 | ms | millisecond | s | 1/1000 | 0 | RFCthis | 196 | min | minute | s | 60 | 0 | RFCthis | 197 | h | hour | s | 3600 | 0 | RFCthis | 198 | kW | kilowatt | W | 1000 | 0 | RFCthis | 199 | kVA | kilovolt-ampere | VA | 1000 | 0 | RFCthis | 200 | kvar | kilovar | var | 1000 | 0 | RFCthis | 201 | Ah | ampere-hour | C | 3600 | 0 | RFCthis | 202 | Wh | watt-hour | J | 3600 | 0 | RFCthis | 203 | kWh | kilowatt-hour | J | 3600000 | 0 | RFCthis | 204 | varh | var-hour | vars | 3600 | 0 | RFCthis | 205 | kvarh | kilovar-hour | vars | 3600000 | 0 | RFCthis | 206 | kVAh | kilovolt-ampere- | VAs | 3600000 | 0 | RFCthis | 207 | | hour | | | | | 208 | Wh/km | watts-hour per | J/m | 3.6 | 0 | RFCthis | 209 | | kilometer | | | | | 210 | KiB | kibibyte | B | 1024 | 0 | RFCthis | 211 | mV | millivolt | V | 1/1000 | 0 | RFCthis | 212 | mA | milliampere | A | 1/1000 | 0 | RFCthis | 213 | dBm | decibel | dBW | 1 | -30 | RFCthis | 214 | | (milliwatt) | | | | | 215 | ug/m3 | micrograms per | kg/m3 | 1e-9 | 0 | RFCthis | 216 | | cubic meter | | | | | 217 | mm/h | millimeter per | m/s | 1/3600000 | 0 | RFCthis | 218 | | hour | | | | | 219 | ppm | parts per million | / | 1e-6 | 0 | RFCthis | 220 | hPa | hectopascal | Pa | 100 | 0 | RFCthis | 221 | mm | millimeter | m | 1/1000 | 0 | RFCthis | 222 | km | kilometer | km | 1000 | 0 | RFCthis | 223 | km/h | kilometer per | m/s | 1/3.6 | 0 | RFCthis | 224 | | hour | | | | | 225 +-----------+-------------------+-------+-----------+-----+---------+ 227 Table 2: Secondary units registered for SenML 229 Example: the value of a quantity given as 100 ms is first multiplied 230 by 1/1000, yielding the number 0.1, and then the offset 0 is added, 231 yielding the number 0.1 again, leading to a quantity of 0.1 s. The 232 value of a quantity given as 10 dBm is first multiplied by 1, 233 yielding the number 10, and then the offset -30 is added, yielding 234 the number -20, leading to a quantity of -20 dBW. 236 New entries can be added to the registration by Expert Review as 237 defined in [RFC8126]. Experts should exercise their own good 238 judgment, with the same guidelines as used for SenML units 239 (Section 12.1 of [RFC8428]), but without applying the rules 4 and 5. 240 Guidelines to the difference between units (which can go into the 241 registry) and quantities are widely available, see for instance [RS] 242 and [BIPM]. 244 SenML packs MAY, but SHOULD NOT, use secondary units in place of 245 SenML units, where the exception of the "SHOULD NOT" lies in the 246 context of specific existing data models that are based on these 247 secondary units. 249 5. Security Considerations 251 The security considerations of [RFC8428] apply. The introduction of 252 new measurement units poses no additional security considerations 253 except from a possible potential for additional confusion about the 254 proper unit to use. 256 6. IANA Considerations 258 See Section 2 and Section 4. 260 Acknowledgements 262 Ari Keranen pointed out the need for additional units in SenML. 263 Comments provided by him as well as by Thomas Fossati, Joaquin Prado, 264 and Jaime Jimenez helped improve the document. 266 8. References 268 8.1. Normative References 270 [IANA.senml] 271 IANA, "Sensor Measurement Lists (SenML)", 272 . 274 [IEC-80000-13] 275 "Quantities and units - Part 13: Information science and 276 technology", IEC 80000-13, Edition 1.0, March 2008. 278 [IEC-80000-6] 279 "Quantities and units - Part 6: Electromagnetism", 280 IEC 80000-6, Edition 1.0, March 2008. 282 [IEEE-1459] 283 "IEEE Standard Definitions for the Measurement of Electric 284 Power Quantities Under Sinusoidal, Nonsinusoidal, 285 Balanced, or Unbalanced Conditions", IEEE Std 1459-2010, 286 March 2010. 288 [RFC2119] Bradner, S., "Key words for use in RFCs to Indicate 289 Requirement Levels", BCP 14, RFC 2119, 290 DOI 10.17487/RFC2119, March 1997, 291 . 293 [RFC8126] Cotton, M., Leiba, B., and T. Narten, "Guidelines for 294 Writing an IANA Considerations Section in RFCs", BCP 26, 295 RFC 8126, DOI 10.17487/RFC8126, June 2017, 296 . 298 [RFC8174] Leiba, B., "Ambiguity of Uppercase vs Lowercase in RFC 299 2119 Key Words", BCP 14, RFC 8174, DOI 10.17487/RFC8174, 300 May 2017, . 302 [RFC8428] Jennings, C., Shelby, Z., Arkko, J., Keranen, A., and C. 303 Bormann, "Sensor Measurement Lists (SenML)", RFC 8428, 304 DOI 10.17487/RFC8428, August 2018, 305 . 307 8.2. Informative References 309 [BIPM] Bureau International des Poids es Mesures, "The 310 International System of Units (SI), 9th edition", 2019, 311 . 314 [RS] Rohde&Schwarz, "Standard-compliant usage of quantities, 315 units and equations", version 4.0, November 2016, 316 . 320 Author's Address 322 Carsten Bormann 323 Universitaet Bremen TZI 324 Postfach 330440 325 Bremen D-28359 326 Germany 328 Phone: +49-421-218-63921 329 Email: cabo@tzi.org