<?xml version='1.0' encoding='utf-8'?>
<!DOCTYPE rfc [
  <!ENTITY nbsp    "&#160;">
  <!ENTITY zwsp   "&#8203;">
  <!ENTITY nbhy   "&#8209;">
  <!ENTITY wj     "&#8288;">
]>
<?xml-stylesheet type="text/xsl" href="rfc2629.xslt" ?>
<!-- generated by https://github.com/cabo/kramdown-rfc version 1.7.25 (Ruby 3.2.2) -->
<rfc xmlns:xi="http://www.w3.org/2001/XInclude" ipr="trust200902" docName="draft-ietf-core-cf-reg-update-06" category="std" consensus="true" submissionType="IETF" updates="7252" tocInclude="true" sortRefs="true" symRefs="true" version="3">
  <!-- xml2rfc v2v3 conversion 3.28.0 -->
  <front>
    <title abbrev="CoAP Content-Format Registrations Update">Update to the IANA CoAP Content-Formats Registration Procedures</title>
    <seriesInfo name="Internet-Draft" value="draft-ietf-core-cf-reg-update-06"/>
    <author fullname="Thomas Fossati">
      <organization>Linaro</organization>
      <address>
        <email>thomas.fossati@linaro.org</email>
      </address>
    </author>
    <author fullname="Esko Dijk">
      <organization>IoTconsultancy.nl</organization>
      <address>
        <email>esko.dijk@iotconsultancy.nl</email>
      </address>
    </author>
    <date year="2025" month="March" day="12"/>
    <area>Web and Internet Transport</area>
    <workgroup>Constrained RESTful Environments</workgroup>
    <keyword>IANA</keyword>
    <keyword>registration</keyword>
    <keyword>update</keyword>
    <keyword>CoAP</keyword>
    <keyword>Content-Format</keyword>
    <abstract>
      <?line 56?>

<t>This document updates RFC7252 regarding the registration procedures for the "CoAP Content-Formats" IANA registry, within the "Constrained RESTful Environments (CoRE) Parameters" registry group.
This document also introduces a new column, "Media Type", to the registry.</t>
    </abstract>
    <note removeInRFC="true">
      <name>About This Document</name>
      <t>
        The latest revision of this draft can be found at <eref target="https://core-wg.github.io/cf-reg-update/draft-ietf-core-cf-reg-update.html"/>.
        Status information for this document may be found at <eref target="https://datatracker.ietf.org/doc/draft-ietf-core-cf-reg-update/"/>.
      </t>
      <t>
        Discussion of this document takes place on the
        Constrained RESTful Environments Working Group mailing list (<eref target="mailto:core@ietf.org"/>),
        which is archived at <eref target="https://mailarchive.ietf.org/arch/browse/core/"/>.
        Subscribe at <eref target="https://www.ietf.org/mailman/listinfo/core/"/>.
      </t>
      <t>Source for this draft and an issue tracker can be found at
        <eref target="https://github.com/core-wg/cf-reg-update"/>.</t>
    </note>
  </front>
  <middle>
    <?line 61?>

<section anchor="introduction">
      <name>Introduction</name>
      <t><xref section="12.3" sectionFormat="of" target="RFC7252"/> describes the registration procedures for the "CoAP Content-Formats" IANA registry within the "Constrained RESTful Environments (CoRE) Parameters" registry group <xref target="IANA.core-parameters"/>.
(Note that the columns of this registry have been revised according to <xref target="Err4954"/>.)</t>
      <t>In particular, the text defines the rules for obtaining CoAP Content-Format identifiers from the "IETF Review" or "IESG Approval" range of the registry (256-9999) as well as from the First Come First Served (FCFS) range of the registry (10000-64999).
For the FCFS range, these rules do not involve the Designated Expert (DE) and are managed solely by IANA personnel to finalize the registration.</t>
      <t>Unfortunately, the instructions do not explicitly require checking that the combination of content-type (i.e., media type with optional parameters) and content coding associated with the requested CoAP Content-Format is semantically valid.
