<?xml version='1.0' encoding='utf-8'?>
<rfc xmlns:xi="http://www.w3.org/2001/XInclude" version="3" category="std" consensus="true" docName="draft-ietf-core-dev-urn-11" indexInclude="true" ipr="trust200902" number="9039" prepTime="2021-06-30T13:38:31" scripts="Common,Latin" sortRefs="true" submissionType="IETF" symRefs="true" tocDepth="3" tocInclude="true" xml:lang="en">
  <link href="https://datatracker.ietf.org/doc/draft-ietf-core-dev-urn-11" rel="prev"/>
  <link href="https://dx.doi.org/10.17487/rfc9039" rel="alternate"/>
  <link href="urn:issn:2070-1721" rel="alternate"/>
  <front>
    <title abbrev="DEV URN">Uniform Resource Names for Device Identifiers</title>
    <seriesInfo name="RFC" value="9039" stream="IETF"/>
    <author initials="J." surname="Arkko" fullname="Jari Arkko">
      <organization showOnFrontPage="true">Ericsson</organization>
      <address>
        <postal>
          <street/>
          <city>Jorvas</city>
          <code>02420</code>
          <country>Finland</country>
        </postal>
        <email>jari.arkko@piuha.net</email>
      </address>
    </author>
    <author fullname="Cullen Jennings" initials="C." surname="Jennings">
      <organization showOnFrontPage="true">Cisco</organization>
      <address>
        <postal>
          <street>170 West Tasman Drive</street>
          <city>San Jose</city>
          <region>CA</region>
          <code>95134</code>
          <country>United States of America</country>
        </postal>
        <phone>+1 408 421-9990</phone>
        <email>fluffy@iii.ca</email>
      </address>
    </author>
    <author initials="Z." surname="Shelby" fullname="Zach Shelby">
      <organization showOnFrontPage="true">Edge Impulse</organization>
      <address>
        <postal>
          <street>3031 Tisch Way</street>
          <city>San Jose</city>
          <region>CA</region>
          <code>95128</code>
          <country>United States of America</country>
        </postal>
        <email>zach@edgeimpulse.com</email>
      </address>
    </author>
    <date month="06" year="2021"/>
    <keyword>URN</keyword>
    <keyword>device identifier</keyword>
    <keyword>IMEI</keyword>
    <keyword>1-Wire</keyword>
    <keyword>MAC address</keyword>
    <keyword>EUI-48</keyword>
    <keyword>EUI-64</keyword>
    <abstract pn="section-abstract">
      <t indent="0" pn="section-abstract-1">This document describes a new Uniform Resource Name (URN) namespace for
  hardware device identifiers. A general representation of device
  identity can be useful in many applications, such as in sensor data
  streams and storage or in equipment inventories. A URN-based
  representation can be passed along in applications that
  need the information.</t>
    </abstract>
    <boilerplate>
      <section anchor="status-of-memo" numbered="false" removeInRFC="false" toc="exclude" pn="section-boilerplate.1">
        <name slugifiedName="name-status-of-this-memo">Status of This Memo</name>
        <t indent="0" pn="section-boilerplate.1-1">
            This is an Internet Standards Track document.
        </t>
        <t indent="0" pn="section-boilerplate.1-2">
            This document is a product of the Internet Engineering Task Force
            (IETF).  It represents the consensus of the IETF community.  It has
            received public review and has been approved for publication by
            the Internet Engineering Steering Group (IESG).  Further
            information on Internet Standards is available in Section 2 of 
            RFC 7841.
        </t>
        <t indent="0" pn="section-boilerplate.1-3">
            Information about the current status of this document, any
            errata, and how to provide feedback on it may be obtained at
            <eref target="https://www.rfc-editor.org/info/rfc9039" brackets="none"/>.
        </t>
      </section>
      <section anchor="copyright" numbered="false" removeInRFC="false" toc="exclude" pn="section-boilerplate.2">
        <name slugifiedName="name-copyright-notice">Copyright Notice</name>
        <t indent="0" pn="section-boilerplate.2-1">
            Copyright (c) 2021 IETF Trust and the persons identified as the
            document authors. All rights reserved.
        </t>
        <t indent="0" pn="section-boilerplate.2-2">
            This document is subject to BCP 78 and the IETF Trust's Legal
            Provisions Relating to IETF Documents
            (<eref target="https://trustee.ietf.org/license-info" brackets="none"/>) 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 the Trust Legal Provisions and are provided without
            warranty as described in the Simplified BSD License.
        </t>
      </section>
    </boilerplate>
    <toc>
      <section anchor="toc" numbered="false" removeInRFC="false" toc="exclude" pn="section-toc.1">
        <name slugifiedName="name-table-of-contents">Table of Contents</name>
        <ul bare="true" empty="true" indent="2" spacing="compact" pn="section-toc.1-1">
          <li pn="section-toc.1-1.1">
            <t indent="0" keepWithNext="true" pn="section-toc.1-1.1.1"><xref derivedContent="1" format="counter" sectionFormat="of" target="section-1"/>.  <xref derivedContent="" format="title" sectionFormat="of" target="name-introduction">Introduction</xref></t>
          </li>
          <li pn="section-toc.1-1.2">
            <t indent="0" keepWithNext="true" pn="section-toc.1-1.2.1"><xref derivedContent="2" format="counter" sectionFormat="of" target="section-2"/>.  <xref derivedContent="" format="title" sectionFormat="of" target="name-requirements-language">Requirements Language</xref></t>
          </li>
          <li pn="section-toc.1-1.3">
            <t indent="0" pn="section-toc.1-1.3.1"><xref derivedContent="3" format="counter" sectionFormat="of" target="section-3"/>.  <xref derivedContent="" format="title" sectionFormat="of" target="name-dev-urn-definition">DEV URN Definition</xref></t>
            <ul bare="true" empty="true" indent="2" spacing="compact" pn="section-toc.1-1.3.2">
              <li pn="section-toc.1-1.3.2.1">
                <t indent="0" keepWithNext="true" pn="section-toc.1-1.3.2.1.1"><xref derivedContent="3.1" format="counter" sectionFormat="of" target="section-3.1"/>.  <xref derivedContent="" format="title" sectionFormat="of" target="name-purpose">Purpose</xref></t>
              </li>
              <li pn="section-toc.1-1.3.2.2">
                <t indent="0" pn="section-toc.1-1.3.2.2.1"><xref derivedContent="3.2" format="counter" sectionFormat="of" target="section-3.2"/>.  <xref derivedContent="" format="title" sectionFormat="of" target="name-syntax">Syntax</xref></t>
                <ul bare="true" empty="true" indent="2" spacing="compact" pn="section-toc.1-1.3.2.2.2">
                  <li pn="section-toc.1-1.3.2.2.2.1">
                    <t indent="0" pn="section-toc.1-1.3.2.2.2.1.1"><xref derivedContent="3.2.1" format="counter" sectionFormat="of" target="section-3.2.1"/>.  <xref derivedContent="" format="title" sectionFormat="of" target="name-character-case-and-urn-equi">Character Case and URN-Equivalence</xref></t>
                  </li>
                </ul>
              </li>
              <li pn="section-toc.1-1.3.2.3">
                <t indent="0" pn="section-toc.1-1.3.2.3.1"><xref derivedContent="3.3" format="counter" sectionFormat="of" target="section-3.3"/>.  <xref derivedContent="" format="title" sectionFormat="of" target="name-assignment">Assignment</xref></t>
              </li>
              <li pn="section-toc.1-1.3.2.4">
                <t indent="0" pn="section-toc.1-1.3.2.4.1"><xref derivedContent="3.4" format="counter" sectionFormat="of" target="section-3.4"/>.  <xref derivedContent="" format="title" sectionFormat="of" target="name-security-and-privacy">Security and Privacy</xref></t>
              </li>
              <li pn="section-toc.1-1.3.2.5">
                <t indent="0" pn="section-toc.1-1.3.2.5.1"><xref derivedContent="3.5" format="counter" sectionFormat="of" target="section-3.5"/>.  <xref derivedContent="" format="title" sectionFormat="of" target="name-interoperability">Interoperability</xref></t>
              </li>
              <li pn="section-toc.1-1.3.2.6">
                <t indent="0" pn="section-toc.1-1.3.2.6.1"><xref derivedContent="3.6" format="counter" sectionFormat="of" target="section-3.6"/>.  <xref derivedContent="" format="title" sectionFormat="of" target="name-resolution">Resolution</xref></t>
              </li>
              <li pn="section-toc.1-1.3.2.7">
                <t indent="0" pn="section-toc.1-1.3.2.7.1"><xref derivedContent="3.7" format="counter" sectionFormat="of" target="section-3.7"/>.  <xref derivedContent="" format="title" sectionFormat="of" target="name-documentation">Documentation</xref></t>
              </li>
              <li pn="section-toc.1-1.3.2.8">
                <t indent="0" pn="section-toc.1-1.3.2.8.1"><xref derivedContent="3.8" format="counter" sectionFormat="of" target="section-3.8"/>.  <xref derivedContent="" format="title" sectionFormat="of" target="name-additional-information">Additional Information</xref></t>
              </li>
              <li pn="section-toc.1-1.3.2.9">
                <t indent="0" pn="section-toc.1-1.3.2.9.1"><xref derivedContent="3.9" format="counter" sectionFormat="of" target="section-3.9"/>.  <xref derivedContent="" format="title" sectionFormat="of" target="name-revision-information">Revision Information</xref></t>
              </li>
            </ul>
          </li>
          <li pn="section-toc.1-1.4">
            <t indent="0" pn="section-toc.1-1.4.1"><xref derivedContent="4" format="counter" sectionFormat="of" target="section-4"/>.  <xref derivedContent="" format="title" sectionFormat="of" target="name-dev-urn-subtypes">DEV URN Subtypes</xref></t>
            <ul bare="true" empty="true" indent="2" spacing="compact" pn="section-toc.1-1.4.2">
              <li pn="section-toc.1-1.4.2.1">
                <t indent="0" pn="section-toc.1-1.4.2.1.1"><xref derivedContent="4.1" format="counter" sectionFormat="of" target="section-4.1"/>.  <xref derivedContent="" format="title" sectionFormat="of" target="name-mac-addresses">MAC Addresses</xref></t>
              </li>
              <li pn="section-toc.1-1.4.2.2">
                <t indent="0" pn="section-toc.1-1.4.2.2.1"><xref derivedContent="4.2" format="counter" sectionFormat="of" target="section-4.2"/>.  <xref derivedContent="" format="title" sectionFormat="of" target="name-1-wire-device-identifiers">1-Wire Device Identifiers</xref></t>
              </li>
              <li pn="section-toc.1-1.4.2.3">
                <t indent="0" pn="section-toc.1-1.4.2.3.1"><xref derivedContent="4.3" format="counter" sectionFormat="of" target="section-4.3"/>.  <xref derivedContent="" format="title" sectionFormat="of" target="name-organization-defined-identi">Organization-Defined Identifiers</xref></t>
              </li>
              <li pn="section-toc.1-1.4.2.4">
                <t indent="0" pn="section-toc.1-1.4.2.4.1"><xref derivedContent="4.4" format="counter" sectionFormat="of" target="section-4.4"/>.  <xref derivedContent="" format="title" sectionFormat="of" target="name-organization-serial-numbers">Organization Serial Numbers</xref></t>
              </li>
              <li pn="section-toc.1-1.4.2.5">
                <t indent="0" pn="section-toc.1-1.4.2.5.1"><xref derivedContent="4.5" format="counter" sectionFormat="of" target="section-4.5"/>.  <xref derivedContent="" format="title" sectionFormat="of" target="name-organization-product-and-se">Organization Product and Serial Numbers</xref></t>
              </li>
              <li pn="section-toc.1-1.4.2.6">
                <t indent="0" pn="section-toc.1-1.4.2.6.1"><xref derivedContent="4.6" format="counter" sectionFormat="of" target="section-4.6"/>.  <xref derivedContent="" format="title" sectionFormat="of" target="name-future-subtypes">Future Subtypes</xref></t>
              </li>
            </ul>
          </li>
          <li pn="section-toc.1-1.5">
            <t indent="0" pn="section-toc.1-1.5.1"><xref derivedContent="5" format="counter" sectionFormat="of" target="section-5"/>.  <xref derivedContent="" format="title" sectionFormat="of" target="name-examples">Examples</xref></t>
          </li>
          <li pn="section-toc.1-1.6">
            <t indent="0" pn="section-toc.1-1.6.1"><xref derivedContent="6" format="counter" sectionFormat="of" target="section-6"/>.  <xref derivedContent="" format="title" sectionFormat="of" target="name-security-considerations">Security Considerations</xref></t>
            <ul bare="true" empty="true" indent="2" spacing="compact" pn="section-toc.1-1.6.2">
              <li pn="section-toc.1-1.6.2.1">
                <t indent="0" pn="section-toc.1-1.6.2.1.1"><xref derivedContent="6.1" format="counter" sectionFormat="of" target="section-6.1"/>.  <xref derivedContent="" format="title" sectionFormat="of" target="name-privacy">Privacy</xref></t>
              </li>
              <li pn="section-toc.1-1.6.2.2">
                <t indent="0" pn="section-toc.1-1.6.2.2.1"><xref derivedContent="6.2" format="counter" sectionFormat="of" target="section-6.2"/>.  <xref derivedContent="" format="title" sectionFormat="of" target="name-validity">Validity</xref></t>
              </li>
            </ul>
          </li>
          <li pn="section-toc.1-1.7">
            <t indent="0" pn="section-toc.1-1.7.1"><xref derivedContent="7" format="counter" sectionFormat="of" target="section-7"/>.  <xref derivedContent="" format="title" sectionFormat="of" target="name-iana-considerations">IANA Considerations</xref></t>
          </li>
          <li pn="section-toc.1-1.8">
            <t indent="0" pn="section-toc.1-1.8.1"><xref derivedContent="8" format="counter" sectionFormat="of" target="section-8"/>.  <xref derivedContent="" format="title" sectionFormat="of" target="name-references">References</xref></t>
            <ul bare="true" empty="true" indent="2" spacing="compact" pn="section-toc.1-1.8.2">
              <li pn="section-toc.1-1.8.2.1">
                <t indent="0" pn="section-toc.1-1.8.2.1.1"><xref derivedContent="8.1" format="counter" sectionFormat="of" target="section-8.1"/>.  <xref derivedContent="" format="title" sectionFormat="of" target="name-normative-references">Normative References</xref></t>
              </li>
              <li pn="section-toc.1-1.8.2.2">
                <t indent="0" pn="section-toc.1-1.8.2.2.1"><xref derivedContent="8.2" format="counter" sectionFormat="of" target="section-8.2"/>.  <xref derivedContent="" format="title" sectionFormat="of" target="name-informative-references">Informative References</xref></t>
              </li>
            </ul>
          </li>
          <li pn="section-toc.1-1.9">
            <t indent="0" pn="section-toc.1-1.9.1"><xref derivedContent="" format="none" sectionFormat="of" target="section-appendix.a"/><xref derivedContent="" format="title" sectionFormat="of" target="name-acknowledgments">Acknowledgments</xref></t>
          </li>
          <li pn="section-toc.1-1.10">
            <t indent="0" pn="section-toc.1-1.10.1"><xref derivedContent="" format="none" sectionFormat="of" target="section-appendix.b"/><xref derivedContent="" format="title" sectionFormat="of" target="name-authors-addresses">Authors' Addresses</xref></t>
          </li>
        </ul>
      </section>
    </toc>
  </front>
  <middle>
    <section anchor="intro" numbered="true" toc="include" removeInRFC="false" pn="section-1">
      <name slugifiedName="name-introduction">Introduction</name>
      <t indent="0" pn="section-1-1">This document describes a new Uniform Resource Name (URN) <xref target="RFC8141" format="default" sectionFormat="of" derivedContent="RFC8141"/> namespace for hardware
    device identifiers. A general representation of device identity
    can be useful in many applications, such as in sensor data streams
    and storage 
     or in equipment inventories <xref target="RFC7252" format="default" sectionFormat="of" derivedContent="RFC7252"/> <xref target="RFC8428" format="default" sectionFormat="of" derivedContent="RFC8428"/> <xref target="I-D.ietf-core-resource-directory" format="default" sectionFormat="of" derivedContent="CoRE-RD"/>.</t>
      <t indent="0" pn="section-1-2">A URN-based representation can be passed along in applications
    that need the information. It fits particularly well for protocols
    mechanisms that are designed to carry URNs <xref target="RFC7230" format="default" sectionFormat="of" derivedContent="RFC7230"/> <xref target="RFC7540" format="default" sectionFormat="of" derivedContent="RFC7540"/> <xref target="RFC3261" format="default" sectionFormat="of" derivedContent="RFC3261"/> <xref target="RFC7252" format="default" sectionFormat="of" derivedContent="RFC7252"/>. Finally, URNs can
    also be easily carried and stored in formats such as XML <xref target="W3C.REC-xml-19980210" format="default" sectionFormat="of" derivedContent="W3C.REC-xml-19980210"/>, JSON <xref target="RFC8259" format="default" sectionFormat="of" derivedContent="RFC8259"/>, or
    SenML <xref target="RFC8428" format="default" sectionFormat="of" derivedContent="RFC8428"/>.  Using URNs in these formats is
    often preferable as they are universally recognized and
    self-describing and therefore avoid the need to agree to
    interpret an octet string as a specific form of a Media Access Control (MAC) address, for
    instance. Passing URNs may consume additional bytes compared to,
    for instance, passing 4-byte binary IPv4 addresses, but the former offers
    some flexibility in return.</t>
      <t indent="0" pn="section-1-3">This document defines identifier URN types for situations where no
    such convenient type already exists. For instance, <xref target="RFC6920" format="default" sectionFormat="of" derivedContent="RFC6920"/> defines cryptographic identifiers, <xref target="RFC7254" format="default" sectionFormat="of" derivedContent="RFC7254"/> defines International Mobile station Equipment
    Identity (IMEI) identifiers for use with 3GPP cellular systems,
    and <xref target="RFC8464" format="default" sectionFormat="of" derivedContent="RFC8464"/> defines Mobile
    Equipment Identity (MEID) identifiers for use with 3GPP2 cellular
    systems. Those URN types should be employed when such identifiers
    are transported; this document does not redefine these identifiers in
    any way.</t>
      <t indent="0" pn="section-1-4">Universally Unique Identifier (UUID) URNs <xref target="RFC4122" format="default" sectionFormat="of" derivedContent="RFC4122"/> are another alternative way to represent
    device identifiers and already support MAC addresses as one type
    of identifier. However, UUIDs can be inconvenient in
    environments where it is important that the identifiers be as
    simple as possible and where additional requirements on stable
    storage, real-time clocks, and identifier length can be
    prohibitive. Often, UUID-based identifiers are preferred for
    general purpose uses instead of the MAC-based device URNs defined in
    this document. The device URNs are recommended for constrained
    environments.</t>
      <t indent="0" pn="section-1-5">Future device identifier types can extend the device URN
    type defined in this document (see <xref target="iana" format="default" sectionFormat="of" derivedContent="Section 7"/>), or they can define their own URNs.</t>
      <t indent="0" pn="section-1-6">Note that long-term stable unique identifiers are problematic
    for privacy reasons and should be used with care as
    described in <xref target="RFC7721" format="default" sectionFormat="of" derivedContent="RFC7721"/>.</t>
      <t indent="0" pn="section-1-7">The rest of this document is organized as follows. <xref target="devurn" format="default" sectionFormat="of" derivedContent="Section 3"/> defines the "DEV" URN type, and <xref target="subtypes" format="default" sectionFormat="of" derivedContent="Section 4"/> defines subtypes for IEEE MAC-48, EUI-48 and
    EUI-64 addresses, and 1-Wire device identifiers.  <xref target="ex" format="default" sectionFormat="of" derivedContent="Section 5"/> gives examples. <xref target="sec" format="default" sectionFormat="of" derivedContent="Section 6"/> discusses the
    security and privacy considerations of the new URN type. Finally, <xref target="iana" format="default" sectionFormat="of" derivedContent="Section 7"/> specifies the IANA registration for the new URN
    type and sets requirements for subtype allocations within this
    type.</t>
    </section>
    <section anchor="kwd" numbered="true" toc="include" removeInRFC="false" pn="section-2">
      <name slugifiedName="name-requirements-language">Requirements Language</name>
      <t indent="0" pn="section-2-1">
    The key words "<bcp14>MUST</bcp14>", "<bcp14>MUST NOT</bcp14>", "<bcp14>REQUIRED</bcp14>", "<bcp14>SHALL</bcp14>", "<bcp14>SHALL NOT</bcp14>", "<bcp14>SHOULD</bcp14>", "<bcp14>SHOULD NOT</bcp14>", "<bcp14>RECOMMENDED</bcp14>", "<bcp14>NOT RECOMMENDED</bcp14>",
    "<bcp14>MAY</bcp14>", and "<bcp14>OPTIONAL</bcp14>" in this document are to be interpreted as
    described in BCP 14 <xref target="RFC2119" format="default" sectionFormat="of" derivedContent="RFC2119"/> <xref target="RFC8174" format="default" sectionFormat="of" derivedContent="RFC8174"/> 
    when, and only when, they appear in all capitals, as shown here.
      </t>
    </section>
    <section anchor="devurn" numbered="true" toc="include" removeInRFC="false" pn="section-3">
      <name slugifiedName="name-dev-urn-definition">DEV URN Definition</name>
      <dl indent="3" newline="false" spacing="normal" pn="section-3-1">
        <dt pn="section-3-1.1">Namespace Identifier:</dt>
        <dd pn="section-3-1.2">"dev"</dd>
        <dt pn="section-3-1.3">Version:</dt>
        <dd pn="section-3-1.4">1</dd>
        <dt pn="section-3-1.5">Date:</dt>
        <dd pn="section-3-1.6">2020-06-24</dd>
        <dt pn="section-3-1.7">Registrant:</dt>
        <dd pn="section-3-1.8">IETF and the CORE Working Group. Should the working
      group cease to exist, discussion should be directed to the 
      Applications and Real-Time Area or general IETF discussion forums, or the IESG.</dd>
      </dl>
      <section numbered="true" toc="include" removeInRFC="false" pn="section-3.1">
        <name slugifiedName="name-purpose">Purpose</name>
        <t indent="0" pn="section-3.1-1">The DEV URNs identify devices with device-specific
	identifiers such as network card hardware addresses. DEV URNs
	are scoped to be globally applicable (see <xref target="RFC8141" sectionFormat="comma" section="6.4.1" format="default" derivedLink="https://rfc-editor.org/rfc/rfc8141#section-6.4.1" derivedContent="RFC8141"/>) and, in general, enable
	systems to use these identifiers from multiple sources in an
	interoperable manner. Note that in some deployments, ensuring
	uniqueness requires care if manual or local assignment
	mechanisms are used, as discussed in <xref target="assignment" format="default" sectionFormat="of" derivedContent="Section 3.3"/>.
        </t>
        <t indent="0" pn="section-3.1-2">
	Some typical DEV URN applications include equipment
	inventories and smart object systems.
        </t>
        <t indent="0" pn="section-3.1-3">
	DEV URNs can be used in various ways in applications, software
	systems, and network components, in tasks ranging from
	discovery (for instance, when discovering 1-Wire network
	devices or detecting MAC-addressable devices on a LAN) to
	intrusion detection systems and simple catalogues of system
	information.
        </t>
        <t indent="0" pn="section-3.1-4">
	While it is possible to implement resolution systems for specific
	applications or network locations, DEV URNs are typically not used in
	a way that requires resolution beyond direct observation of the
	relevant identifier fields in local link communication. However, it is
	often useful to be able to pass device identifier information in generic
	URN fields in databases or protocol fields, which makes the use of
	URNs for this purpose convenient.
        </t>
        <t indent="0" pn="section-3.1-5">
	The DEV URN namespace complements existing namespaces such as those
	involving IMEI or UUID identifiers. DEV URNs are expected to be a part
	of the IETF-provided basic URN types, covering identifiers that have
	previously not been possible to use in URNs.
        </t>
      </section>
      <section anchor="syntax" numbered="true" toc="include" removeInRFC="false" pn="section-3.2">
        <name slugifiedName="name-syntax">Syntax</name>
        <t indent="0" pn="section-3.2-1">The identifier is expressed in
	ASCII characters and has a hierarchical structure as
	follows:</t>
        <sourcecode name="" type="abnf" markers="false" pn="section-3.2-2">