This task is generally non-trivial, requires knowledge from multiple documents and technologies, and should not be solely demanded from the registrar.
This lack of guidance may engender confusion in both the registering party and the registrar, and has already led to erroneous registrations.</t>
      <t>In <xref target="iana"/>, this document updates <xref target="RFC7252"/> by modifying the registration procedures for the "CoAP Content-Formats" registry to mitigate the risk of unintentional or malicious errors.
These updates amend the different ranges of the registry, introduce a review procedure to be performed for most ranges of the registry, and allow the registration of temporary Content-Format identifiers.
This document also introduces a new column, "Media Type", to the registry.</t>
    </section>
    <section anchor="conventions-and-definitions">
      <name>Conventions and Definitions</name>
      <t>This document uses the terms "media type", "content coding", "content-type", and "content format" as defined in <xref section="2" sectionFormat="of" target="RFC9193"/>.</t>
    </section>
    <section anchor="examples-for-erroneous-registrations">
      <name>Examples for Erroneous Registrations</name>
      <t>This section provides examples of registration requests for the "CoAP Content-Formats" Registry (as defined in <xref section="12.3" sectionFormat="of" target="RFC7252"/> and revised according to <xref target="Err4954"/>) that are invalid but would be approved under the current procedure.
The checklist defined in <xref target="checks"/> should prevent any of these attempts from succeeding.</t>
      <t>All the example registration requests use a CoAP Content-Format with identifier 64999 in the FCFS range of the "CoAP Content-Formats" registry.</t>
      <t>For each of the following example registration requests, one can create a similar instance where the requested registration is for a CoAP Content-Format identifier within the "IETF Review" or "IESG Approval" range of the registry.
Similarly, such registrations must not be allowed to succeed.</t>
      <section anchor="ex-unknown-mt">
        <name>The Media Type is Unknown</name>
        <t>The registrant requests an FCFS Content-Format ID for an unknown media type:</t>
        <table align="left">
          <name>Attempt at Registering Content-Format for an Unknown Media Type</name>
          <thead>
            <tr>
              <th align="left">Content Type</th>
              <th align="left">Content Coding</th>
              <th align="left">ID</th>
            </tr>
          </thead>
          <tbody>
            <tr>
              <td align="left">application/unknown+cbor</td>
              <td align="left">-</td>
              <td align="left">64999</td>
            </tr>
          </tbody>
        </table>
      </section>
      <section anchor="the-media-type-parameter-is-unknown">
        <name>The Media Type Parameter is Unknown</name>
        <t>The registrant requests an FCFS Content-Format ID for an existing media type with an unknown parameter:</t>
        <table align="left">
          <name>Attempt at Registering Content-Format for Media Type with Unknown Parameter</name>
          <thead>
            <tr>
              <th align="left">Content Type</th>
              <th align="left">Content Coding</th>
              <th align="left">ID</th>
            </tr>
          </thead>
          <tbody>
            <tr>
              <td align="left">application/cose;unknown-parameter=1</td>
              <td align="left">-</td>
              <td align="left">64999</td>
            </tr>
          </tbody>
        </table>
      </section>
      <section anchor="the-media-type-parameter-value-is-invalid">
        <name>The Media Type Parameter Value is Invalid</name>
        <t>The registrant requests an FCFS Content-Format ID for an existing media type with an invalid parameter value:</t>
        <table align="left">
          <name>Attempt at Registering Content-Format for Media Type with Invalid Parameter Value</name>
          <thead>
            <tr>
              <th align="left">Content Type</th>
              <th align="left">Content Coding</th>
              <th align="left">ID</th>
            </tr>
          </thead>
          <tbody>
            <tr>
              <td align="left">application/cose;cose-type=invalid</td>
              <td align="left">-</td>
              <td align="left">64999</td>
            </tr>
          </tbody>
        </table>
      </section>
      <section anchor="the-content-coding-is-unknown">
        <name>The Content Coding is Unknown</name>
        <t>The registrant requests an FCFS Content-Format ID for an existing media type with an unknown content coding:</t>
        <table align="left">
          <name>Attempt at Registering Content-Format with Unknown Content Coding</name>
          <thead>
            <tr>
              <th align="left">Content Type</th>
              <th align="left">Content Coding</th>
              <th align="left">ID</th>
            </tr>
          </thead>
          <tbody>
            <tr>
              <td align="left">application/senml+cbor</td>
              <td align="left">inflate</td>
              <td align="left">64999</td>
            </tr>
          </tbody>
        </table>
      </section>
      <section anchor="duplicate-entry-with-default-media-type-parameters">
        <name>Duplicate Entry with Default Media Type Parameters</name>
        <t>The registrant requests an FCFS Content-Format ID for a media type that includes a parameter set to its default value, while