devurn = "urn:dev:" body componentpart
body = macbody / owbody / orgbody / osbody / opsbody / otherbody
macbody = %s"mac:" hexstring
owbody = %s"ow:" hexstring
orgbody = %s"org:" posnumber "-" identifier *( ":" identifier )
osbody = %s"os:" posnumber "-" serial *( ":" identifier )
opsbody = %s"ops:" posnumber "-" product "-" serial
          *( ":" identifier )
otherbody = subtype ":" identifier *( ":" identifier )
subtype = LALPHA *(DIGIT / LALPHA)
identifier = 1*devunreserved
identifiernodash = 1*devunreservednodash
product = identifiernodash
serial = identifier
componentpart = *( "_" identifier )
devunreservednodash = ALPHA / DIGIT / "."
devunreserved = devunreservednodash / "-"
hexstring = 1*(hexdigit hexdigit)
hexdigit = DIGIT / "a" / "b" / "c" / "d" / "e" / "f"
posnumber = NZDIGIT *DIGIT
ALPHA =  %x41-5A / %x61-7A
LALPHA =  %x41-5A
NZDIGIT = %x31-39
DIGIT =  %x30-39
</sourcecode>
        <t indent="0" pn="section-3.2-3">The above syntax is represented in Augmented Backus-Naur
	Form (ABNF) as defined in <xref target="RFC5234" format="default" sectionFormat="of" derivedContent="RFC5234"/> and
	<xref target="RFC7405" format="default" sectionFormat="of" derivedContent="RFC7405"/>. The syntax also copies the DIGIT and
	ALPHA rules originally defined in <xref target="RFC5234" format="default" sectionFormat="of" derivedContent="RFC5234"/>,
	exactly as defined there.</t>
        <t indent="0" pn="section-3.2-4">The device identifier namespace includes five subtypes (see
	<xref target="subtypes" format="default" sectionFormat="of" derivedContent="Section 4"/>), and more may be defined in the future as
	specified in <xref target="iana" format="default" sectionFormat="of" derivedContent="Section 7"/>.</t>
        <t indent="0" pn="section-3.2-5">The optional underscore-separated components at the end of
        the DEV URN depict individual aspects of a
	device. The specific strings and their semantics are up to the
	designers of the device but could be used to refer to
	specific interfaces or functions within the device.</t>
        <t indent="0" pn="section-3.2-6">With the exception of the MAC address and 1-Wire DEV URNs,
        each DEV URN may also contain optional colon-separated
        identifiers. These are provided for extensibility.</t>
        <t indent="0" pn="section-3.2-7">There are no special character encoding rules or
	considerations for conforming with the URN syntax beyond
	those applicable for URNs in general <xref target="RFC8141" format="default" sectionFormat="of" derivedContent="RFC8141"/>
	or the context where these URNs are carried (e.g., inside JSON
	<xref target="RFC8259" format="default" sectionFormat="of" derivedContent="RFC8259"/> or SenML <xref target="RFC8428" format="default" sectionFormat="of" derivedContent="RFC8428"/>). Due to the SenML rules in <xref target="RFC8428" sectionFormat="comma" section="4.5.1" format="default" derivedLink="https://rfc-editor.org/rfc/rfc8428#section-4.5.1" derivedContent="RFC8428"/>, it is not desirable to use percent-encoding in DEV
	URNs, and the subtypes defined in this specification do not
	really benefit from percent-encoding. However, this
	specification does not deviate from the general syntax of URNs
	or their processing and normalization rules as specified in
	<xref target="RFC3986" format="default" sectionFormat="of" derivedContent="RFC3986"/> and <xref target="RFC8141" format="default" sectionFormat="of" derivedContent="RFC8141"/>.</t>
        <t indent="0" pn="section-3.2-8">DEV URNs do not use r-, q-, or f-components as defined in
        <xref target="RFC8141" format="default" sectionFormat="of" derivedContent="RFC8141"/>.</t>
        <t indent="0" pn="section-3.2-9">Specific subtypes of DEV URNs may be validated through
	mechanisms discussed in <xref target="subtypes" format="default" sectionFormat="of" derivedContent="Section 4"/>.</t>
        <t indent="0" pn="section-3.2-10">The string representation of the device
	identifier URN is fully compatible with
	the URN syntax.</t>
        <section numbered="true" toc="include" removeInRFC="false" pn="section-3.2.1">
          <name slugifiedName="name-character-case-and-urn-equi">Character Case and URN-Equivalence</name>
          <t indent="0" pn="section-3.2.1-1">The DEV URN syntax allows both uppercase and lowercase
	characters. The URN-equivalence of the DEV URNs is defined per
	<xref target="RFC8141" sectionFormat="comma" section="3.1" format="default" derivedLink="https://rfc-editor.org/rfc/rfc8141#section-3.1" derivedContent="RFC8141"/>, i.e., two URNs are
	URN-equivalent if their assigned-name portions are
	octet-by-octet equal after applying case normalization to the
	URI scheme ("urn") and namespace identifier ("dev").
	The rest of the DEV URN is
	compared in a case-sensitive manner. It should be noted that
	URN-equivalence matching merely quickly shows that two URNs
	are definitely the same for the purposes of caching and other
	similar uses. Two DEV URNs may still refer to the same entity and may not be found to be URN-equivalent according to the <xref target="RFC8141" format="default" sectionFormat="of" derivedContent="RFC8141"/>
	definition. For instance, in ABNF, strings are
	case insensitive (see <xref target="RFC5234" sectionFormat="comma" section="2.3" format="default" derivedLink="https://rfc-editor.org/rfc/rfc5234#section-2.3" derivedContent="RFC5234"/>),
	and a MAC address could be represented either with uppercase
	or lowercase hexadecimal digits.</t>
          <t indent="0" pn="section-3.2.1-2">Character case is not otherwise significant for the DEV URN
        subtypes defined in this document.  However, future subtypes
        might include identifiers that use encodings such as base64,
        which encodes strings in a larger variety of characters and
        might even encode binary data.</t>
          <t indent="0" pn="section-3.2.1-3">To facilitate equivalence checks, it is <bcp14>RECOMMENDED</bcp14> that
	implementations always use lowercase letters where they have
	a choice in case, unless there is a reason otherwise. (Such a
	reason might be, for instance, the use of a subtype that
	requires the use of both uppercase and lowercase
	letters.)</t>
        </section>
      </section>
      <section anchor="assignment" numbered="true" toc="include" removeInRFC="false" pn="section-3.3">
        <name slugifiedName="name-assignment">Assignment</name>
        <t indent="0" pn="section-3.3-1">The process for identifier
	assignment is dependent on the used subtype and is documented in the
	specific subsection under <xref target="subtypes" format="default" sectionFormat="of" derivedContent="Section 4"/>.</t>
        <t indent="0" pn="section-3.3-2">Device identifiers are generally expected to identify a
        unique device,
	barring the accidental issue of multiple devices with the same
	identifiers. In many cases, device identifiers can also be
	changed by users or are sometimes assigned in an algorithmic
	or local fashion. Any potential conflicts arising from such
	assignments are not something that the DEV URNs as such
	manage; they simply are there to refer to a particular
	identifier. And, of course, a single device may (and often
        does) have multiple identifiers, e.g., identifiers associated
        with different link technologies it supports.</t>
        <t indent="0" pn="section-3.3-3">The DEV URN type <bcp14>SHOULD</bcp14> only be used for 
	hardware-based identifiers that are expected to be
        persistent (with some limits, as discussed above).</t>
      </section>
      <section numbered="true" toc="include" removeInRFC="false" pn="section-3.4">
        <name slugifiedName="name-security-and-privacy">Security and Privacy</name>
        <t indent="0" pn="section-3.4-1">As discussed in <xref target="sec" format="default" sectionFormat="of" derivedContent="Section 6"/>,
	care must be taken in the use of device-identifier-based
	identifiers due to their nature as long-term identifiers that
	are not normally changeable.  Leakage of these identifiers
	outside systems where their use is justified should be
	controlled.</t>
      </section>
      <section numbered="true" toc="include" removeInRFC="false" pn="section-3.5">
        <name slugifiedName="name-interoperability">Interoperability</name>
        <t indent="0" pn="section-3.5-1">There are no specific interoperability
	concerns.</t>
      </section>
      <section numbered="true" toc="include" removeInRFC="false" pn="section-3.6">
        <name slugifiedName="name-resolution">Resolution</name>
        <t indent="0" pn="section-3.6-1">The device identifiers are not expected to be globally
	resolvable. No identifier resolution system is expected. Systems may
	perform local matching of identifiers to previously seen identifiers
	or configured information, however.</t>
      </section>
      <section numbered="true" toc="include" removeInRFC="false" pn="section-3.7">
        <name slugifiedName="name-documentation">Documentation</name>
        <t indent="0" pn="section-3.7-1">See RFC 9039.</t>
      </section>
      <section numbered="true" toc="include" removeInRFC="false" pn="section-3.8">
        <name slugifiedName="name-additional-information">Additional Information</name>
        <t indent="0" pn="section-3.8-1">See <xref target="intro" format="default" sectionFormat="of" derivedContent="Section 1"/> for a discussion of related namespaces.</t>
      </section>
      <section numbered="true" toc="include" removeInRFC="false" pn="section-3.9">
        <name slugifiedName="name-revision-information">Revision Information</name>
        <t indent="0" pn="section-3.9-1">This is the first version of this registration.</t>
      </section>
    </section>
    <section anchor="subtypes" numbered="true" toc="include" removeInRFC="false" pn="section-4">
      <name slugifiedName="name-dev-urn-subtypes">DEV URN Subtypes</name>
      <section anchor="mac" numbered="true" toc="include" removeInRFC="false" pn="section-4.1">
        <name slugifiedName="name-mac-addresses">MAC Addresses</name>
        <t indent="0" pn="section-4.1-1">DEV URNs of the "mac" subtype are based on the EUI-64 identifier
<xref target="IEEE.EUI64" format="default" sectionFormat="of" derivedContent="IEEE.EUI64"/> derived from a device with a built-in
64-bit EUI-64. The EUI-64 is formed from 24 or 36 bits of organization
identifier followed by 40 or 28 bits of device-specific extension
identifier assigned by that organization.</t>
        <t indent="0" pn="section-4.1-2">In the DEV URN "mac" subtype, the hexstring is simply the full
EUI-64 identifier represented as a hexadecimal string. It is always
exactly 16 characters long.</t>
        <t indent="0" pn="section-4.1-3">MAC-48 and EUI-48 identifiers are also supported by the same DEV
URN subtype.  To convert a MAC-48 address to an EUI-64 identifier, the
Organizationally Unique Identifier (OUI) of the MAC-48 address (the first three octets) becomes the
organization identifier of the EUI-64 (the first three octets).  The
fourth and fifth octets of the EUI are set to the fixed value 0xffff
(hexadecimal).  The last three octets of the MAC-48 address become the
last three octets of the EUI-64. The same process is used to convert
an EUI-48 identifier, but the fixed value 0xfffe is used instead.</t>
        <t indent="0" pn="section-4.1-4">Identifier assignment for all of these identifiers rests within the
IEEE Registration Authority.</t>
        <t indent="0" pn="section-4.1-5">Note that where randomized MAC addresses are used, the resulting