a (hypothetical) Content-Format ID 64900 is already registered for this media type without that parameter.
As a result, this could lead to the creation of two separate Content-Format IDs for the same "logical" entry.</t>
        <table align="left">
          <name>Attempt at Registering an Equivalent Logical Entry with a Different Content-Format ID (1)</name>
          <thead>
            <tr>
              <th align="left">Content Type</th>
              <th align="left">Content Coding</th>
              <th align="left">ID</th>
            </tr>
          </thead>
          <tbody>
            <tr>
              <td align="left">application/my</td>
              <td align="left">-</td>
              <td align="left">64900</td>
            </tr>
            <tr>
              <td align="left">application/my;parameter=default</td>
              <td align="left">-</td>
              <td align="left">64999</td>
            </tr>
          </tbody>
        </table>
      </section>
      <section anchor="duplicate-entry-with-default-content-coding">
        <name>Duplicate Entry with Default Content Coding</name>
        <t>The registrant requests an FCFS Content-Format ID for the "identity" Content Coding, which is the default coding.
If accepted, this request would duplicate an entry with (hypothetical)
Content-Format ID 64900 where the "Content Coding" field is left empty.</t>
        <table align="left">
          <name>Attempt at Registering an Equivalent Logical Entry with a Different Content-Format ID (2)</name>
          <thead>
            <tr>
              <th align="left">Content Type</th>
              <th align="left">Content Coding</th>
              <th align="left">ID</th>
            </tr>
          </thead>
          <tbody>
            <tr>
              <td align="left">application/my</td>
              <td align="left">-</td>
              <td align="left">64900</td>
            </tr>
            <tr>
              <td align="left">application/my</td>
              <td align="left">identity</td>
              <td align="left">64999</td>
            </tr>
          </tbody>
        </table>
      </section>
      <section anchor="duplicate-entry-with-equivalent-parameter">
        <name>Duplicate Entry with Equivalent Parameter</name>
        <t>The registrant requests an FCFS Content-Format ID for a media type that includes a parameter.
The value of this parameter appears distinct from that of a (hypothetical) previously registered Content-Format ID 64900 that also includes this parameter.
However, the semantics of the parameter value are identical to the existing registration.</t>
        <t>In this example, the <tt>eat_profile</tt> parameter value (which can be any URI) is set as a Uniform Resource Name (URN) <xref target="RFC8141"/>.