DEV URNs cannot be expected to have uniqueness, as discussed in <xref target="assignment" format="default" sectionFormat="of" derivedContent="Section 3.3"/>.</t>
      </section>
      <section anchor="s1wire" numbered="true" toc="include" removeInRFC="false" pn="section-4.2">
        <name slugifiedName="name-1-wire-device-identifiers">1-Wire Device Identifiers</name>
        <t indent="0" pn="section-4.2-1">The 1-Wire system is a device communications bus system designed
by Dallas Semiconductor Corporation. (1-Wire is a registered trademark.) 1-Wire devices are identified by
a 64-bit identifier that consists of an 8-bit family code, a 48-bit
identifier unique within a family, and an 8-bit Cyclic Redundancy Check (CRC) code <xref target="OW" format="default" sectionFormat="of" derivedContent="OW"/>.
</t>
        <t indent="0" pn="section-4.2-2">In DEV URNs with the "ow" subtype, the hexstring is a representation
of the full 64-bit identifier as a hexadecimal string. It is always
exactly 16 characters long. Note that the last two characters
represent the 8-bit CRC code. Implementations <bcp14>MAY</bcp14> check the validity
of this code.</t>
        <t indent="0" pn="section-4.2-3">Family code and identifier assignment for all 1-Wire devices rests
with the manufacturers.</t>
      </section>
      <section anchor="org" numbered="true" toc="include" removeInRFC="false" pn="section-4.3">
        <name slugifiedName="name-organization-defined-identi">Organization-Defined Identifiers</name>
        <t indent="0" pn="section-4.3-1">Device identifiers that have only a meaning within an
  organization can also be used to represent vendor-specific or
  experimental identifiers or identifiers designed for use within the
  context of an organization.</t>
        <t indent="0" pn="section-4.3-2">Organizations are identified by their Private Enterprise Number
  (PEN) <xref target="RFC2578" format="default" sectionFormat="of" derivedContent="RFC2578"/>. These numbers can be obtained from
  IANA. Current PEN assignments can be viewed at <eref brackets="angle" target="https://www.iana.org/assignments/enterprise-numbers/"/>,
 and new assignments are requested at <eref brackets="angle" target="https://pen.iana.org/pen/PenApplication.page"/>.</t>
        <t indent="0" pn="section-4.3-3">Note that when included in an "org" DEV URN, the number cannot
  be zero or have leading zeroes, as the ABNF requires the number to
  start with a non-zero digit.</t>
      </section>
      <section anchor="os" numbered="true" toc="include" removeInRFC="false" pn="section-4.4">
        <name slugifiedName="name-organization-serial-numbers">Organization Serial Numbers</name>
        <t indent="0" pn="section-4.4-1">The "os" subtype specifies an organization and serial
  number. Organizations are identified by their PEN. As with the
  organization-defined identifiers (<xref target="org" format="default" sectionFormat="of" derivedContent="Section 4.3"/>), PEN number
  assignments are maintained by IANA, and assignments for new
  organizations can be made easily.

        </t>
        <aside pn="section-4.4-2">
          <t indent="0" pn="section-4.4-2.1">
          Historical note: The "os" subtype was originally defined
      in the Open Mobile Alliance "Lightweight Machine to Machine"
      standard <xref target="LwM2M" format="default" sectionFormat="of" derivedContent="LwM2M"/> but has been incorporated here
      to collect all syntaxes associated with DEV URNs in one place.  At
      the same time, the syntax of this subtype was changed to avoid
      the possibility of characters that are not allowed in the SenML Name
      field (see <xref target="RFC8428" sectionFormat="comma" section="4.5.1" format="default" derivedLink="https://rfc-editor.org/rfc/rfc8428#section-4.5.1" derivedContent="RFC8428"/>).</t>
        </aside>
        <t indent="0" pn="section-4.4-3">Organization serial number DEV URNs consist of the PEN number and
  the serial number. As with other DEV URNs, for carrying additional
  information and extensibility, optional colon-separated identifiers
  and underscore-separated components may also be included. The serial
  numbers themselves are defined by the organization, and this
  specification does not specify how they are allocated.</t>
        <t indent="0" pn="section-4.4-4">Organizations are also encouraged to select serial number formats
  that avoid the possibility of ambiguity in the form of leading zeroes
  or otherwise.</t>
      </section>
      <section anchor="ops" numbered="true" toc="include" removeInRFC="false" pn="section-4.5">
        <name slugifiedName="name-organization-product-and-se">Organization Product and Serial Numbers</name>
        <t indent="0" pn="section-4.5-1">The DEV URN "ops" subtype was originally defined in the
  LwM2M standard but has been incorporated here to collect all syntaxes
  associated with DEV URNs in one place. The "ops" subtype specifies
  an organization, product class, and a serial number. Organizations
  are identified by their PEN. Again, as with the
  organization-defined identifiers (<xref target="org" format="default" sectionFormat="of" derivedContent="Section 4.3"/>), PEN number
  assignments are maintained by IANA.
        </t>
        <aside pn="section-4.5-2">
          <t indent="0" pn="section-4.5-2.1">
         Historical note: As with the "os" subtype, the "ops" subtype
    was originally defined in the Open Mobile Alliance "Lightweight Machine to Machine" standard <xref target="LwM2M" format="default" sectionFormat="of" derivedContent="LwM2M"/>.
          </t>
        </aside>
        <t indent="0" pn="section-4.5-3">Organization product and serial number DEV URNs consist of the
  PEN number, product class, and the serial number. As with other DEV
  URNs, for carrying additional information and extensibility,
  optional colon-separated identifiers and underscore-separated
  components may also be included. Both the product class and serial
  numbers themselves are defined by the organization, and this
  specification does not specify how they are allocated.</t>
        <t indent="0" pn="section-4.5-4">Organizations are also encouraged to select product and serial
  number formats that avoid possibility for ambiguity.</t>
      </section>
      <section anchor="futuresubtypes" numbered="true" toc="include" removeInRFC="false" pn="section-4.6">
        <name slugifiedName="name-future-subtypes">Future Subtypes</name>
        <t indent="0" pn="section-4.6-1">Additional subtypes may be defined in future
  specifications. See <xref target="iana" format="default" sectionFormat="of" derivedContent="Section 7"/>.</t>
        <t indent="0" pn="section-4.6-2">The DEV URN "example" subtype is reserved for use in examples. It
  has no specific requirements beyond those expressed by the ABNF in
  <xref target="syntax" format="default" sectionFormat="of" derivedContent="Section 3.2"/>.</t>
      </section>
    </section>
    <section anchor="ex" numbered="true" toc="include" removeInRFC="false" pn="section-5">
      <name slugifiedName="name-examples">Examples</name>
      <t indent="0" pn="section-5-1">The following provides some examples of DEV URNs:
</t>
      <table align="center" pn="table-1">
        <thead>
          <tr>
            <th align="left" colspan="1" rowspan="1">URN</th>
            <th align="left" colspan="1" rowspan="1">Description</th>
          </tr>
        </thead>
        <tbody>
          <tr>
            <td align="left" colspan="1" rowspan="1">urn:dev:mac:0024beffff804ff1</td>
            <td align="left" colspan="1" rowspan="1">The MAC-48 address of 0024be804ff1, converted to EUI-64 format</td>
          </tr>
          <tr>
            <td align="left" colspan="1" rowspan="1">                                                            urn:dev:mac:0024befffe804ff1</td>
            <td align="left" colspan="1" rowspan="1">                                                                  The EUI-48 address of 0024be804ff1, converted to EUI-64 format</td>
          </tr>
          <tr>
            <td align="left" colspan="1" rowspan="1">urn:dev:mac:acde48234567019f</td>
            <td align="left" colspan="1" rowspan="1">The EUI-64 address of                                                acde48234567019f                                                        
      </td>
          </tr>
          <tr>
            <td align="left" colspan="1" rowspan="1">                                                                    urn:dev:ow:10e2073a01080063</td>
            <td align="left" colspan="1" rowspan="1">A 1-Wire temperature                                              sensor</td>
          </tr>
          <tr>
            <td align="left" colspan="1" rowspan="1">urn:dev:ow:264437f5000000ed_humidity</td>
            <td align="left" colspan="1" rowspan="1">The humidity part of a multi-sensor                                                       device                                                                     </td>
          </tr>
          <tr>
            <td align="left" colspan="1" rowspan="1">urn:dev:ow:264437f5000000ed_temperature</td>
            <td align="left" colspan="1" rowspan="1">The temperature part of a multi-sensor device</td>
          </tr>
          <tr>
            <td align="left" colspan="1" rowspan="1">urn:dev:org:32473-foo</td>
            <td align="left" colspan="1" rowspan="1">An organization-specific URN in the example organization 32473 in <xref target="RFC5612" format="default" sectionFormat="of" derivedContent="RFC5612"/>
            </td>
          </tr>
          <tr>
            <td align="left" colspan="1" rowspan="1">urn:dev:os:32473-123456</td>
            <td align="left" colspan="1" rowspan="1">Device 123456 in the example organization in <xref target="RFC5612" format="default" sectionFormat="of" derivedContent="RFC5612"/></td>
          </tr>
          <tr>
            <td align="left" colspan="1" rowspan="1">urn:dev:os:32473-12-34-56</td>
            <td align="left" colspan="1" rowspan="1">A serial number with dashes in it</td>
          </tr>
          <tr>
            <td align="left" colspan="1" rowspan="1">urn:dev:ops:32473-Refrigerator-5002</td>
            <td align="left" colspan="1" rowspan="1">Refrigerator serial number 5002 in the example organization in <xref target="RFC5612" format="default" sectionFormat="of" derivedContent="RFC5612"/></td>
          </tr>
          <tr>
            <td align="left" colspan="1" rowspan="1">urn:dev:example:new-1-2-3_comp</td>
            <td align="left" colspan="1" rowspan="1">An example of something that is not defined today, and is not one of the mac, ow, os, or ops subtypes</td>
          </tr>
        </tbody>
      </table>
      <t indent="0" pn="section-5-3">The DEV URNs themselves can then appear in various contexts. A
simple example of this is the use of DEV URNs in SenML data.  This example from <xref target="RFC8428" format="default" sectionFormat="of" derivedContent="RFC8428"/> shows a
measurement from a 1-Wire temperature gauge encoded in the JSON
syntax:

</t>
      <sourcecode name="" type="json" markers="false" pn="section-5-4">
   [
     {"n":"urn:dev:ow:10e2073a01080063","u":"Cel","v":23.1}
   ]
</sourcecode>
    </section>
    <section anchor="sec" numbered="true" toc="include" removeInRFC="false" pn="section-6">
      <name slugifiedName="name-security-considerations">Security Considerations</name>
      <t indent="0" pn="section-6-1">On most devices, the user can display device identifiers. Depending
on circumstances, device identifiers may or may not be modified or
tampered with by the user. An implementation of the DEV URN <bcp14>MUST</bcp14> preserve
such limitations and behaviors associated with the device identifiers. In particular,
a device identifier that is intended to be immutable should not become mutable
as a part of implementing the DEV URN type. More generally, nothing in
this document should be construed to override what the relevant device
specifications have already said about the identifiers.</t>
      <section anchor="priv" numbered="true" toc="include" removeInRFC="false" pn="section-6.1">
        <name slugifiedName="name-privacy">Privacy</name>
        <t indent="0" pn="section-6.1-1">Other devices in the same network may or may not be able to
identify the device. For instance, on an Ethernet network, the MAC
address of a device is visible to all other devices.</t>
        <t indent="0" pn="section-6.1-2">DEV URNs often represent long-term stable unique identifiers for
devices. Such identifiers may have privacy and security implications
because they may enable correlating information about a specific
device over a long period of time, location tracking, and device-specific vulnerability exploitation <xref target="RFC7721" format="default" sectionFormat="of" derivedContent="RFC7721"/>. Also, in
some systems, there is no easy way to change the identifier. Therefore,
these identifiers need to be used with care, and special care should
be taken to avoid leaking identifiers outside of the system that is intended
to use them.</t>
      </section>
      <section anchor="valid" numbered="true" toc="include" removeInRFC="false" pn="section-6.2">
        <name slugifiedName="name-validity">Validity</name>
        <t indent="0" pn="section-6.2-1">Information about identifiers may have significant effects in some
applications. For instance, in many sensor systems, the identifier
information is used for deciding how to use the data carried in a
measurement report. In some other systems, identifiers may be used in
policy decisions.</t>
        <t indent="0" pn="section-6.2-2">It is important that systems be designed to take into account the