Since for URNs, the Namespace Identifier (<tt>foo</tt> in the example) is defined as case insensitive, the two registrations are semantically identical.</t>
        <table align="left">
          <name>Attempt at Registering an Equivalent Logical Entry with a Different Content-Format ID (3)</name>
          <thead>
            <tr>
              <th align="left">Content Type</th>
              <th align="left">Content Coding</th>
              <th align="left">ID</th>
            </tr>
          </thead>
          <tbody>
            <tr>
              <td align="left">application/eat+cwt;eat_profile="urn:foo:1"</td>
              <td align="left">-</td>
              <td align="left">64900</td>
            </tr>
            <tr>
              <td align="left">application/eat+cwt;eat_profile="urn:FOO:1"</td>
              <td align="left">-</td>
              <td align="left">64999</td>
            </tr>
          </tbody>
        </table>
      </section>
    </section>
    <section anchor="updates">
      <name>Updates to RFC 7252</name>
      <t>This section updates <xref section="12.3" sectionFormat="of" target="RFC7252"/> and introduces four new “virtual” subsections, 12.3.1 to 12.3.4.</t>
      <section anchor="iana">
        <name>Updates to Section 12.3 "CoAP Content-Formats Registry"</name>
        <t><cref anchor="replace-self">RFC Editor: in this section, please replace RFCthis with the RFC number assigned to this document and remove this note.</cref></t>
        <t>The CoAP Content-Formats registration procedures defined in <xref section="12.3" sectionFormat="of" target="RFC7252"/> are modified as shown in <xref target="tbl-new-cf-proc"/>.</t>
        <table anchor="tbl-new-cf-proc">
          <name>Updated CoAP Content-Formats Registration Procedures</name>
          <thead>
            <tr>
              <th align="left">Range</th>
              <th align="left">Registration Procedures</th>
              <th align="left">Notes</th>
            </tr>
          </thead>
          <tbody>
            <tr>
              <td align="left">0-255</td>
              <td align="left">Expert Review</td>
              <td align="left">Review procedure described in RFCthis, <xref target="checks"/></td>
            </tr>
            <tr>
              <td align="left">256-9999</td>
              <td align="left">IETF Review with Expert Review or IESG Approval with Expert Review</td>
              <td align="left">Review procedure described in RFCthis, <xref target="checks"/></td>
            </tr>
            <tr>
              <td align="left">10000-64999</td>
              <td align="left">Expert Review or First Come First Served (FCFS)</td>
              <td align="left">Review procedure described in RFCthis, <xref target="checks"/>. <br/><br/>FCFS is allowed if the registration: <br/> * has no parameters, and <br/> * has an empty Content Coding, and <br/> * the media type is not yet used in this registry, and <br/> * the media type is registered (or approved for registration) in the "Media Types" registry <xref target="IANA.media-types"/>. <br/><br/>Expert Review is required in all other cases.</td>
            </tr>
            <tr>
              <td align="left">65000-65535</td>
              <td align="left">Experimental Use</td>
              <td align="left">No operational use</td>
            </tr>
          </tbody>
        </table>
        <t>The 256-9999 range now has registration procedures requiring "IETF Review with Expert Review" or "IESG Approval with Expert Review." In particular:</t>
        <ul spacing="normal">
          <li>
            <t>All assignments according to "IETF Review with Expert Review" are made on an "IETF Review" basis per <xref section="4.8" sectionFormat="of" target="BCP26"/> with "Expert Review" additionally required per <xref section="4.5" sectionFormat="of" target="BCP26"/>.  </t>
            <t>
The procedure for early IANA allocation of "standards track code points" defined in <xref target="RFC7120"/> also applies. When such a procedure is used, IANA will ask the Designated Expert(s) to approve the early allocation before registration. In addition, working group chairs are encouraged to consult the Expert(s) early during the process outlined in <xref section="3.1" sectionFormat="of" target="RFC7120"/>.</t>
          </li>
          <li>
            <t>All assignments according to "IESG Approval with Expert Review" are made on an "IESG Approval" basis per <xref section="4.10" sectionFormat="of" target="BCP26"/> with "Expert Review" additionally required per <xref section="4.5" sectionFormat="of" target="BCP26"/>.</t>
          </li>
        </ul>
        <t>The 10000-64999 range now has two separate registration procedures.
If the registration consists solely of a registered media type name in the "Content Type" field, without any parameter names or "Content Coding", and the media type has not yet been used in this registry, then the policy is FCFS, as before.
In all other cases, the policy is "Expert Review," following the procedure described in <xref target="checks"/>.</t>
        <t>A new column with the title "Notes" has been added to the CoAP Content-Formats Registration Procedures shown in <xref target="tbl-new-cf-proc"/>.</t>
      </section>
      <section anchor="new-section-1231-temporary-content-format-registrations">
        <name>New Section 12.3.1 "Temporary Content-Format Registrations"</name>
        <t>This section clarifies that the "CoAP Content-Formats" registry allows temporary registrations within the 0-255, 256-9999, and 10000-64999 ranges.</t>
        <t>A temporary registration may be created for example by an IANA early allocation action <xref target="RFC7120"/>.