possibility of devices reporting incorrect identifiers (either
accidentally or maliciously) and the manipulation of identifiers in
communications by illegitimate entities. Integrity
protection of communications or data objects, the use of trusted
devices, and various management practices can help address these
issues. </t>
        <t indent="0" pn="section-6.2-3">Similar to the advice in <xref target="RFC4122" sectionFormat="comma" section="6" format="default" derivedLink="https://rfc-editor.org/rfc/rfc4122#section-6" derivedContent="RFC4122"/>:
  Do not assume that DEV URNs are hard to guess.</t>
      </section>
    </section>
    <section anchor="iana" numbered="true" toc="include" removeInRFC="false" pn="section-7">
      <name slugifiedName="name-iana-considerations">IANA Considerations</name>
      <t indent="0" pn="section-7-1">Per this document, IANA has registered a new URN namespace
  for "dev", as described in <xref target="devurn" format="default" sectionFormat="of" derivedContent="Section 3"/>.</t>
      <t indent="0" pn="section-7-2">IANA has created a "DEV URN Subtypes" registry under "Device Identification". The initial values in this registry are as follows:
      </t>
      <table align="center" pn="table-2">
        <thead>
          <tr>
            <th align="left" colspan="1" rowspan="1">Subtype</th>
            <th align="left" colspan="1" rowspan="1">Description</th>
            <th align="left" colspan="1" rowspan="1">Reference</th>
          </tr>
        </thead>
        <tbody>
          <tr>
            <td align="left" colspan="1" rowspan="1">mac</td>
            <td align="left" colspan="1" rowspan="1">MAC Addresses</td>
            <td align="left" colspan="1" rowspan="1">RFC 9039, <xref target="mac" format="default" sectionFormat="of" derivedContent="Section 4.1"/></td>
          </tr>
          <tr>
            <td align="left" colspan="1" rowspan="1">ow</td>
            <td align="left" colspan="1" rowspan="1">1-Wire Device Identifiers</td>
            <td align="left" colspan="1" rowspan="1">RFC 9039, <xref target="s1wire" format="default" sectionFormat="of" derivedContent="Section 4.2"/></td>
          </tr>
          <tr>
            <td align="left" colspan="1" rowspan="1">org</td>
            <td align="left" colspan="1" rowspan="1">Organization-Defined Identifiers</td>
            <td align="left" colspan="1" rowspan="1">RFC 9039, <xref target="org" format="default" sectionFormat="of" derivedContent="Section 4.3"/></td>
          </tr>
          <tr>
            <td align="left" colspan="1" rowspan="1">os</td>
            <td align="left" colspan="1" rowspan="1">Organization Serial Numbers</td>
            <td align="left" colspan="1" rowspan="1">RFC 9039, <xref target="os" format="default" sectionFormat="of" derivedContent="Section 4.4"/></td>
          </tr>
          <tr>
            <td align="left" colspan="1" rowspan="1">ops</td>
            <td align="left" colspan="1" rowspan="1">Organization Product and Serial Numbers</td>
            <td align="left" colspan="1" rowspan="1">RFC 9039, <xref target="ops" format="default" sectionFormat="of" derivedContent="Section 4.5"/></td>
          </tr>
          <tr>
            <td align="left" colspan="1" rowspan="1">example</td>
            <td align="left" colspan="1" rowspan="1">Reserved for examples</td>
            <td align="left" colspan="1" rowspan="1">RFC 9039, <xref target="futuresubtypes" format="default" sectionFormat="of" derivedContent="Section 4.6"/></td>
          </tr>
        </tbody>
      </table>
      <t indent="0" pn="section-7-4">Additional subtypes for DEV URNs can be defined through
  Specification Required or IESG Approval <xref target="RFC8126" format="default" sectionFormat="of" derivedContent="RFC8126"/>. These allocations are appropriate when there is
  a new namespace of some type of device identifier that is defined in
 a stable fashion and has a publicly available specification.</t>
      <t indent="0" pn="section-7-5">Note that the organization (<xref target="org" format="default" sectionFormat="of" derivedContent="Section 4.3"/>) device
  identifiers can also be used in some cases, at least as a temporary
  measure. It is preferable, however, that long-term usage of a
  broadly employed device identifier be registered with IETF rather
  than used through the organization device identifier type.</t>
    </section>
  </middle>
  <back>
    <displayreference target="I-D.ietf-core-resource-directory" to="CoRE-RD"/>
    <references pn="section-8">
      <name slugifiedName="name-references">References</name>
      <references pn="section-8.1">
        <name slugifiedName="name-normative-references">Normative References</name>
        <reference anchor="IEEE.EUI64" target="https://standards.ieee.org/content/dam/ieee-standards/standards/web/documents/tutorials/eui.pdf" quoteTitle="true" derivedAnchor="IEEE.EUI64">
          <front>
            <title>Guidelines for Use of Extended Unique Identifier (EUI), Organizationally Unique Identifier (OUI), and Company ID (CID)</title>
            <author>
              <organization showOnFrontPage="true">IEEE</organization>
            </author>
            <date month="August" year="2017"/>
          </front>
        </reference>
        <reference anchor="OW" target="https://www.maximintegrated.com/en/design/technical-documents/tutorials/1/1796.html" quoteTitle="true" derivedAnchor="OW">
          <front>
            <title>Guide to 1-Wire Communication</title>
            <author>
              <organization showOnFrontPage="true">Maxim</organization>
            </author>
            <date month="June" year="2008"/>
          </front>
        </reference>
        <reference anchor="RFC2119" target="https://www.rfc-editor.org/info/rfc2119" quoteTitle="true" derivedAnchor="RFC2119">
          <front>
            <title>Key words for use in RFCs to Indicate Requirement Levels</title>
            <author initials="S." surname="Bradner" fullname="S. Bradner">
              <organization showOnFrontPage="true"/>
            </author>
            <date year="1997" month="March"/>
            <abstract>
              <t indent="0">In many standards track documents several words are used to signify the requirements in the specification.  These words are often capitalized. This document defines these words as they should be interpreted in IETF documents.  This document specifies an Internet Best Current Practices for the Internet Community, and requests discussion and suggestions for improvements.</t>
            </abstract>
          </front>
          <seriesInfo name="BCP" value="14"/>
          <seriesInfo name="RFC" value="2119"/>
          <seriesInfo name="DOI" value="10.17487/RFC2119"/>
        </reference>
        <reference anchor="RFC2578" target="https://www.rfc-editor.org/info/rfc2578" quoteTitle="true" derivedAnchor="RFC2578">
          <front>
            <title>Structure of Management Information Version 2 (SMIv2)</title>
            <author initials="K." surname="McCloghrie" fullname="K. McCloghrie" role="editor">
              <organization showOnFrontPage="true"/>
            </author>
            <author initials="D." surname="Perkins" fullname="D. Perkins" role="editor">
              <organization showOnFrontPage="true"/>
            </author>
            <author initials="J." surname="Schoenwaelder" fullname="J. Schoenwaelder" role="editor">
              <organization showOnFrontPage="true"/>
            </author>
            <date year="1999" month="April"/>
            <abstract>
              <t indent="0">It is the purpose of this document, the Structure of Management Information Version 2 (SMIv2), to define that adapted subset, and to assign a set of associated administrative values.  [STANDARDS-TRACK]</t>
            </abstract>
          </front>
          <seriesInfo name="STD" value="58"/>
          <seriesInfo name="RFC" value="2578"/>
          <seriesInfo name="DOI" value="10.17487/RFC2578"/>
        </reference>
        <reference anchor="RFC3986" target="https://www.rfc-editor.org/info/rfc3986" quoteTitle="true" derivedAnchor="RFC3986">
          <front>
            <title>Uniform Resource Identifier (URI): Generic Syntax</title>
            <author initials="T." surname="Berners-Lee" fullname="T. Berners-Lee">
              <organization showOnFrontPage="true"/>
            </author>
            <author initials="R." surname="Fielding" fullname="R. Fielding">
              <organization showOnFrontPage="true"/>
            </author>
            <author initials="L." surname="Masinter" fullname="L. Masinter">
              <organization showOnFrontPage="true"/>
            </author>
            <date year="2005" month="January"/>
            <abstract>
              <t indent="0">A Uniform Resource Identifier (URI) is a compact sequence of characters that identifies an abstract or physical resource.  This specification defines the generic URI syntax and a process for resolving URI references that might be in relative form, along with guidelines and security considerations for the use of URIs on the Internet.  The URI syntax defines a grammar that is a superset of all valid URIs, allowing an implementation to parse the common components of a URI reference without knowing the scheme-specific requirements of every possible identifier.  This specification does not define a generative grammar for URIs; that task is performed by the individual specifications of each URI scheme.  [STANDARDS-TRACK]</t>
            </abstract>
          </front>
          <seriesInfo name="STD" value="66"/>
          <seriesInfo name="RFC" value="3986"/>
          <seriesInfo name="DOI" value="10.17487/RFC3986"/>
        </reference>
        <reference anchor="RFC5234" target="https://www.rfc-editor.org/info/rfc5234" quoteTitle="true" derivedAnchor="RFC5234">
          <front>
            <title>Augmented BNF for Syntax Specifications: ABNF</title>
            <author initials="D." surname="Crocker" fullname="D. Crocker" role="editor">
              <organization showOnFrontPage="true"/>
            </author>
            <author initials="P." surname="Overell" fullname="P. Overell">
              <organization showOnFrontPage="true"/>
            </author>
            <date year="2008" month="January"/>
            <abstract>
              <t indent="0">Internet technical specifications often need to define a formal syntax.  Over the years, a modified version of Backus-Naur Form (BNF), called Augmented BNF (ABNF), has been popular among many Internet specifications.  The current specification documents ABNF. It balances compactness and simplicity with reasonable representational power.  The differences between standard BNF and ABNF involve naming rules, repetition, alternatives, order-independence, and value ranges.  This specification also supplies additional rule definitions and encoding for a core lexical analyzer of the type common to several Internet specifications.  [STANDARDS-TRACK]</t>
            </abstract>
          </front>
          <seriesInfo name="STD" value="68"/>
          <seriesInfo name="RFC" value="5234"/>
          <seriesInfo name="DOI" value="10.17487/RFC5234"/>
        </reference>
        <reference anchor="RFC8126" target="https://www.rfc-editor.org/info/rfc8126" quoteTitle="true" derivedAnchor="RFC8126">
          <front>
            <title>Guidelines for Writing an IANA Considerations Section in RFCs</title>
            <author initials="M." surname="Cotton" fullname="M. Cotton">
              <organization showOnFrontPage="true"/>
            </author>
            <author initials="B." surname="Leiba" fullname="B. Leiba">
              <organization showOnFrontPage="true"/>
            </author>
            <author initials="T." surname="Narten" fullname="T. Narten">
              <organization showOnFrontPage="true"/>
            </author>
            <date year="2017" month="June"/>
            <abstract>
              <t indent="0">Many protocols make use of points of extensibility that use constants to identify various protocol parameters.  To ensure that the values in these fields do not have conflicting uses and to promote interoperability, their allocations are often coordinated by a central record keeper.  For IETF protocols, that role is filled by the Internet Assigned Numbers Authority (IANA).</t>
              <t indent="0">To make assignments in a given registry prudently, guidance describing the conditions under which new values should be assigned, as well as when and how modifications to existing values can be made, is needed.  This document defines a framework for the documentation of these guidelines by specification authors, in order to assure that the provided guidance for the IANA Considerations is clear and addresses the various issues that are likely in the operation of a registry.</t>
              <t indent="0">This is the third edition of this document; it obsoletes RFC 5226.</t>
            </abstract>
          </front>
          <seriesInfo name="BCP" value="26"/>
          <seriesInfo name="RFC" value="8126"/>
          <seriesInfo name="DOI" value="10.17487/RFC8126"/>
        </reference>
        <reference anchor="RFC8141" target="https://www.rfc-editor.org/info/rfc8141" quoteTitle="true" derivedAnchor="RFC8141">
          <front>
            <title>Uniform Resource Names (URNs)</title>
            <author initials="P." surname="Saint-Andre" fullname="P. Saint-Andre">
              <organization showOnFrontPage="true"/>
            </author>
            <author initials="J." surname="Klensin" fullname="J. Klensin">
              <organization showOnFrontPage="true"/>
            </author>
            <date year="2017" month="April"/>
            <abstract>
              <t indent="0">A Uniform Resource Name (URN) is a Uniform Resource Identifier (URI) that is assigned under the "urn" URI scheme and a particular URN namespace, with the intent that the URN will be a persistent, location-independent resource identifier.  With regard to URN syntax, this document defines the canonical syntax for URNs (in a way that is consistent with URI syntax), specifies methods for determining URN-equivalence, and discusses URI conformance.  With regard to URN namespaces, this document specifies a method for defining a URN namespace and associating it with a namespace identifier, and it describes procedures for registering namespace identifiers with the Internet Assigned Numbers Authority (IANA).  This document obsoletes both RFCs 2141 and 3406.</t>
            </abstract>
          </front>
          <seriesInfo name="RFC" value="8141"/>
          <seriesInfo name="DOI" value="10.17487/RFC8141"/>
        </reference>
        <reference anchor="RFC8174" target="https://www.rfc-editor.org/info/rfc8174" quoteTitle="true" derivedAnchor="RFC8174">
          <front>
            <title>Ambiguity of Uppercase vs Lowercase in RFC 2119 Key Words</title>
            <author initials="B." surname="Leiba" fullname="B. Leiba">
              <organization showOnFrontPage="true"/>
            </author>
            <date year="2017" month="May"/>
            <abstract>
              <t indent="0">RFC 2119 specifies common key words that may be used in protocol  specifications.  This document aims to reduce the ambiguity by clarifying that only UPPERCASE usage of the key words have the  defined special meanings.</t>
            </abstract>
          </front>
          <seriesInfo name="BCP" value="14"/>
          <seriesInfo name="RFC" value="8174"/>
          <seriesInfo name="DOI" value="10.17487/RFC8174"/>
        </reference>
      </references>
      <references pn="section-8.2">
        <name slugifiedName="name-informative-references">Informative References</name>
        <reference anchor="I-D.ietf-core-resource-directory" quoteTitle="true" target="https://datatracker.ietf.org/doc/html/draft-ietf-core-resource-directory-28" derivedAnchor="CoRE-RD">
          <front>
            <title>CoRE Resource Directory</title>
            <author initials="C" surname="Amsüss" fullname="Christian Amsüss" role="editor">
              <organization showOnFrontPage="true"/>
            </author>
            <author initials="Z" surname="Shelby" fullname="Zach Shelby">
              <organization showOnFrontPage="true"/>
            </author>
            <author initials="M" surname="Koster" fullname="Michael Koster">
              <organization showOnFrontPage="true"/>
            </author>
            <author initials="C" surname="Bormann" fullname="Carsten Bormann">
              <organization showOnFrontPage="true"/>
            </author>
            <author initials="P" surname="van der Stok" fullname="Peter van der Stok">
              <organization showOnFrontPage="true"/>
            </author>
            <date month="March" day="7" year="2021"/>
          </front>
          <seriesInfo name="Internet-Draft" value="draft-ietf-core-resource-directory-28"/>
          <refcontent>Work in Progress</refcontent>
        </reference>
        <reference anchor="LwM2M" target="https://www.openmobilealliance.org/release/LightweightM2M/V1_2-20190124-C/OMA-RD-LightweightM2M-V1_2-20190124-C.pdf" quoteTitle="true" derivedAnchor="LwM2M">
          <front>
            <title>OMA Lightweight Machine to Machine Requirements</title>
            <author fullname="Open Mobile Alliance"/>
            <date year="2019" month="January"/>
          </front>
          <seriesInfo name="OMA Standard" value="Candidate Version 1.2"/>
        </reference>
        <reference anchor="RFC3261" target="https://www.rfc-editor.org/info/rfc3261" quoteTitle="true" derivedAnchor="RFC3261">
          <front>
            <title>SIP: Session Initiation Protocol</title>
            <author initials="J." surname="Rosenberg" fullname="J. Rosenberg">
              <organization showOnFrontPage="true"/>
            </author>
            <author initials="H." surname="Schulzrinne" fullname="H. Schulzrinne">
              <organization showOnFrontPage="true"/>
            </author>
            <author initials="G." surname="Camarillo" fullname="G. Camarillo">
              <organization showOnFrontPage="true"/>
            </author>
            <author initials="A." surname="Johnston" fullname="A. Johnston">
              <organization showOnFrontPage="true"/>
            </author>
            <author initials="J." surname="Peterson" fullname="J. Peterson">
              <organization showOnFrontPage="true"/>
            </author>
            <author initials="R." surname="Sparks" fullname="R. Sparks">
              <organization showOnFrontPage="true"/>
            </author>
            <author initials="M." surname="Handley" fullname="M. Handley">
              <organization showOnFrontPage="true"/>
            </author>
            <author initials="E." surname="Schooler" fullname="E. Schooler">
              <organization showOnFrontPage="true"/>
            </author>
            <date year="2002" month="June"/>
            <abstract>
              <t indent="0">This document describes Session Initiation Protocol (SIP), an application-layer control (signaling) protocol for creating, modifying, and terminating sessions with one or more participants.  These sessions include Internet telephone calls, multimedia distribution, and multimedia conferences.  [STANDARDS-TRACK]</t>
            </abstract>
          </front>
          <seriesInfo name="RFC" value="3261"/>
          <seriesInfo name="DOI" value="10.17487/RFC3261"/>
        </reference>
        <reference anchor="RFC4122" target="https://www.rfc-editor.org/info/rfc4122" quoteTitle="true" derivedAnchor="RFC4122">
          <front>
            <title>A Universally Unique IDentifier (UUID) URN Namespace</title>
            <author initials="P." surname="Leach" fullname="P. Leach">
              <organization showOnFrontPage="true"/>
            </author>
            <author initials="M." surname="Mealling" fullname="M. Mealling">
              <organization showOnFrontPage="true"/>
            </author>
            <author initials="R." surname="Salz" fullname="R. Salz">
              <organization showOnFrontPage="true"/>
            </author>
            <date year="2005" month="July"/>
            <abstract>
              <t indent="0">This specification defines a Uniform Resource Name namespace for UUIDs (Universally Unique IDentifier), also known as GUIDs (Globally Unique IDentifier).  A UUID is 128 bits long, and can guarantee uniqueness across space and time.  UUIDs were originally used in the Apollo Network Computing System and later in the Open Software Foundation\'s (OSF) Distributed Computing Environment (DCE), and then in Microsoft Windows platforms.</t>
              <t indent="0">This specification is derived from the DCE specification with the kind permission of the OSF (now known as The Open Group).  Information from earlier versions of the DCE specification have been incorporated into this document.  [STANDARDS-TRACK]</t>
            </abstract>
          </front>
          <seriesInfo name="RFC" value="4122"/>
          <seriesInfo name="DOI" value="10.17487/RFC4122"/>
        </reference>
        <reference anchor="RFC5612" target="https://www.rfc-editor.org/info/rfc5612" quoteTitle="true" derivedAnchor="RFC5612">
          <front>
            <title>Enterprise Number for Documentation Use</title>
            <author initials="P." surname="Eronen" fullname="P. Eronen">
              <organization showOnFrontPage="true"/>
            </author>
            <author initials="D." surname="Harrington" fullname="D. Harrington">
              <organization showOnFrontPage="true"/>
            </author>
            <date year="2009" month="August"/>
            <abstract>
              <t indent="0">This document describes an Enterprise Number (also known as SMI Network Management Private Enterprise Code) for use in documentation.   This memo provides information for the Internet community.</t>
            </abstract>
          </front>
          <seriesInfo name="RFC" value="5612"/>
          <seriesInfo name="DOI" value="10.17487/RFC5612"/>
        </reference>
        <reference anchor="RFC6920" target="https://www.rfc-editor.org/info/rfc6920" quoteTitle="true" derivedAnchor="RFC6920">
          <front>
            <title>Naming Things with Hashes</title>
            <author initials="S." surname="Farrell" fullname="S. Farrell">
              <organization showOnFrontPage="true"/>
            </author>
            <author initials="D." surname="Kutscher" fullname="D. Kutscher">
              <organization showOnFrontPage="true"/>
            </author>
            <author initials="C." surname="Dannewitz" fullname="C. Dannewitz">
              <organization showOnFrontPage="true"/>
            </author>
            <author initials="B." surname="Ohlman" fullname="B. Ohlman">
              <organization showOnFrontPage="true"/>
            </author>
            <author initials="A." surname="Keranen" fullname="A. Keranen">
              <organization showOnFrontPage="true"/>
            </author>
            <author initials="P." surname="Hallam-Baker" fullname="P. Hallam-Baker">
              <organization showOnFrontPage="true"/>
            </author>
            <date year="2013" month="April"/>
            <abstract>
              <t indent="0">This document defines a set of ways to identify a thing (a digital object in this case) using the output from a hash function.  It specifies a new URI scheme for this purpose, a way to map these to HTTP URLs, and binary and human-speakable formats for these names. The various formats are designed to support, but not require, a strong link to the referenced object, such that the referenced object may be authenticated to the same degree as the reference to it.  The reason for this work is to standardise current uses of hash outputs in URLs and to support new information-centric applications and other uses of hash outputs in protocols.</t>
            </abstract>
          </front>
          <seriesInfo name="RFC" value="6920"/>
          <seriesInfo name="DOI" value="10.17487/RFC6920"/>
        </reference>
        <reference anchor="RFC7230" target="https://www.rfc-editor.org/info/rfc7230" quoteTitle="true" derivedAnchor="RFC7230">
          <front>
            <title>Hypertext Transfer Protocol (HTTP/1.1): Message Syntax and Routing</title>
            <author initials="R." surname="Fielding" fullname="R. Fielding" role="editor">
              <organization showOnFrontPage="true"/>
            </author>
            <author initials="J." surname="Reschke" fullname="J. Reschke" role="editor">
              <organization showOnFrontPage="true"/>
            </author>
            <date year="2014" month="June"/>
            <abstract>
              <t indent="0">The Hypertext Transfer Protocol (HTTP) is a stateless application-level protocol for distributed, collaborative, hypertext information systems.  This document provides an overview of HTTP architecture and its associated terminology, defines the "http" and "https" Uniform Resource Identifier (URI) schemes, defines the HTTP/1.1 message syntax and parsing requirements, and describes related security concerns for implementations.</t>
            </abstract>
          </front>
          <seriesInfo name="RFC" value="7230"/>
          <seriesInfo name="DOI" value="10.17487/RFC7230"/>
        </reference>
        <reference anchor="RFC7252" target="https://www.rfc-editor.org/info/rfc7252" quoteTitle="true" derivedAnchor="RFC7252">
          <front>
            <title>The Constrained Application Protocol (CoAP)</title>
            <author initials="Z." surname="Shelby" fullname="Z. Shelby">
              <organization showOnFrontPage="true"/>
            </author>
            <author initials="K." surname="Hartke" fullname="K. Hartke">
              <organization showOnFrontPage="true"/>
            </author>
            <author initials="C." surname="Bormann" fullname="C. Bormann">
              <organization showOnFrontPage="true"/>
            </author>
            <date year="2014" month="June"/>
            <abstract>
              <t indent="0">The Constrained Application Protocol (CoAP) is a specialized web transfer protocol for use with constrained nodes and constrained (e.g., low-power, lossy) networks.  The nodes often have 8-bit microcontrollers with small amounts of ROM and RAM, while constrained networks such as IPv6 over Low-Power Wireless Personal Area Networks (6LoWPANs) often have high packet error rates and a typical throughput of 10s of kbit/s.  The protocol is designed for machine- to-machine (M2M) applications such as smart energy and building automation.</t>
              <t indent="0">CoAP provides a request/response interaction model between application endpoints, supports built-in discovery of services and resources, and includes key concepts of the Web such as URIs and Internet media types.  CoAP is designed to easily interface with HTTP for integration with the Web while meeting specialized requirements such as multicast support, very low overhead, and simplicity for constrained environments.</t>
            </abstract>
          </front>
          <seriesInfo name="RFC" value="7252"/>
          <seriesInfo name="DOI" value="10.17487/RFC7252"/>
        </reference>
        <reference anchor="RFC7254" target="https://www.rfc-editor.org/info/rfc7254" quoteTitle="true" derivedAnchor="RFC7254">
          <front>
            <title>A Uniform Resource Name Namespace for the Global System for Mobile Communications Association (GSMA) and the International Mobile station Equipment Identity (IMEI)</title>
            <author initials="M." surname="Montemurro" fullname="M. Montemurro" role="editor">
              <organization showOnFrontPage="true"/>
            </author>
            <author initials="A." surname="Allen" fullname="A. Allen">
              <organization showOnFrontPage="true"/>
            </author>
            <author initials="D." surname="McDonald" fullname="D. McDonald">
              <organization showOnFrontPage="true"/>
            </author>
            <author initials="P." surname="Gosden" fullname="P. Gosden">
              <organization showOnFrontPage="true"/>
            </author>
            <date year="2014" month="May"/>
            <abstract>
              <t indent="0">This specification defines a Uniform Resource Name (URN) namespace for the Global System for Mobile Communications Association (GSMA) and a Namespace Specific String (NSS) for the International Mobile station Equipment Identity (IMEI), as well as an associated parameter for the International Mobile station Equipment Identity and Software Version number (IMEISV).  The IMEI and IMEISV were introduced as part of the specification for the GSM and are also now incorporated by the 3rd Generation Partnership Project (3GPP) as part of the 3GPP specification for GSM, Universal Mobile Telecommunications System (UMTS), and 3GPP Long Term Evolution (LTE) networks.  The IMEI and IMEISV are used to uniquely identify Mobile Equipment within these systems and are managed by the GSMA.  URNs from this namespace almost always contain personally identifiable information and need to be treated accordingly.</t>
            </abstract>
          </front>
          <seriesInfo name="RFC" value="7254"/>
          <seriesInfo name="DOI" value="10.17487/RFC7254"/>
        </reference>
        <reference anchor="RFC7405" target="https://www.rfc-editor.org/info/rfc7405" quoteTitle="true" derivedAnchor="RFC7405">
          <front>
            <title>Case-Sensitive String Support in ABNF</title>
            <author initials="P." surname="Kyzivat" fullname="P. Kyzivat">
              <organization showOnFrontPage="true"/>
            </author>
            <date year="2014" month="December"/>
            <abstract>
              <t indent="0">This document extends the base definition of ABNF (Augmented Backus-Naur Form) to include a way to specify US-ASCII string literals that are matched in a case-sensitive manner.</t>
            </abstract>
          </front>
          <seriesInfo name="RFC" value="7405"/>
          <seriesInfo name="DOI" value="10.17487/RFC7405"/>
        </reference>
        <reference anchor="RFC7540" target="https://www.rfc-editor.org/info/rfc7540" quoteTitle="true" derivedAnchor="RFC7540">
          <front>
            <title>Hypertext Transfer Protocol Version 2 (HTTP/2)</title>
            <author initials="M." surname="Belshe" fullname="M. Belshe">
              <organization showOnFrontPage="true"/>
            </author>
            <author initials="R." surname="Peon" fullname="R. Peon">
              <organization showOnFrontPage="true"/>
            </author>
            <author initials="M." surname="Thomson" fullname="M. Thomson" role="editor">
              <organization showOnFrontPage="true"/>
            </author>
            <date year="2015" month="May"/>
            <abstract>
              <t indent="0">This specification describes an optimized expression of the semantics of the Hypertext Transfer Protocol (HTTP), referred to as HTTP version 2 (HTTP/2).  HTTP/2 enables a more efficient use of network resources and a reduced perception of latency by introducing header field compression and allowing multiple concurrent exchanges on the same connection.  It also introduces unsolicited push of representations from servers to clients.</t>
              <t indent="0">This specification is an alternative to, but does not obsolete, the HTTP/1.1 message syntax.  HTTP's existing semantics remain unchanged.</t>
            </abstract>
          </front>
          <seriesInfo name="RFC" value="7540"/>
          <seriesInfo name="DOI" value="10.17487/RFC7540"/>
        </reference>
        <reference anchor="RFC7721" target="https://www.rfc-editor.org/info/rfc7721" quoteTitle="true" derivedAnchor="RFC7721">
          <front>
            <title>Security and Privacy Considerations for IPv6 Address Generation Mechanisms</title>
            <author initials="A." surname="Cooper" fullname="A. Cooper">
              <organization showOnFrontPage="true"/>
            </author>
            <author initials="F." surname="Gont" fullname="F. Gont">
              <organization showOnFrontPage="true"/>
            </author>
            <author initials="D." surname="Thaler" fullname="D. Thaler">
              <organization showOnFrontPage="true"/>
            </author>
            <date year="2016" month="March"/>
            <abstract>
              <t indent="0">This document discusses privacy and security considerations for several IPv6 address generation mechanisms, both standardized and non-standardized.  It evaluates how different mechanisms mitigate different threats and the trade-offs that implementors, developers, and users face in choosing different addresses or address generation mechanisms.</t>
            </abstract>
          </front>
          <seriesInfo name="RFC" value="7721"/>
          <seriesInfo name="DOI" value="10.17487/RFC7721"/>
        </reference>
        <reference anchor="RFC8259" target="https://www.rfc-editor.org/info/rfc8259" quoteTitle="true" derivedAnchor="RFC8259">
          <front>
            <title>The JavaScript Object Notation (JSON) Data Interchange Format</title>
            <author initials="T." surname="Bray" fullname="T. Bray" role="editor">
              <organization showOnFrontPage="true"/>
            </author>
            <date year="2017" month="December"/>
            <abstract>
              <t indent="0">JavaScript Object Notation (JSON) is a lightweight, text-based, language-independent data interchange format.  It was derived from the ECMAScript Programming Language Standard.  JSON defines a small set of formatting rules for the portable representation of structured data.</t>
              <t indent="0">This document removes inconsistencies with other specifications of JSON, repairs specification errors, and offers experience-based interoperability guidance.</t>
            </abstract>
          </front>
          <seriesInfo name="STD" value="90"/>
          <seriesInfo name="RFC" value="8259"/>
          <seriesInfo name="DOI" value="10.17487/RFC8259"/>
        </reference>
        <reference anchor="RFC8428" target="https://www.rfc-editor.org/info/rfc8428" quoteTitle="true" derivedAnchor="RFC8428">
          <front>
            <title>Sensor Measurement Lists (SenML)</title>
            <author initials="C." surname="Jennings" fullname="C. Jennings">
              <organization showOnFrontPage="true"/>
            </author>
            <author initials="Z." surname="Shelby" fullname="Z. Shelby">
              <organization showOnFrontPage="true"/>
            </author>
            <author initials="J." surname="Arkko" fullname="J. Arkko">
              <organization showOnFrontPage="true"/>
            </author>
            <author initials="A." surname="Keranen" fullname="A. Keranen">
              <organization showOnFrontPage="true"/>
            </author>
            <author initials="C." surname="Bormann" fullname="C. Bormann">
              <organization showOnFrontPage="true"/>
            </author>
            <date year="2018" month="August"/>
            <abstract>
              <t indent="0">This specification defines a format for representing simple sensor measurements and device parameters in Sensor Measurement Lists (SenML).  Representations are defined in JavaScript Object Notation (JSON), Concise Binary Object Representation (CBOR), Extensible Markup Language (XML), and Efficient XML Interchange (EXI), which share the common SenML data model.  A simple sensor, such as a temperature sensor, could use one of these media types in protocols such as HTTP or the Constrained Application Protocol (CoAP) to transport the measurements of the sensor or to be configured.</t>
            </abstract>
          </front>
          <seriesInfo name="RFC" value="8428"/>
          <seriesInfo name="DOI" value="10.17487/RFC8428"/>
        </reference>
        <reference anchor="RFC8464" target="https://www.rfc-editor.org/info/rfc8464" quoteTitle="true" derivedAnchor="RFC8464">
          <front>
            <title>A URN Namespace for Device Identity and Mobile Equipment Identity (MEID)</title>
            <author initials="R." surname="Atarius" fullname="R. Atarius">
              <organization showOnFrontPage="true"/>
            </author>
            <date year="2018" month="September"/>
            <abstract>
              <t indent="0">This document defines a Uniform Resource Name (URN) namespace for the Third Generation Partnership Project 2 (3GPP2) and a Namespace Specific String (NSS) for the Mobile Equipment Identity (MEID).  The structure of an MEID is 15 hexadecimal digits long and is defined in the 3GPP2 to uniquely identify each individual mobile equipment (e.g., a handset or mobile phone).  The 3GPP2 has a requirement to be able to use an MEID as a URN.  This document fulfills that requirement.</t>
            </abstract>
          </front>
          <seriesInfo name="RFC" value="8464"/>
          <seriesInfo name="DOI" value="10.17487/RFC8464"/>
        </reference>
        <reference anchor="W3C.REC-xml-19980210" target="http://www.w3.org/TR/1998/REC-xml-19980210" quoteTitle="true" derivedAnchor="W3C.REC-xml-19980210">
          <front>
            <title>Extensible Markup Language (XML) 1.0</title>
            <author initials="C." surname="Sperberg-McQueen" fullname="C. M. Sperberg-McQueen">
              <organization showOnFrontPage="true"/>
            </author>
            <author initials="T." surname="Bray" fullname="Tim Bray">
              <organization showOnFrontPage="true"/>
            </author>
            <author initials="J." surname="Paoli" fullname="Jean Paoli">
              <organization showOnFrontPage="true"/>
            </author>
            <date month="February" year="1998"/>
          </front>
          <seriesInfo name="W3C" value="Recommendation"/>
        </reference>
      </references>
    </references>
    <section numbered="false" toc="include" removeInRFC="false" pn="section-appendix.a">
      <name slugifiedName="name-acknowledgments">Acknowledgments</name>
      <t indent="0" pn="section-appendix.a-1">The authors would like to thank <contact fullname="Ari Keränen"/>, <contact fullname="Stephen Farrell"/>,
  <contact fullname="Christer Holmberg"/>, <contact fullname="Peter Saint-Andre"/>, <contact fullname="Wouter Cloetens"/>, <contact fullname="Jaime   Jimenez"/>, <contact fullname="Joseph Knapp"/>, <contact fullname="Padmakumar Subramani"/>, <contact fullname="Mert Ocak"/>, <contact fullname="Hannes   Tschofenig"/>, <contact fullname="Jim Schaad"/>, <contact fullname="Thomas Fossati"/>, <contact fullname="Carsten Bormann"/>, <contact fullname="Marco   Tiloca"/>, <contact fullname="Barry Leiba"/>, <contact fullname="Amanda Baber"/>, <contact fullname="Juha Hakala"/>, <contact fullname="Dale Worley"/>, <contact fullname="Warren   Kumari"/>, <contact fullname="Benjamin Kaduk"/>, <contact fullname="Brian Weis"/>, <contact fullname="John Klensin"/>, <contact fullname="Dave Thaler"/>, <contact fullname="Russ   Housley"/>, <contact fullname="Dan Romascanu"/>, <contact fullname="Éric Vyncke"/>, <contact fullname="Roman Danyliw"/>, and <contact fullname="Ahmad   Muhanna"/> for their feedback and interesting discussions in this problem
  space. We would also like to note prior documents that focused on
  specific device identifiers, such as <xref target="RFC7254" format="default" sectionFormat="of" derivedContent="RFC7254"/> and
  <xref target="RFC8464" format="default" sectionFormat="of" derivedContent="RFC8464"/>.</t>
    </section>
    <section anchor="authors-addresses" numbered="false" removeInRFC="false" toc="include" pn="section-appendix.b">
      <name slugifiedName="name-authors-addresses">Authors' Addresses</name>
      <author initials="J." surname="Arkko" fullname="Jari Arkko">
        <organization showOnFrontPage="true">Ericsson</organization>
        <address>
          <postal>
            <street/>
            <city>Jorvas</city>
            <code>02420</code>
            <country>Finland</country>
          </postal>
          <email>jari.arkko@piuha.net</email>
        </address>
      </author>
      <author fullname="Cullen Jennings" initials="C." surname="Jennings">
        <organization showOnFrontPage="true">Cisco</organization>
        <address>
          <postal>
            <street>170 West Tasman Drive</street>
            <city>San Jose</city>
            <region>CA</region>
            <code>95134</code>
            <country>United States of America</country>
          </postal>
          <phone>+1 408 421-9990</phone>
          <email>fluffy@iii.ca</email>
        </address>
      </author>
      <author initials="Z." surname="Shelby" fullname="Zach Shelby">
        <organization showOnFrontPage="true">Edge Impulse</organization>
        <address>
          <postal>
            <street>3031 Tisch Way</street>
            <city>San Jose</city>
            <region>CA</region>
            <code>95128</code>
            <country>United States of America</country>
          </postal>
          <email>zach@edgeimpulse.com</email>
        </address>
      </author>
    </section>
  </back>
</rfc>