If the referenced media type is provisional (that is, included in the IANA "Provisional Standard Media Type" registry <xref target="IANA.provisional-standard-media-types"/>) then a created registration is always temporary.</t>
        <t>A temporary registration is marked as such by IANA in the corresponding registry entry.
Once the required registration procedure (defined in <xref target="tbl-new-cf-proc"/>) for the temporary ID has successfully completed, and the referenced media type is included in the IANA Media Types registry <xref target="IANA.media-types"/>, IANA must remove any indication about the temporary nature of the registration so that the entry becomes permanent.</t>
        <t>If a temporary registration does not successfully complete the registration procedure, IANA must remove the entry and set the Content-Format ID value back to "Unassigned".
This may happen for example when an Internet-Draft requesting a Content-Format ID is abandoned.
If a temporary registration (in any range) refers to a provisional media type that is abandoned, IANA must remove the entry and set the Content-Format ID value back to "Unassigned".</t>
        <t>Note that in the 10000-64999 range the abandonment of a document requesting a Content-Format ID does not cause an entry to be removed.
That is because the required registration procedure for this range does not require completion of any standards process, nor does it require a registering document.</t>
      </section>
      <section anchor="new-section-1232-adding-the-media-type-column-to-the-registry">
        <name>New Section 12.3.2 "Adding the Media Type Column to the Registry"</name>
        <t>To assist users of the "CoAP Content-Formats" registry in finding detailed information about the media type associated with each CoAP Content-Format, and to ensure that a media type exists before a new entry can be registered, IANA is requested to add a new column "Media Type" to the registry.
This new column is placed directly to the right of the existing "Content Type" column.</t>
        <t>The "Media Type" field for each entry lists the (base) media type name and provides a hyperlink to registration information for that media type as recorded by IANA.
If the media type is provisional, the hyperlink points to the IANA "Provisional Standard Media Type" registry <xref target="IANA.provisional-standard-media-types"/>.
If a provisional media type becomes a permanent media type, IANA must update the "Media Type" field in the associated registry entries to ensure the hyperlink directs to the registration information for that media type.</t>
        <t>Note that the registration request procedure remains unchanged. A requester does not need to fill out the "Media Type" field separately, as the necessary information is already provided in the "Content Type" field of the request.</t>
      </section>
      <section anchor="checks">
        <name>New Section 12.3.3 "Expert Review Procedure"</name>
        <t>The Designated Expert (DE) is instructed to perform the Expert Review, as described by the following checklist:</t>
        <ol spacing="normal" type="1"><li>
            <t>The combination of content-type and content coding for which the registration is requested must not be already present in the "CoAP Content-Formats" registry;</t>
          </li>
          <li>
            <t>The media type associated with the requested Content-Format must either be registered in the "Media Types" registry <xref target="IANA.media-types"/> or approved for registration. Alternatively, it may be listed in the "Provisional Standard Media Type" registry <xref target="IANA.provisional-standard-media-types"/>. The use of provisional standard media types is only permitted for Content-Format identifiers within the ranges of 0-255 and 256-9999;</t>
          </li>
          <li>
            <t>The optional parameter names must have been defined in association with the media type, and any parameter values associated with such parameter names must be as permitted;</t>
          </li>
          <li>
            <t>The Content Type must be in the preferred format defined in <xref target="preferred-format"/>;</t>
          </li>
          <li>
            <t>If a Content Coding is specified, it must exist (or must have been approved for registration) in the "HTTP Content Coding" registry of the "Hypertext Transfer Protocol (HTTP) Parameters" <xref target="IANA.http-parameters"/>.</t>
          </li>
        </ol>
        <t>For the 0-255 range, in addition to the checks described above, the DE is instructed to also evaluate the requested codepoint concerning the limited availability of the 1-byte codepoint space.
For the 256-9999 range and the 10000-64999 range, a similar criterion may also apply where combinations of media type parameters and content coding choices consume considerable codepoint space.</t>
      </section>
      <section anchor="preferred-format">
        <name>New Section 12.3.4 "Preferred Format for the Content Type Field"</name>
        <t>This section defines the preferred string format for including a requested Content Type into the "CoAP Content-Formats" registry.
During the review process, the Designated Expert(s) or IANA may rewrite a requested Content Type into this preferred string format before approval.</t>
        <t>The preferred string format is as defined in <xref section="8.3.1" sectionFormat="of" target="RFC9110"/> and follows these rules:</t>
        <ol spacing="normal" type="1"><li>
            <t>For any case-insensitive elements, lowercase characters are used.</t>
          </li>
          <li>
            <t>Parameter values are only quoted if the value is such that it requires use of <tt>quoted-string</tt> per <xref section="5.6.6" sectionFormat="of" target="RFC9110"/>.
Otherwise, a parameter value is included unquoted.</t>
          </li>
          <li>
            <t>A single semicolon character without any adjacent whitespace characters is used as the separator between media type and parameters.</t>
          </li>
        </ol>
      </section>
    </section>
    <section anchor="security-considerations">
      <name>Security Considerations</name>
      <t>This document hardens the registration procedures of CoAP Content-Formats in ways that reduce the chances of malicious manipulation of the associated registry.</t>
      <t>Other than that, it does not change the Security Considerations of <xref target="RFC7252"/>.</t>
    </section>
    <section anchor="iana-considerations">
      <name>IANA Considerations</name>
      <t>This document updates the IANA procedures defined in <xref target="RFC7252"/> for registering CoAP Content-Formats as described in <xref target="updates"/>.</t>
      <section removeInRFC="true" anchor="temporary-note-removal">
        <name>Temporary Note Removal</name>
        <t>The following note has been added to the registry as a temporary fix:</t>
        <ul empty="true">
          <li>
            <t>"Note: The validity of the combination of Content Coding, Content Type and parameters is checked prior to assignment."</t>
          </li>
        </ul>
        <t>IANA is instructed to remove this note from the registry when this document is approved for publication.
RFC-Editor: please remove this section once the note has been removed.</t>
      </section>
    </section>
  </middle>
  <back>
    <references anchor="sec-combined-references">
      <name>References</name>
      <references anchor="sec-normative-references">
        <name>Normative References</name>
        <reference anchor="RFC7120">
          <front>
            <title>Early IANA Allocation of Standards Track Code Points</title>
            <author fullname="M. Cotton" initials="M." surname="Cotton"/>
            <date month="January" year="2014"/>
            <abstract>
              <t>This memo describes the process for early allocation of code points by IANA from registries for which "Specification Required", "RFC Required", "IETF Review", or "Standards Action" policies apply. This process can be used to alleviate the problem where code point allocation is needed to facilitate desired or required implementation and deployment experience prior to publication of an RFC, which would normally trigger code point allocation. The procedures in this document are intended to apply only to IETF Stream documents.</t>
            </abstract>
          </front>
          <seriesInfo name="BCP" value="100"/>
          <seriesInfo name="RFC" value="7120"/>
          <seriesInfo name="DOI" value="10.17487/RFC7120"/>
        </reference>
        <reference anchor="RFC7252">
          <front>
            <title>The Constrained Application Protocol (CoAP)</title>
            <author fullname="Z. Shelby" initials="Z." surname="Shelby"/>
            <author fullname="K. Hartke" initials="K." surname="Hartke"/>
            <author fullname="C. Bormann" initials="C." surname="Bormann"/>
            <date month="June" year="2014"/>
            <abstract>
              <t>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>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="RFC9110">
          <front>
            <title>HTTP Semantics</title>
            <author fullname="R. Fielding" initials="R." role="editor" surname="Fielding"/>
            <author fullname="M. Nottingham" initials="M." role="editor" surname="Nottingham"/>
            <author fullname="J. Reschke" initials="J." role="editor" surname="Reschke"/>
            <date month="June" year="2022"/>
            <abstract>
              <t>The Hypertext Transfer Protocol (HTTP) is a stateless application-level protocol for distributed, collaborative, hypertext information systems. This document describes the overall architecture of HTTP, establishes common terminology, and defines aspects of the protocol that are shared by all versions. In this definition are core protocol elements, extensibility mechanisms, and the "http" and "https" Uniform Resource Identifier (URI) schemes.</t>
              <t>This document updates RFC 3864 and obsoletes RFCs 2818, 7231, 7232, 7233, 7235, 7538, 7615, 7694, and portions of 7230.</t>
            </abstract>
          </front>
          <seriesInfo name="STD" value="97"/>
          <seriesInfo name="RFC" value="9110"/>
          <seriesInfo name="DOI" value="10.17487/RFC9110"/>
        </reference>
        <reference anchor="RFC9193">
          <front>
            <title>Sensor Measurement Lists (SenML) Fields for Indicating Data Value Content-Format</title>
            <author fullname="A. Keränen" initials="A." surname="Keränen"/>
            <author fullname="C. Bormann" initials="C." surname="Bormann"/>
            <date month="June" year="2022"/>
            <abstract>
              <t>The Sensor Measurement Lists (SenML) media types support multiple types of values, from numbers to text strings and arbitrary binary Data Values. In order to facilitate processing of binary Data Values, this document specifies a pair of new SenML fields for indicating the content format of those binary Data Values, i.e., their Internet media type, including parameters as well as any content codings applied.</t>
            </abstract>
          </front>
          <seriesInfo name="RFC" value="9193"/>
          <seriesInfo name="DOI" value="10.17487/RFC9193"/>
        </reference>
        <reference anchor="BCP26">
          <front>
            <title>Guidelines for Writing an IANA Considerations Section in RFCs</title>
            <author fullname="M. Cotton" initials="M." surname="Cotton"/>
            <author fullname="B. Leiba" initials="B." surname="Leiba"/>
            <author fullname="T. Narten" initials="T." surname="Narten"/>
            <date month="June" year="2017"/>
            <abstract>
              <t>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>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>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="IANA.core-parameters" target="https://www.iana.org/assignments/core-parameters">
          <front>
            <title>Constrained RESTful Environments (CoRE) Parameters</title>
            <author>
              <organization>IANA</organization>
            </author>
          </front>
        </reference>
        <reference anchor="IANA.media-types" target="https://www.iana.org/assignments/media-types">
          <front>
            <title>Media Types</title>
            <author>
              <organization>IANA</organization>
            </author>
          </front>
        </reference>
        <reference anchor="IANA.http-parameters" target="https://www.iana.org/assignments/http-parameters">
          <front>
            <title>Hypertext Transfer Protocol (HTTP) Parameters</title>
            <author>
              <organization>IANA</organization>
            </author>
          </front>
        </reference>
        <reference anchor="IANA.provisional-standard-media-types" target="https://www.iana.org/assignments/provisional-standard-media-types">
          <front>
            <title>Provisional Standard Media Type Registry</title>
            <author>
              <organization>IANA</organization>
            </author>
          </front>
        </reference>
      </references>
      <references anchor="sec-informative-references">
        <name>Informative References</name>
        <reference anchor="Err4954" target="https://www.rfc-editor.org/errata/eid4954" quoteTitle="false">
          <front>
            <title>RFC Errata Report 4954</title>
            <author>
              <organization/>
            </author>
            <date/>
          </front>
          <seriesInfo name="RFC" value="7252"/>
        </reference>
        <reference anchor="RFC8141">
          <front>
            <title>Uniform Resource Names (URNs)</title>
            <author fullname="P. Saint-Andre" initials="P." surname="Saint-Andre"/>
            <author fullname="J. Klensin" initials="J." surname="Klensin"/>
            <date month="April" year="2017"/>
            <abstract>
              <t>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>
      </references>
    </references>
    <?line 273?>

<section numbered="false" anchor="acknowledgments">
      <name>Acknowledgments</name>
      <t>Thank you
Amanda Baber,
Carsten Bormann,
Christer Holmberg,
Francesca Palombini,
Marco Tiloca,
and
Rich Salz
for your reviews, comments, suggestions, and fixes.</t>
    </section>
  </back>
  <!-- ##markdown-source:
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
RbCQKWTBMLUfjtHXSd1jzpL/A7F/V15/QgAA

-->

</rfc>
