<?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.6.38 (Ruby 3.2.1) -->
<rfc xmlns:xi="http://www.w3.org/2001/XInclude" ipr="trust200902" docName="draft-ietf-core-href-13" category="std" consensus="true" submissionType="IETF" xml:lang="en" tocDepth="3" tocInclude="true" sortRefs="true" symRefs="true" version="3">
  <!-- xml2rfc v2v3 conversion 3.17.4 -->
  <front>
    <title>Constrained Resource Identifiers</title>
    <seriesInfo name="Internet-Draft" value="draft-ietf-core-href-13"/>
    <author initials="C." surname="Bormann" fullname="Carsten Bormann" role="editor">
      <organization>Universität Bremen TZI</organization>
      <address>
        <postal>
          <street>Postfach 330440</street>
          <city>Bremen</city>
          <code>D-28359</code>
          <country>Germany</country>
        </postal>
        <phone>+49-421-218-63921</phone>
        <email>cabo@tzi.org</email>
      </address>
    </author>
    <author initials="H." surname="Birkholz" fullname="Henk Birkholz">
      <organization>Fraunhofer SIT</organization>
      <address>
        <postal>
          <street>Rheinstrasse 75</street>
          <city>Darmstadt</city>
          <code>64295</code>
          <country>Germany</country>
        </postal>
        <email>henk.birkholz@sit.fraunhofer.de</email>
      </address>
    </author>
    <date year="2023" month="July" day="10"/>
    <workgroup>CoRE Working Group</workgroup>
    <abstract>
      <?line 85?>

<t>The Constrained Resource Identifier (CRI) is a complement to the Uniform
Resource Identifier (URI) that represents the URI components in Concise
Binary Object Representation (CBOR) instead of a sequence of characters.
This simplifies parsing, comparison and reference resolution in
environments with severe limitations on processing power, code size, and
memory size.</t>
      <t><cref anchor="status">(This "cref" paragraph will be removed by the RFC editor:)<br/>
The present revision -13 of this draft picks up some additional
discussion points and is intended as input to the CoRE WG
meeting at IETF 117.</cref></t>
    </abstract>
    <note removeInRFC="true">
      <name>About This Document</name>
      <t>
        Status information for this document may be found at <eref target="https://datatracker.ietf.org/doc/draft-ietf-core-href/"/>.
      </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/href"/>.</t>
    </note>
  </front>
  <middle>
    <?line 102?>

<section anchor="introduction">
      <name>Introduction</name>
      <t>The <xref target="RFC3986">Uniform Resource Identifier (URI)</xref> and its most common
usage, the URI reference, are the Internet standard for linking to
resources in hypertext formats such as <xref target="W3C.REC-html52-20171214">HTML</xref>
or the <xref target="RFC8288">HTTP "Link" header field</xref>.</t>
      <t>A URI reference is a sequence of characters chosen from the repertoire
of US-ASCII characters.
The individual components of a URI reference are delimited by a number
of reserved characters, which necessitates the use of a character escape
mechanism called "percent-encoding" when these reserved characters are
used in a non-delimiting function.
The resolution of URI references involves parsing a character sequence
into its components, combining those components with the components of a
base URI, merging path components, removing dot-segments, and
recomposing the result back into a character sequence.</t>
      <t>Overall, the proper handling of URI references is quite intricate.
This can be a problem especially in <xref target="RFC7228">constrained environments</xref>,
where nodes often have severe code size and memory size limitations.
As a result, many implementations in such environments support only an
ad-hoc, informally-specified, bug-ridden, non-interoperable subset of
half of RFC 3986.</t>
      <t>This document defines the <em>Constrained Resource Identifier (CRI)</em> by
constraining URIs to a simplified subset and representing their
components in <xref target="RFC8949">Concise Binary Object Representation (CBOR)</xref>
instead of a sequence of characters.
This allows typical operations on URI references such as parsing,
comparison and reference resolution (including all corner cases) to be
implemented in a comparatively small amount of code.</t>
      <t>As a result of simplification, however, CRIs are not capable of
expressing all URIs permitted by the generic syntax of RFC 3986 (hence
the "constrained" in "Constrained Resource Identifier").
The supported subset includes all URIs of the
<xref target="RFC7252">Constrained Application Protocol (CoAP)</xref>, most URIs of the
<xref target="RFC9110">Hypertext Transfer Protocol (HTTP)</xref>,
<xref target="RFC8141">Uniform Resource Names (URNs)</xref>, and other similar URIs.
The exact constraints are defined in <xref target="constraints"/>.</t>
      <section anchor="notational-conventions">
        <name>Notational Conventions</name>
        <t>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"/> <xref target="RFC8174"/> when, and only when, they
appear in all capitals, as shown here.</t>
        <?line -18?>

<t>In this specification, the term "byte" is used in its now customary
sense as a synonym for "octet".</t>
        <t>Terms defined in this document appear in <em>cursive</em> where they
are introduced (rendered in plain text as the new term surrounded by
underscores).</t>
      </section>
    </section>
    <section anchor="constraints">
      <name>Constraints</name>
      <t>A Constrained Resource Identifier consists of the same five components
as a URI: scheme, authority, path, query, and fragment.
The components are subject to the following constraints:</t>
      <ol spacing="normal" type="C%d."><li anchor="c-scheme">The scheme name can be any Unicode string (see
Definition D80 in <xref target="Unicode"/>) that matches the syntax of a URI
scheme (see <xref section="3.1" sectionFormat="of" target="RFC3986"/>, which constrains schemes to
ASCII) and is lowercase (see Definition D139 in <xref target="Unicode"/>).
The scheme is always present.</li>
        <li anchor="c-authority">
          <t>An authority is always a host identified by an IP
address or registered name, along with optional port information,
and optionally preceded by user information.  </t>
          <t>
Alternatively, the authority can be absent; the two cases for this
defined in <xref section="3.3" sectionFormat="of" target="RFC3986"/> are modeled by two different
values used in place of an absent authority:  </t>
          <ul spacing="normal">
            <li>the path can be root-based (zero or more path components that are
each started in the URI with "/", as when the authority is
present), or</li>
            <li>the path can be rootless, which requires at least one path component.</li>
          </ul>
          <t>
(Note that in <xref target="cddl"/>, <tt>no-authority</tt> is marked as a feature, as
not all CRI implementations will support authority-less URIs.)</t>
        </li>
        <li anchor="c-userinfo">A userinfo is a text string built out of unreserved
  characters (<xref section="2.3" sectionFormat="of" target="RFC3986"/>) or "sub-delims" (<xref section="2.2" sectionFormat="of" target="RFC3986"/>); any other character needs to be percent-encoded (<xref target="pet"/>).
Note that this excludes the ":" character, which is commonly
deprecated as a way to delimit a cleartext password in a userinfo.</li>
        <li anchor="c-ip-address">An IP address can be either an IPv4 address or an
IPv6 address, optionally with a zone identifier <xref target="RFC6874"/>.
Future versions of IP are not supported (it is likely that a binary
mapping would be strongly desirable, and that cannot be designed
ahead of time, so these versions need to be added as a future
extension if needed).</li>
        <li anchor="c-reg-name">A registered name is a sequence of one or more
<em>labels</em>, which, when joined with dots (".") in between them,
result in a Unicode string that is lowercase and in Unicode
Normalization Form C (NFC) (see Definition D120 in <xref target="Unicode"/>).
(The syntax may be further restricted by the scheme.
As per <xref section="3.2.2" sectionFormat="of" target="RFC3986"/>, a registered name can be empty, for
which case a scheme can define a default for the host.)</li>
        <li anchor="c-port-range">A port is always an integer in the range from 0 to 65535.
Ports outside this range, empty ports (port subcomponents with no
digits, see <xref section="3.2.3" sectionFormat="of" target="RFC3986"/>), or ports with redundant
leading zeros, are not supported.</li>
        <li anchor="c-port-omitted">The port is omitted if and only if the port would be the same as the
scheme's default port (provided the scheme is defining such a default
port) or the scheme is not using ports.
<!-- Note that this is hard to do by a generic URI implementation
that may not know the scheme's default port -->
        </li>
        <li anchor="c-path">
          <t>A path consists of zero or more path segments.
Note that a path of just a single zero-length path segment is allowed —
this is considered equivalent to a path of zero path segments by
HTTP and CoAP, but this equivalence does not hold for CRIs in general as they only perform
normalization on the Syntax-Based Normalization level (<xref section="6.2.2" sectionFormat="of" target="RFC3986"/>, not on the scheme-specific Scheme-Based
Normalization level (<xref section="6.2.3" sectionFormat="of" target="RFC3986"/>).  </t>
          <t>
(A CRI implementation may want to offer scheme-cognizant
interfaces, performing this scheme-specific normalization for
schemes it knows.  The interface could assert which schemes the
implementation knows and provide pre-normalized CRIs.  This can
also relieve the application from removing a lone zero-length path
segment before putting path segments into CoAP Options, i.e., from
performing the check and jump in item 8 of <xref section="6.4" sectionFormat="of" target="RFC7252"/>.  See also <xref format="counter" target="sp-initial-empty"/> in <xref target="the-small-print"/>.)</t>
        </li>
        <li anchor="c-path-segment">
          <t>A path segment can be any Unicode string that is
in NFC, with the exception of the special "." and ".." complete path
segments.
Note that this includes the zero-length string.  </t>
          <t>
If no authority is present in a CRI, the leading path segment cannot be empty.
(See also <xref format="counter" target="sp-initial-empty"/> in <xref target="the-small-print"/>.)</t>
        </li>
        <li anchor="c-query">A query always consists of one or more query parameters.
   A query parameter can be any Unicode string that is in NFC.
   It is often in the form of a "key=value" pair.
   When converting a CRI to a URI, query parameters are separated by an
   ampersand ("&amp;") character.
   (This matches the structure and encoding of the target URI in CoAP
   requests.)
   Queries are optional; there is a difference between an absent query
   and a single query parameter that is the empty string.</li>
        <li anchor="c-fragment">A fragment identifier can be any Unicode string that
   is in NFC.
   Fragment identifiers are optional; there is a difference between an
   absent fragment identifier and a fragment identifier that is the
   empty string.</li>
        <li anchor="c-escaping">The syntax of registered names, path segments, query
   parameters, and fragment identifiers may be further restricted and
   sub-structured by the scheme.
   There is no support, however, for escaping sub-delimiters
   that are not intended to be used in a delimiting function.</li>
        <li anchor="c-mapping">When converting a CRI to a URI, any character that is
   outside the allowed character range or is a delimiter in the URI syntax
   is percent-encoded.
   For CRIs, percent-encoding always uses the UTF-8 encoding form (see
   Definition D92 in <xref target="Unicode"/>) to convert the character to a sequence
   of bytes (that is then converted to a sequence of %HH triplets).
   <!-- As per 3986 2.1, use uppercase hex. -->
        </li>
      </ol>
      <t>Examples for URIs at or beyond the boundaries of these constraints are in <xref format="counter" target="sp-constraints"/> in <xref target="the-small-print"/>.</t>
      <section anchor="constraints-not-expressed-by-the-data-model">
        <name>Constraints not expressed by the data model</name>
        <t>There are syntactically valid CRIs and CRI references that cannot be converted into a URI or URI reference, respectively.</t>
        <t>For CRI references, this is acceptable -- they can be resolved still and result in a valid CRI that can be converted back.
Examples of this are:</t>
        <ul spacing="normal">
          <li>
            <tt>[0, ["p"]]</tt>: appends a slash and the path segment "p" to its base
(and unsets the query and the fragment)</li>
          <li>
            <tt>[0, null, []]</tt>: leaves the path alone but unsets the query and the fragment</li>
        </ul>
        <t>(Full) CRIs that do not correspond to a valid URI are not valid on their own, and cannot be used.
Normatively they are characterized by the <xref target="cri-to-uri"/> process producing a valid and syntax-normalized URI.
For easier understanding, they are listed here:</t>
        <ul spacing="normal">
          <li>
            <t>CRIs (and CRI references) containing a path component "." or "..".  </t>
            <t>
These would be removed by the remove_dot_segments algorithm of <xref target="RFC3986"/>,
and thus never produce a normalized URI after resolution.  </t>
            <t>
(In CRI references, the <tt>discard</tt> value is used to afford segment removal,
and with "." being an unreserved character, expressing them as "%2e" and "%2e%2e" is not even viable,
let alone practical).</t>
          </li>
          <li>
            <t>CRIs without authority whose path starts with two or more empty segments.  </t>
            <t>
When converted to URIs, these would violate the requirement that in absence of an authority, a URI's path cannot begin with two slash characters,
and they would be indistinguishable from a URI with a shorter path and a present but empty authority component.</t>
          </li>
          <li>CRIs without authority that are rootless and do not have a path
component (e.g., <tt>["a", true]</tt>), which would be indistinguishable
from its root-based equivalent (<tt>["a"]</tt>) as both would have the URI <tt>a:</tt>.</li>
        </ul>
      </section>
    </section>
    <section anchor="creation-and-normalization">
      <name>Creation and Normalization</name>
      <t>In general, resource identifiers are created on the initial creation of a
resource with a certain resource identifier, or the initial exposition
of a resource under a particular resource identifier.</t>
      <t>A Constrained Resource Identifier <bcp14>SHOULD</bcp14> be created by
the naming authority that governs the namespace of the resource
identifier (see also <xref target="RFC8820"/>).
For example, for the resources of an HTTP origin server,
that server is responsible for creating the CRIs for those resources.</t>
      <t>The naming authority <bcp14>MUST</bcp14> ensure that any CRI created
satisfies the constraints defined in <xref target="constraints"/>. The creation of a
CRI fails if the CRI cannot be validated to satisfy all of the
constraints.</t>
      <t>If a naming authority creates a CRI from user input, it <bcp14>MAY</bcp14> apply
the following (and only the following) normalizations to get the CRI
more likely to validate:</t>
      <ul spacing="normal">
        <li>map the scheme name to lowercase (<xref format="counter" target="c-scheme"/>);</li>
        <li>map the registered name to NFC (<xref format="counter" target="c-reg-name"/>) and split it on
embedded dots;</li>
        <li>elide the port if it is the default port for the scheme
(<xref format="counter" target="c-port-omitted"/>);
<!-- * elide a single zero-length path segment ({{<c-path}}); -->
        </li>
        <li>map path segments, query parameters and the fragment identifier to
NFC form (<xref format="counter" target="c-path-segment"/>, <xref format="counter" target="c-query"/>, <xref format="counter" target="c-fragment"/>).</li>
      </ul>
      <t>Once a CRI has been created, it can be used and transferred without
further normalization.
All operations that operate on a CRI <bcp14>SHOULD</bcp14> rely on the
assumption that the CRI is appropriately pre-normalized.
(This does not contradict the requirement that when CRIs are
transferred, recipients must operate on as-good-as untrusted input and
fail gracefully in the face of malicious inputs.)</t>
    </section>
    <section anchor="comparison">
      <name>Comparison</name>
      <t>One of the most common operations on CRIs is comparison: determining
whether two CRIs are equivalent, without dereferencing the CRIs (using
them to access their respective resource(s)).</t>
      <t>Determination of equivalence or difference of CRIs is based on simple
component-wise comparison. If two CRIs are identical
component-by-component (using code-point-by-code-point comparison for
components that are Unicode strings) then it is safe to conclude that
they are equivalent.</t>
      <t>This comparison mechanism is designed to minimize false negatives while
strictly avoiding false positives.
The constraints defined in <xref target="constraints"/> imply the most
common forms of syntax- and scheme-based normalizations in URIs, but do
not comprise protocol-based normalizations that require accessing the
resources or detailed knowledge of the scheme's dereference algorithm.
False negatives can be caused, for example, by CRIs that are not
appropriately pre-normalized and by resource aliases.</t>
      <t>When CRIs are compared to select (or avoid) a network action, such as
retrieval of a representation, fragment components (if any) should be
excluded from the comparison.</t>
    </section>
    <section anchor="cri-references">
      <name>CRI References</name>
      <t>The most common usage of a Constrained Resource Identifier is to embed
it in resource representations, e.g., to express a hyperlink between the
represented resource and the resource identified by the CRI.</t>
      <t>This section defines the representation of CRIs in
<xref target="RFC8949">Concise Binary Object Representation (CBOR)</xref>.
When reduced representation size is desired, CRIs are not represented directly.
Instead, CRIs are indirectly referenced through <em>CRI references</em>.
These take advantage of hierarchical locality and provide a very compact
encoding.
The CBOR representation of CRI references is specified in
<xref target="cbor-representation"/>.</t>
      <t>The only operation defined on a CRI reference is <em>reference resolution</em>:
the act of transforming a CRI reference into a CRI.
<!-- , relative to a base URI -->
An application <bcp14>MUST</bcp14> implement this operation by applying
the algorithm specified in <xref target="reference-resolution"/> (or any algorithm
that is functionally equivalent to it).</t>
      <t>The reverse operation of transforming a CRI into a CRI reference is
not specified in detail in this document;
implementations are free to use any algorithm as long as reference
resolution of the resulting CRI reference yields the original CRI.
Notably, a CRI reference is not required to satisfy all of the
constraints of a CRI; the only requirement on a CRI reference is that
reference resolution <bcp14>MUST</bcp14> yield the original CRI.</t>
      <t>When testing for equivalence or difference, applications <bcp14>SHOULD NOT</bcp14>
directly compare CRI references; the references should be
resolved to their respective CRI before comparison.</t>
      <section anchor="cbor-representation">
        <name>CBOR Representation</name>
        <t>A CRI or CRI reference is encoded as a CBOR array <xref target="RFC8949"/>, with the
structure as described in the <xref target="RFC8610">Concise Data Definition Language
(CDDL)</xref> <xref target="RFC9165">including its control extensions</xref> as follows: <cref anchor="replace-xxxx">RFC Ed.: throughout this section, please replace
RFC-XXXX with the RFC number of this specification and remove this
note.</cref></t>
        <figure anchor="cddl">
          <name>CDDL for CRI CBOR representation</name>
          <sourcecode type="cddl"><![CDATA[
; not expressed in this CDDL spec: trailing nulls to be left off

RFC-XXXX-Definitions = [CRI, CRI-Reference]

CRI = [
  scheme,
  authority / no-authority,
  path / null,
  query / null,
  fragment / null
]


CRI-Reference = [
  ((scheme / null, authority / no-authority)
   // discard),                 ; relative reference
  path / null,
  query / [] / null,            ; [] is explicit unset
  fragment / null
]

scheme      = scheme-name / scheme-id
scheme-name = text .regexp "[a-z][a-z0-9+.-]*"
scheme-id   = nint

no-authority = NOAUTH-ROOTBASED / NOAUTH-ROOTLESS
NOAUTH-ROOTBASED = null .feature "no-authority"
NOAUTH-ROOTLESS = true .feature "no-authority"

authority   = [?userinfo, host, ?port]
userinfo    = (false, text .feature "userinfo")
host        = (host-ip // host-name)
host-name   = (*text) ; lowercase, NFC labels
host-ip     = (bytes .size 4 //
               (bytes .size 16, ?zone-id))
zone-id     = text
port        = 0..65535

discard     = DISCARD-ALL / 0..127
DISCARD-ALL = true
path        = [*text]
query       = [+text]
fragment    = text

]]></sourcecode>
        </figure>
        <t>The rules <tt>scheme</tt>, <tt>authority</tt>, <tt>path</tt>, <tt>query</tt>, <tt>fragment</tt>
correspond to the (sub‑)components of a CRI, as described in
<xref target="constraints"/>, with the addition of the <tt>discard</tt> section.</t>
        <t>This CDDL specification is simplified for exposition and needs to be
augmented by the following rules for interchange of CRIs and CRI
references:</t>
        <ul spacing="normal">
          <li>Trailing null values <bcp14>MUST</bcp14> be removed,</li>
          <li>two leading null values (scheme and authority both not given) <bcp14>MUST</bcp14>
be represented by using the <tt>discard</tt> alternative instead, and</li>
          <li>an empty path in a <tt>CRI</tt> <bcp14>MUST</bcp14> be represented as the empty array <tt>[]</tt>
(note that for <tt>CRI-Reference</tt> there is a difference between empty
and absent paths, represented by <tt>[]</tt> and <tt>null</tt>, respectively),</li>
          <li>an entirely empty outer array is not a valid CRI reference.</li>
        </ul>
        <t>For interchange as separate encoded data items, CRIs <bcp14>MUST NOT</bcp14> use
indefinite length encoding (see
<xref section="3.2" sectionFormat="of" target="RFC8949"/>); this requirement is relaxed for
specifications that embed CRIs into an encompassing CBOR
representation that does provide for indefinite length encoding.</t>
        <section anchor="the-discard-section">
          <name>The <tt>discard</tt> Section</name>
          <t>The <tt>discard</tt> section can be used in a CRI reference when neither a
scheme nor an authority is present.
It then expresses the operations performed on a base CRI by CRI references that
are equivalent to URI references with relative paths and path prefixes such as "/", "./", "../", "../../", etc.
"." and ".." are not available in CRIs and are therefore expressed
using <tt>discard</tt> after a normalization step, as is the presence or absence of a leading "/".</t>
          <t>E.g., a simple URI reference "foo" specifies to remove one leading segment
from the base URI's path, which is represented in the equivalent CRI
reference discard section as the value <tt>1</tt>; similarly "../foo" removes
two leading segments, represented as <tt>2</tt>;
and "/foo" removes all segments, represented in the <tt>discard</tt> section as the value <tt>true</tt>.
The exact semantics of the section values are defined by
<xref target="reference-resolution"/>.</t>
          <t>Most URI references that <xref section="4.2" sectionFormat="of" target="RFC3986"/> calls "relative
references" (i.e., references that need to undergo a resolution
process to obtain a URI) correspond to the CRI form that starts with
<tt>discard</tt>.  The exception are relative references with an <tt>authority</tt>
(called a "network-path reference" in <xref section="4.2" sectionFormat="of" target="RFC3986"/>), which
discard the entire path of the base CRI.
These CRI references never carry a <tt>discard</tt> section: the value of
<tt>discard</tt> defaults to <tt>true</tt>.</t>
        </section>
        <section anchor="visualization">
          <name>Visualization</name>
          <t>The structure of a CRI reference is visualized using the somewhat limited means
of a railroad diagram:</t>
          <artset>
            <artwork type="svg"><svg xmlns:xlink="http://www.w3.org/1999/xlink" xmlns="http://www.w3.org/2000/svg" viewBox="0 0 530 360">
                <g transform="translate(40 50)">
                  <text x="-30" y="-10">cri-reference:</text>
                  <path class="station" d="M5.5 14 v12 m 4 0 v-12" fill="none" stroke="black" stroke-width="1.5"/>
                  <path class="station" d="M400.5 14 v12 m 4 0 v-12" fill="none" stroke="black" stroke-width="1.5"/>
                  <rect class="rule" fill="none" height="20" rx="0" ry="0" stroke="black" stroke-width="1.5" width="70" x="60" y="10"/>
                  <text class="rule" text-anchor="middle" x="95" y="25">scheme</text>
                  <rect class="rule" fill="none" height="20" rx="0" ry="0" stroke="black" stroke-width="1.5" width="90" x="150" y="10"/>
                  <text class="rule" text-anchor="middle" x="195" y="25">authority</text>
                  <rect class="rule" fill="none" height="20" rx="0" ry="0" stroke="black" stroke-width="1.5" width="70" x="115" y="40"/>
                  <text class="rule" text-anchor="middle" x="150" y="55">discard</text>
                  <rect class="rule" fill="none" height="20" rx="0" ry="0" stroke="black" stroke-width="1.5" width="90" x="290" y="10"/>
                  <text class="rule" text-anchor="middle" x="335" y="25">local-part</text>
                  <path d="M260 30 v10" fill="none" stroke="black" stroke-width="1.5"/>
                  <path d="M185 50 h65 q10 0 10 -10" fill="none" stroke="black" stroke-width="1.5"/>
                  <path d="M40 40 q0 10 10 10 h65" fill="none" stroke="black" stroke-width="1.5"/>
                  <path d="M260 30 q0 -10 10 -10" fill="none" stroke="black" stroke-width="1.5"/>
                  <path d="M240 20 h50" fill="none" stroke="black" stroke-width="1.5"/>
                  <path d="M130 20 h20" fill="none" stroke="black" stroke-width="1.5"/>
                  <path d="M30 20 q10 0 10 10 v10" fill="none" stroke="black" stroke-width="1.5"/>
                  <path d="M380 20 h20" fill="none" stroke="black" stroke-width="1.5"/>
                  <path d="M10 20 h50" fill="none" stroke="black" stroke-width="1.5"/>
                </g>
                <g transform="translate(40 160)">
                  <text x="-30" y="-10">local-part:</text>
                  <path class="station" d="M5.5 74 v12 m 4 0 v-12" fill="none" stroke="black" stroke-width="1.5"/>
                  <path class="station" d="M460.5 74 v12 m 4 0 v-12" fill="none" stroke="black" stroke-width="1.5"/>
                  <path class="arrow" d="M237 10 l-4 3 v-6 z" fill="none" stroke="black" stroke-width="1.5"/>
                  <rect class="rule" fill="none" height="20" rx="0" ry="0" stroke="black" stroke-width="1.5" width="50" x="60" y="70"/>
                  <text class="rule" text-anchor="middle" x="85" y="85">path</text>
                  <path class="arrow" d="M272 30 l-4 3 v-6 z" fill="none" stroke="black" stroke-width="1.5"/>
                  <rect class="rule" fill="none" height="20" rx="0" ry="0" stroke="black" stroke-width="1.5" width="50" x="160" y="70"/>
                  <text class="rule" text-anchor="middle" x="185" y="85">query</text>
                  <path class="arrow" d="M307 50 l-4 3 v-6 z" fill="none" stroke="black" stroke-width="1.5"/>
                  <rect class="rule" fill="none" height="20" rx="0" ry="0" stroke="black" stroke-width="1.5" width="90" x="260" y="70"/>
                  <text class="rule" text-anchor="middle" x="305" y="85">fragment</text>
                  <path d="M40 20 v50" fill="none" stroke="black" stroke-width="1.5"/>
                  <path d="M430 70 q0 10 10 10" fill="none" stroke="black" stroke-width="1.5"/>
                  <path d="M140 40 v30" fill="none" stroke="black" stroke-width="1.5"/>
                  <path d="M400 70 q0 10 10 10" fill="none" stroke="black" stroke-width="1.5"/>
                  <path d="M240 60 v10" fill="none" stroke="black" stroke-width="1.5"/>
                  <path d="M370 70 q0 10 10 10" fill="none" stroke="black" stroke-width="1.5"/>
                  <path d="M350 80 h110" fill="none" stroke="black" stroke-width="1.5"/>
                  <path d="M230 80 q10 0 10 -10" fill="none" stroke="black" stroke-width="1.5"/>
                  <path d="M240 60 q0 -10 10 -10 h110 q10 0 10 10 v10" fill="none" stroke="black" stroke-width="1.5"/>
                  <path d="M210 80 h50" fill="none" stroke="black" stroke-width="1.5"/>
                  <path d="M130 80 q10 0 10 -10" fill="none" stroke="black" stroke-width="1.5"/>
                  <path d="M140 40 q0 -10 10 -10 h240 q10 0 10 10 v30" fill="none" stroke="black" stroke-width="1.5"/>
                  <path d="M110 80 h50" fill="none" stroke="black" stroke-width="1.5"/>
                  <path d="M30 80 q10 0 10 -10" fill="none" stroke="black" stroke-width="1.5"/>
                  <path d="M40 20 q0 -10 10 -10 h370 q10 0 10 10 v50" fill="none" stroke="black" stroke-width="1.5"/>
                  <path d="M10 80 h50" fill="none" stroke="black" stroke-width="1.5"/>
                </g>
              </svg>
            </artwork>
            <artwork type="ascii-art"><![CDATA[cri-reference:
    │├──╮── scheme ── authority ──╭── local-part ──┤│
        │                         │
        ╰──────── discard ────────╯

local-part:
        ╭─────────────────────>─────────────────────╮
        │                                           │
        │          ╭──────────────>──────────────╮  │
        │          │                             │  │
        │          │           ╭──────>───────╮  │  │
        │          │           │              │  │  │
    │├──╯── path ──╯── query ──╯── fragment ──╰──╰──╰──┤│

]]></artwork>
          </artset>
          <t>This visualization does not go into the details of the elements.</t>
        </section>
        <section anchor="examples">
          <name>Examples</name>
          <sourcecode type="cbor-diag"><![CDATA[
[-1,             / scheme -- equivalent to "coap" /
 [h'C6336401',   / host /
  61616],        / port /
 [".well-known", / path /
  "core"]
]
]]></sourcecode>
          <sourcecode type="cbor-diag"><![CDATA[
[true,                  / discard /
 [".well-known",        / path /
  "core"],
 ["rt=temperature-c"]]  / query /
]]></sourcecode>
          <sourcecode type="cbor-diag"><![CDATA[
[-6,             / scheme -- equivalent to "did" /
 true,           / authority = NOAUTH-NOSLASH /
 ["web:alice:bob"] / path /
]
]]></sourcecode>
        </section>
        <section anchor="specific-terminology">
          <name>Specific Terminology</name>
          <t>A CRI reference is considered <em>well-formed</em> if it matches the
structure as expressed in <xref target="cddl"/> in CDDL, with the additional
requirement that trailing <tt>null</tt> values are removed from the array.</t>
          <t>A CRI reference is considered <em>absolute</em> if it is well-formed
and the sequence of sections starts with a non-null <tt>scheme</tt>.</t>
          <t>A CRI reference is considered <em>relative</em> if it is well-formed
and the sequence of sections is empty or starts with a section other
than those that would constitute a <tt>scheme</tt>.</t>
        </section>
      </section>
      <section anchor="ingesting-and-encoding-a-cri-reference">
        <name>Ingesting and encoding a CRI Reference</name>
        <t>From an abstract point of view, a CRI Reference is a data structure
with six sections:</t>
        <t>scheme, authority, discard, path, query, fragment</t>
        <t>Each of these sections can be unset ("null"),
<!-- "not defined" in RFC 3986 -->
except for discard,
which is always an unsigned number or <tt>true</tt>.  If scheme and/or
authority are non-null, discard must be <tt>true</tt>.</t>
        <t>When ingesting a CRI Reference that is in the transfer form, those
sections are filled in from the transfer form (unset sections are
filled with null), and the following steps are performed:</t>
        <ul spacing="normal">
          <li>If the array is entirely empty, replace it with <tt>[0]</tt>.</li>
          <li>If discard is present in the transfer form (i.e., the outer array
starts with true or an unsigned number), set scheme and authority to null.</li>
          <li>If scheme and/or authority are present in the transfer form (i.e.,
the outer array starts with null, a text string, or a negative integer), set
discard to <tt>true</tt>.</li>
        </ul>
        <t>Upon encoding the abstract form into the transfer form, the inverse
processing is performed:  If scheme and/or authority are not null, the
discard value is not transferred (it must be true in this case).  If
they are both null, they are both left out and only discard is
transferred.
Trailing null values are removed from the array.
As a special case, an empty array is sent in place for a remaining
<tt>[0]</tt> (URI "").</t>
        <section anchor="unprocessable">
          <name>Error handling and extensibility</name>
          <t>It is recommended that specifications that describe the use of CRIs in CBOR-based protocols
use the error handling mechanisms outlined in this section.
Implementations of this document <bcp14>MUST</bcp14> adhere to rules
unless the containing document overrides them.</t>
          <t>When encountering a CRI that is well-formed in terms of CBOR, but that</t>
          <ul spacing="normal">
            <li>is not well-formed as a CRI,</li>
            <li>does not meet the other requirements on CRIs that are not covered by
the term "well-formed", or</li>
            <li>uses features not supported by the implementation,</li>
          </ul>
          <t>the CRI is treated as "unprocessable".</t>
          <t>When encountering an unprocessable CRI,
the processor skips the entire CRI top-level array, including any CBOR
items contained in there,
and continues processing the CBOR items surrounding the unprocessable CRI.
(Note: this skipping can be implemented in bounded memory for CRIs
that do not use indefinite length encoding, as mandated in
<xref target="cbor-representation"/>.)</t>
          <t>The unprocessable CRI is treated as an opaque identifier
that is distinct from all processable CRIs,
and distinct from all unprocessable CRIs with different CBOR representations.
It is up to implementation whether unprocessable CRIs with identical representations
are treated as identical to each other or not.
Unprocessable CRIs can not be dereferenced,
and it is an error to query any of their components.</t>
          <t>This mechanism ensures that CRI extensions
(using originally defined features or later extensions)
can be used without extending the compatibility hazard to the containing document.
For example,
if a collection of possible interaction targets contains several CRIs,
some of which use the "no-authority" feature,
an application consuming that collection that does not support that
feature can still offer the supported interaction targets.</t>
          <t>The duty of checking validity is with the recipients that rely on this
validity.
An intermediary that does not use the detailed information in a CRI
(or merely performs reference resolution) <bcp14>MAY</bcp14> pass on a CRI/CRI
reference without having fully checked it, relying on the producer
having generated a valid CRI/CRI reference.
This is true for both basic CRIs (e.g., checking for valid UTF-8) and
for extensions (e.g., checking both for valid UTF-8 and the minimal
use of PET elements in extended-cris as per <xref target="pet"/>).</t>
        </section>
      </section>
      <section anchor="reference-resolution">
        <name>Reference Resolution</name>
        <t>The term "relative" implies that a "base CRI" exists against which the
relative reference is applied. Aside from fragment-only references,
relative references are only usable when a base CRI is known.</t>
        <t>The following steps define the process of resolving any well-formed CRI
reference against a base CRI so that the result is a CRI in the form of
an absolute CRI reference:</t>
        <ol spacing="normal" type="1"><li>Establish the base CRI of the CRI reference and express it in the
  form of an abstract absolute CRI reference.</li>
          <li>Initialize a buffer with the sections from the base CRI.</li>
          <li>
            <t>If the value of discard is <tt>true</tt> in the CRI reference (which is
implicitly the case when scheme and/or authority are present in the reference), replace the
path in the buffer with the empty array, unset query and
fragment, and set a <tt>true</tt> authority to <tt>null</tt>.  If the value of
discard is an unsigned number, remove as many elements
from the end of the path array; if it is non-zero, unset query and
fragment.  </t>
            <t>
Set discard to <tt>true</tt> in the buffer.</t>
          </li>
          <li>If the path section is set in the CRI reference, append all
elements from the path array to the array in the path section in
the buffer; unset query and fragment.</li>
          <li>Apart from the path and discard, copy all non-null sections from
the CRI reference to the buffer in sequence; unset query in the buffer if query
is the empty array <tt>[]</tt> in the CRI reference; unset fragment in the buffer if
query is non-null in the CRI reference.</li>
          <li>Return the sections in the buffer as the resolved CRI.</li>
        </ol>
      </section>
    </section>
    <section anchor="relationship-between-cris-uris-and-iris">
      <name>Relationship between CRIs, URIs and IRIs</name>
      <t>CRIs are meant to replace both <xref target="RFC3986">Uniform Resource Identifiers (URIs)</xref>
and <xref target="RFC3987">Internationalized Resource Identifiers (IRIs)</xref>
in <xref target="RFC7228">constrained environments</xref>.
Applications in these environments may never need to use URIs and IRIs
directly, especially when the resource identifier is used simply for
identification purposes or when the CRI can be directly converted into a
CoAP request.</t>
      <t>However, it may be necessary in other environments to determine the
associated URI or IRI of a CRI, and vice versa. Applications can perform
these conversions as follows:</t>
      <dl newline="true">
        <dt>CRI to URI</dt>
        <dd>
          <t>A CRI is converted to a URI as specified in <xref target="cri-to-uri"/>.</t>
        </dd>
        <dt>URI to CRI</dt>
        <dd>
          <t>The method of converting a URI to a CRI is unspecified;
implementations are free to use any algorithm as long as converting
the resulting CRI back to a URI yields an equivalent URI.
</t>
          <t>Note that CRIs are defined to enable implementing conversions from
or to URIs analogously to processing URIs into CoAP Options and
back, with the exception that item 8 of <xref section="6.4" sectionFormat="of" target="RFC7252"/>
and item 7 of <xref section="6.5" sectionFormat="of" target="RFC7252"/> do not apply to CRI processing.
See <xref format="counter" target="sp-initial-empty"/> in <xref target="the-small-print"/> for more details.</t>
        </dd>
        <dt>CRI to IRI</dt>
        <dd>
          <t>A CRI can be converted to an IRI by first converting it to a URI as
specified in <xref target="cri-to-uri"/>, and then converting the URI
to an IRI as described in <xref section="3.2" sectionFormat="of" target="RFC3987"/>.</t>
        </dd>
        <dt>IRI to CRI</dt>
        <dd>
          <t>An IRI can be converted to a CRI by first converting it to a URI as
described in <xref section="3.1" sectionFormat="of" target="RFC3987"/>, and then
converting the URI to a CRI as described above.</t>
        </dd>
      </dl>
      <!-- What? -->
<t>Everything in this section also applies to CRI references, URI
references and IRI references.</t>
      <section anchor="cri-to-uri">
        <name>Converting CRIs to URIs</name>
        <t>Applications <bcp14>MUST</bcp14> convert a CRI reference to a URI
reference by determining the components of the URI reference according
to the following steps and then recomposing the components to a URI
reference string as specified in <xref section="5.3" sectionFormat="of" target="RFC3986"/>.</t>
        <dl newline="true">
          <dt>scheme</dt>
          <dd>
            <t>If the CRI reference contains a <tt>scheme</tt> section, the scheme
component of the URI reference consists of the value of that
section, if text (<tt>scheme-name</tt>); or, if a negative integer is given
(<tt>scheme-id</tt>), the lower case scheme name corresponding to the
scheme number as per the CRI Scheme Numbers registry <xref target="cri-reg"/>.
Otherwise, the scheme component is unset.</t>
          </dd>
          <dt>authority</dt>
          <dd>
            <t>If the CRI reference contains a <tt>host-name</tt> or <tt>host-ip</tt> item, the
authority component of the URI reference consists of a host
subcomponent, optionally followed by a colon (":") character and a
port subcomponent, optionally preceded by a <tt>userinfo</tt> subcomponent.
Otherwise, the authority component is unset.
</t>
            <t>The host subcomponent consists of the value of the <tt>host-name</tt> or
<tt>host-ip</tt> item.</t>
            <t>The <tt>userinfo</tt> subcomponent, if present, is turned into a single
string by
appending a "@".  Otherwise, both the subcomponent and the "@" sign
are omitted.
Any character in the value of the <tt>userinfo</tt> elements that is not in
the set of unreserved characters (<xref section="2.3" sectionFormat="of" target="RFC3986"/>) or
"sub-delims" (<xref section="2.2" sectionFormat="of" target="RFC3986"/>) <bcp14>MUST</bcp14> be
percent-encoded.</t>
            <t>The <tt>host-name</tt> is turned into a single string by joining the
elements separated by dots (".").
Any character in the elements of a <tt>host-name</tt> item that is not in
the set of unreserved characters (<xref section="2.3" sectionFormat="of" target="RFC3986"/>) or
"sub-delims" (<xref section="2.2" sectionFormat="of" target="RFC3986"/>) <bcp14>MUST</bcp14> be
percent-encoded.
If there are dots (".") in such elements, the conversion fails
(percent-encoding is not able to represent such elements, as
normalization would turn the percent-encoding back to the unreserved
character that a dot is.)</t>
            <t>The value of a <tt>host-ip</tt> item <bcp14>MUST</bcp14> be
represented as a string that matches the "IPv4address" or
"IP-literal" rule (<xref section="3.2.2" sectionFormat="of" target="RFC3986"/>).
Any zone-id is appended to the string, separated by "%25" as
defined in <xref section="2" sectionFormat="of" target="RFC6874"/>, or as specified in a superseding
zone-id specification document <xref target="I-D.carpenter-6man-rfc6874bis"/>; this also leads to a modified
"IP-literal" rule as specified in these documents.</t>
            <t>If the CRI reference contains a <tt>port</tt> item, the port
subcomponent consists of the value of that item in decimal
notation.
Otherwise, the colon (":") character and the port subcomponent are
both omitted.</t>
          </dd>
          <dt>path</dt>
          <dd>
            <t>If the CRI reference contains a <tt>discard</tt> item of value <tt>true</tt>, the
path component is considered <em>rooted</em>.  If it
contains a <tt>discard</tt> item of value <tt>0</tt> and the <tt>path</tt> item is
present, the conversion fails.  If it contains a positive discard
item, the path component is considered <em>unrooted</em> and
prefixed by as many "../" components as the <tt>discard</tt> value minus
one indicates.  If the discard value is <tt>1</tt> and the first element of
the path contains a <tt>:</tt>, the path component is prefixed by "./"
(this avoids the first element to appear as supplying a URI scheme;
compare <tt>path-noscheme</tt> in <xref section="4.2" sectionFormat="of" target="RFC3986"/>).
</t>
            <t>If the discard item is not present and the CRI reference contains an
authority that is <tt>true</tt>, the path component of the URI reference is
considered unrooted.  Otherwise, the path component is considered
rooted.</t>
            <t>If the CRI reference contains one or more <tt>path</tt> items, the path
component is constructed by concatenating the sequence of
representations of these items.  These representations generally
contain a leading slash ("/") character and the value of each item,
processed as discussed below.  The leading slash character is
omitted for the first path item only if the path component is
considered "unrooted".  <!-- A path segment that contains a colon
character (e.g., --> <!-- "this:that") cannot directly be used as
the first such item.  Such a --> <!-- segment MUST be preceded by a
dot-segment (e.g., "./this:that") --> <!-- unless scheme and/or
authority are present. -->
            </t>
            <t>Any character in the value of a <tt>path</tt> item that is not
in the set of unreserved characters or "sub-delims" or a colon
(":") or commercial at ("@") character <bcp14>MUST</bcp14> be
percent-encoded.</t>
            <t>If the authority component is present (not <tt>null</tt> or <tt>true</tt>) and the
path component does not match the "path-abempty" rule (<xref section="3.3" sectionFormat="of" target="RFC3986"/>), the conversion fails.</t>
            <t>If the authority component is not present, but the scheme component
is, and the path component does not match the "path-absolute",
"path-rootless" (authority == <tt>true</tt>) or "path-empty" rule (<xref section="3.3" sectionFormat="of" target="RFC3986"/>), the conversion fails.</t>
            <t>If neither the authority component nor the scheme component are
present, and the path component does not match the "path-absolute",
"path-noscheme" or "path-empty" rule (<xref section="3.3" sectionFormat="of" target="RFC3986"/>), the
conversion fails.</t>
          </dd>
          <dt>query</dt>
          <dd>
            <t>If the CRI reference contains one or more <tt>query</tt> items,
the query component of the URI reference consists of the value of
each item, separated by an ampersand ("&amp;") character.
Otherwise, the query component is unset.
</t>
            <t>Any character in the value of a <tt>query</tt> item that is not
in the set of unreserved characters or "sub-delims" or a colon
(":"), commercial at ("@"), slash ("/") or question mark ("?")
character <bcp14>MUST</bcp14> be percent-encoded.
Additionally, any ampersand character ("&amp;") in the item
value <bcp14>MUST</bcp14> be percent-encoded.</t>
          </dd>
          <dt>fragment</dt>
          <dd>
            <t>If the CRI reference contains a fragment item, the fragment
component of the URI reference consists of the value of that
item.
Otherwise, the fragment component is unset.
</t>
            <t>Any character in the value of a <tt>fragment</tt> item that is
not in the set of unreserved characters or "sub-delims" or a colon
(":"), commercial at ("@"), slash ("/") or question mark ("?")
character <bcp14>MUST</bcp14> be percent-encoded.</t>
          </dd>
        </dl>
      </section>
    </section>
    <section anchor="extending-cris">
      <name>Extending CRIs</name>
      <t>CRIs have been designed to relieve implementations operating on CRIs
from string scanning, which both helps constrained implementations and
implementations that need to achieve high throughput.</t>
      <t>The CRI structure described up to this point is termed the <em>Basic CRI</em>.
It should be sufficient for all applications that use the CoAP
protocol, as well as most other protocols employing URIs.</t>
      <t>However, Basic CRIs have one limitation: They do not support URI
components that <em>require</em> percent-encoding (<xref section="2.1" sectionFormat="of" target="RFC3986"/>) to
represent them in the URI syntax, except where that percent-encoding
is used to escape the main delimiter in use.</t>
      <t>E.g., the URI</t>
      <sourcecode type="uri"><![CDATA[
https://alice/3%2f4-inch
]]></sourcecode>
      <t>is represented by the basic CRI</t>
      <sourcecode type="coap-diag"><![CDATA[
[-4, ["alice"], ["3/4-inch"]]
]]></sourcecode>
      <t>However, percent-encoding that is used at the application level is not
supported by basic CRIs:</t>
      <sourcecode type="uri"><![CDATA[
did:web:alice:7%3A1-balun
]]></sourcecode>
      <t>Extended forms of CRIs may be defined to enable these applications.
They will generally extend the potential values of text components of
URIs, such as userinfo, hostnames, paths, queries, and fragments.</t>
      <t>One such extended form is described in the following <xref target="pet"/>.
Consumers of CRIs will generally notice when an extended form is in
use, by finding structures that do not match the CDDL rules given in
<xref target="cddl"/>.
Future definitions of extended forms need to strive to be
distinguishable in their structures from the extended form presented
here as well as other future forms.</t>
      <t>Extensions to CRIs <bcp14>MUST NOT</bcp14> allow indefinite length items.
This provision ensures that recipients o CRIs can deal with unprocessable CRIs
as described in <xref target="unprocessable"/>.</t>
      <section anchor="pet">
        <name>Extended CRI: Accommodating Percent Encoding (PET)</name>
        <t>This section presents a method to represent percent-encoded segments
of userinfo, hostnames, paths, and queries, as well as fragments.</t>
        <t>The four CDDL rules</t>
        <sourcecode type="cddl"><![CDATA[
userinfo    = (false, text .feature "userinfo")
host-name   = (*text)
path        = [*text]
query       = [+text]
fragment    = text
]]></sourcecode>
        <t>are replaced with</t>
        <sourcecode type="cddl"><![CDATA[
userinfo    = (false, text-or-pet .feature "userinfo")
host-name   = (*text-or-pet)
path        = [*text-or-pet]
query       = [+text-or-pet]
fragment    = text-or-pet

text-or-pet = text /
    text-pet-sequence .feature "extended-cri"

; text1 and pet1 alternating, at least one pet1:
text-pet-sequence = [?text1, ((+(pet1, text1), ?pet1) // pet1)]
; pet is percent-encoded bytes
pet1 = bytes .ne ''
text1 = text .ne ""
]]></sourcecode>
        <t>That is, for each of the host-name, path, and query segments, and for
the userinfo and fragment components, an alternate representation is provided
besides a simple text string: a non-empty array of alternating non-blank text and byte
strings, the text strings of which stand for non-percent-encoded text,
while the byte strings retain the special
semantics of percent-encoded text without actually being
percent-encoded.</t>
        <t>The above DID URI can now be represented as:</t>
        <sourcecode type="cbor-diag"><![CDATA[
[-6, true, [["web:alice:7", ':', "1-balun"]]]
]]></sourcecode>
        <t>(Note that, in CBOR diagnostic notation, single quotes delimit
literals for byte strings, double quotes for text strings.)</t>
        <t>To yield a valid <tt>extended-cri</tt>, the use of byte strings <bcp14>MUST</bcp14> be
minimal.
Both the following examples are therefore not valid:</t>
        <sourcecode type="cbor-diag"><![CDATA[
[-6, true, [["web:alice:", '7:', "1-balun"]]]
[-6, true, [["web:alice:7", ':1', "-balun"]]]
]]></sourcecode>
        <t>An algorithm for constructing a valid <tt>text-pet-sequence</tt> might
repeatedly examine the byte sequences in each byte string; if such a
sequence stands for an unreserved ASCII character, or constitutes a
valid UTF-8 character ≥ U+0080, move this character over into a text
string by appending it to the end of the preceding text string,
prepending it to the start of the following text string, or splitting
the byte string and inserting a new text string with this character,
all while preserving the order of the bytes.  (Note that the
properties of UTF-8 make this a simple linear process.)</t>
        <aside>
          <t>Unlike the text elements of a path or a query, which through CoAP's
heritage are designed to be processable element by element, a
text-pet-sequence does not usually produce a semantically meaningful
division into array elements.
This consequence of the flexibility in delimiters offered in URIs is
demonstrated by this example, which structurally singles out the one
':' that is <em>not</em> a delimiter at the application level.
Applications designed for using CRIs will generally avoid using the
extended-cri feature.
Applications using existing URI structures that require
text-pet-sequence elements for their representation typically need
to process them byte by byte.</t>
        </aside>
      </section>
    </section>
    <section anchor="impl">
      <name>Implementation Status</name>
      <t>With the exception of the authority=true fix, host-names split into
labels, and <xref target="pet"/>, CRIs are implemented in <tt>https://gitlab.com/chrysn/micrurus</tt>.
A golang implementation of version -10 of this document is found at:
<tt>https://github.com/thomas-fossati/href</tt>
        <!-- see RFC 7942 -->
      </t>
    </section>
    <section anchor="security">
      <name>Security Considerations</name>
      <t>Parsers of CRI references must operate on input that is assumed to be
untrusted. This means that parsers <bcp14>MUST</bcp14> fail gracefully
in the face of malicious inputs.
Additionally, parsers <bcp14>MUST</bcp14> be prepared to deal with
resource exhaustion (e.g., resulting from the allocation of big data
items) or exhaustion of the call stack (stack overflow).
See <xref section="10" sectionFormat="of" target="RFC8949"/> for additional
security considerations relating to CBOR.</t>
      <t>The security considerations discussed in <xref section="7" sectionFormat="of" target="RFC3986"/> and
<xref section="8" sectionFormat="of" target="RFC3987"/> for URIs and IRIs also apply to CRIs.</t>
    </section>
    <section anchor="iana-considerations">
      <name>IANA Considerations</name>
      <section anchor="cri-reg">
        <name>CRI Scheme Numbers Registry</name>
        <t>This specification defines a new "CRI Scheme Numbers" sub-registry in
the "CoRE Parameters" registry <xref target="IANA.core-parameters"/>, with the
policy "Expert Review" (<xref section="4.5" sectionFormat="of" target="BCP26"/>).
The objective is to have CRI scheme number values registered for all
registered URI schemes (Uniform Resource Identifier (URI) Schemes
registry), as well as exceptionally for certain text strings that the
Designated Expert considers widely used in constrained applications in
place of URI scheme names.</t>
        <section anchor="de-instructions">
          <name>Instructions for the Designated Expert</name>
          <t>The expert is instructed to be frugal in the allocation of CRI values
with short representations (1+0 and 1+1 encoding), keeping them in
reserve for applications that are likely to enjoy wide use and can
make good use of their shortness.</t>
          <t>When the expert notices that a registration has been made in the
Uniform Resource Identifier (URI) Schemes registry (see also <xref target="upd"/>),
the expert is requested to initiate a parallel registration in the CRI
Scheme Numbers registry.  CRI values in the range between 1000 and
20000 (inclusive) should be assigned unless a shorter representation
in CRIs appears desirable.</t>
          <t>The expert exceptionally also may make such a registration for text
strings that have not been registered in the Uniform Resource
Identifier (URI) Schemes registry if and only if the expert considers
the to be in wide use in place of URI scheme names in constrained
applications.
(Note that the initial registrations in <xref target="tab-numbers"/> already include
such registrations for the text strings "mqtt" and "mqtts".)</t>
          <t>A registration in the CRI Scheme Numbers registry does not imply that
a URI scheme under this name exists or has been registered in the
Uniform Resource Identifier (URI) Schemes registry -- it essentially
is only providing an integer identifier for an otherwise uninterpreted
text string.</t>
          <t>Any questions or issues that might interest a wider audience might be
raised by the expert on the core-parameters@ietf.org mailing list for
a time-limited discussion.</t>
        </section>
        <section anchor="structure-of-entries">
          <name>Structure of Entries</name>
          <t>Each entry in the registry must include:</t>
          <dl newline="true">
            <dt>CRI value:</dt>
            <dd>
              <t>A negative integer unique in this registry</t>
            </dd>
            <dt>URI scheme name:</dt>
            <dd>
              <t>a text string that would be acceptable for registration as a URI
Scheme Name in the Uniform Resource Identifier (URI) Schemes
registry</t>
            </dd>
            <dt>Reference:</dt>
            <dd>
              <t>a reference to a document, if available, or the registrant</t>
            </dd>
          </dl>
        </section>
        <section anchor="initial-registrations">
          <name>Initial Registrations</name>
          <t>The initial registrations for the CRI Scheme Numbers registry are
provided in <xref target="tab-numbers"/>.</t>
        </section>
      </section>
      <section anchor="upd">
        <name>Update to "Uniform Resource Identifier (URI) Schemes" Registry</name>
        <t><xref target="RFC7595"/> is updated to add the following note in the "Uniform
Resource Identifier (URI) Schemes" Registry <xref target="IANA.uri-schemes"/>:</t>
        <blockquote>
          <t>The CRI Scheme Numbers Registry registers numeric identifiers for what
essentially are URI Scheme names.
Registrants for the Uniform Resource Identifier (URI) Schemes Registry
are requested to make a parallel registration in the CRI Scheme
Numbers registry.
The number for this registration will be assigned by the Designated
Expert for that registry.</t>
        </blockquote>
      </section>
    </section>
  </middle>
  <back>
    <references>
      <name>References</name>
      <references>
        <name>Normative References</name>
        <reference anchor="RFC3986">
          <front>
            <title>Uniform Resource Identifier (URI): Generic Syntax</title>
            <author fullname="T. Berners-Lee" initials="T." surname="Berners-Lee"/>
            <author fullname="R. Fielding" initials="R." surname="Fielding"/>
            <author fullname="L. Masinter" initials="L." surname="Masinter"/>
            <date month="January" year="2005"/>
            <abstract>
              <t>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="RFC3987">
          <front>
            <title>Internationalized Resource Identifiers (IRIs)</title>
            <author fullname="M. Duerst" initials="M." surname="Duerst"/>
            <author fullname="M. Suignard" initials="M." surname="Suignard"/>
            <date month="January" year="2005"/>
            <abstract>
              <t>This document defines a new protocol element, the Internationalized Resource Identifier (IRI), as a complement of the Uniform Resource Identifier (URI). An IRI is a sequence of characters from the Universal Character Set (Unicode/ISO 10646). A mapping from IRIs to URIs is defined, which means that IRIs can be used instead of URIs, where appropriate, to identify resources.</t>
              <t>The approach of defining a new protocol element was chosen instead of extending or changing the definition of URIs. This was done in order to allow a clear distinction and to avoid incompatibilities with existing software. Guidelines are provided for the use and deployment of IRIs in various protocols, formats, and software components that currently deal with URIs.</t>
            </abstract>
          </front>
          <seriesInfo name="RFC" value="3987"/>
          <seriesInfo name="DOI" value="10.17487/RFC3987"/>
        </reference>
        <reference anchor="RFC6874">
          <front>
            <title>Representing IPv6 Zone Identifiers in Address Literals and Uniform Resource Identifiers</title>
            <author fullname="B. Carpenter" initials="B." surname="Carpenter"/>
            <author fullname="S. Cheshire" initials="S." surname="Cheshire"/>
            <author fullname="R. Hinden" initials="R." surname="Hinden"/>
            <date month="February" year="2013"/>
            <abstract>
              <t>This document describes how the zone identifier of an IPv6 scoped address, defined as in the IPv6 Scoped Address Architecture (RFC 4007), can be represented in a literal IPv6 address and in a Uniform Resource Identifier that includes such a literal address. It updates the URI Generic Syntax specification (RFC 3986) accordingly.</t>
            </abstract>
          </front>
          <seriesInfo name="RFC" value="6874"/>
          <seriesInfo name="DOI" value="10.17487/RFC6874"/>
        </reference>
        <reference anchor="RFC7595">
          <front>
            <title>Guidelines and Registration Procedures for URI Schemes</title>
            <author fullname="D. Thaler" initials="D." role="editor" surname="Thaler"/>
            <author fullname="T. Hansen" initials="T." surname="Hansen"/>
            <author fullname="T. Hardie" initials="T." surname="Hardie"/>
            <date month="June" year="2015"/>
            <abstract>
              <t>This document updates the guidelines and recommendations, as well as the IANA registration processes, for the definition of Uniform Resource Identifier (URI) schemes. It obsoletes RFC 4395.</t>
            </abstract>
          </front>
          <seriesInfo name="BCP" value="35"/>
          <seriesInfo name="RFC" value="7595"/>
          <seriesInfo name="DOI" value="10.17487/RFC7595"/>
        </reference>
        <reference anchor="IANA.uri-schemes" target="https://www.iana.org/assignments/uri-schemes">
          <front>
            <title>Uniform Resource Identifier (URI) Schemes</title>
            <author>
              <organization>IANA</organization>
            </author>
          </front>
        </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="I-D.carpenter-6man-rfc6874bis">
          <front>
            <title>Representing IPv6 Zone Identifiers in Address Literals and Uniform Resource Identifiers</title>
            <author fullname="Brian E. Carpenter" initials="B. E." surname="Carpenter">
         </author>
            <author fullname="Stuart Cheshire" initials="S." surname="Cheshire">
              <organization>Apple Inc.</organization>
            </author>
            <author fullname="Bob Hinden" initials="R. M." surname="Hinden">
              <organization>Check Point Software</organization>
            </author>
            <date day="8" month="February" year="2022"/>
            <abstract>
              <t>   This document describes how the zone identifier of an IPv6 scoped
   address, defined as &lt;zone_id&gt; in the IPv6 Scoped Address Architecture
   (RFC 4007), can be represented in a literal IPv6 address and in a
   Uniform Resource Identifier that includes such a literal address.  It
   updates the URI Generic Syntax and Internationalized Resource
   Identifier specifications (RFC 3986, RFC 3987) accordingly, and
   obsoletes RFC 6874.

              </t>
            </abstract>
          </front>
          <seriesInfo name="Internet-Draft" value="draft-carpenter-6man-rfc6874bis-03"/>
        </reference>
        <reference anchor="RFC8610">
          <front>
            <title>Concise Data Definition Language (CDDL): A Notational Convention to Express Concise Binary Object Representation (CBOR) and JSON Data Structures</title>
            <author fullname="H. Birkholz" initials="H." surname="Birkholz"/>
            <author fullname="C. Vigano" initials="C." surname="Vigano"/>
            <author fullname="C. Bormann" initials="C." surname="Bormann"/>
            <date month="June" year="2019"/>
            <abstract>
              <t>This document proposes a notational convention to express Concise Binary Object Representation (CBOR) data structures (RFC 7049). Its main goal is to provide an easy and unambiguous way to express structures for protocol messages and data formats that use CBOR or JSON.</t>
            </abstract>
          </front>
          <seriesInfo name="RFC" value="8610"/>
          <seriesInfo name="DOI" value="10.17487/RFC8610"/>
        </reference>
        <reference anchor="Unicode" target="https://www.unicode.org/versions/Unicode13.0.0/">
          <front>
            <title>The Unicode Standard, Version 13.0.0</title>
            <author>
              <organization>The Unicode Consortium</organization>
            </author>
            <date year="2020" month="March"/>
          </front>
          <seriesInfo name="ISBN" value="978-1-936213-26-9"/>
        </reference>
        <reference anchor="RFC8949">
          <front>
            <title>Concise Binary Object Representation (CBOR)</title>
            <author fullname="C. Bormann" initials="C." surname="Bormann"/>
            <author fullname="P. Hoffman" initials="P." surname="Hoffman"/>
            <date month="December" year="2020"/>
            <abstract>
              <t>The Concise Binary Object Representation (CBOR) is a data format whose design goals include the possibility of extremely small code size, fairly small message size, and extensibility without the need for version negotiation. These design goals make it different from earlier binary serializations such as ASN.1 and MessagePack.</t>
              <t>This document obsoletes RFC 7049, providing editorial improvements, new details, and errata fixes while keeping full compatibility with the interchange format of RFC 7049. It does not create a new version of the format.</t>
            </abstract>
          </front>
          <seriesInfo name="STD" value="94"/>
          <seriesInfo name="RFC" value="8949"/>
          <seriesInfo name="DOI" value="10.17487/RFC8949"/>
        </reference>
        <reference anchor="RFC9165">
          <front>
            <title>Additional Control Operators for the Concise Data Definition Language (CDDL)</title>
            <author fullname="C. Bormann" initials="C." surname="Bormann"/>
            <date month="December" year="2021"/>
            <abstract>
              <t>The Concise Data Definition Language (CDDL), standardized in RFC 8610, provides "control operators" as its main language extension point.</t>
              <t>The present document defines a number of control operators that were not yet ready at the time RFC 8610 was completed:,, and for the construction of constants; / for including ABNF (RFC 5234 and RFC 7405) in CDDL specifications; and for indicating the use of a non-basic feature in an instance.</t>
            </abstract>
          </front>
          <seriesInfo name="RFC" value="9165"/>
          <seriesInfo name="DOI" value="10.17487/RFC9165"/>
        </reference>
        <reference anchor="RFC2119">
          <front>
            <title>Key words for use in RFCs to Indicate Requirement Levels</title>
            <author fullname="S. Bradner" initials="S." surname="Bradner"/>
            <date month="March" year="1997"/>
            <abstract>
              <t>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="RFC8174">
          <front>
            <title>Ambiguity of Uppercase vs Lowercase in RFC 2119 Key Words</title>
            <author fullname="B. Leiba" initials="B." surname="Leiba"/>
            <date month="May" year="2017"/>
            <abstract>
              <t>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>
        <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>
      </references>
      <references>
        <name>Informative References</name>
        <reference anchor="RFC7228">
          <front>
            <title>Terminology for Constrained-Node Networks</title>
            <author fullname="C. Bormann" initials="C." surname="Bormann"/>
            <author fullname="M. Ersue" initials="M." surname="Ersue"/>
            <author fullname="A. Keranen" initials="A." surname="Keranen"/>
            <date month="May" year="2014"/>
            <abstract>
              <t>The Internet Protocol Suite is increasingly used on small devices with severe constraints on power, memory, and processing resources, creating constrained-node networks. This document provides a number of basic terms that have been useful in the standardization work for constrained-node networks.</t>
            </abstract>
          </front>
          <seriesInfo name="RFC" value="7228"/>
          <seriesInfo name="DOI" value="10.17487/RFC7228"/>
        </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="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="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>
        <reference anchor="RFC8288">
          <front>
            <title>Web Linking</title>
            <author fullname="M. Nottingham" initials="M." surname="Nottingham"/>
            <date month="October" year="2017"/>
            <abstract>
              <t>This specification defines a model for the relationships between resources on the Web ("links") and the type of those relationships ("link relation types").</t>
              <t>It also defines the serialisation of such links in HTTP headers with the Link header field.</t>
            </abstract>
          </front>
          <seriesInfo name="RFC" value="8288"/>
          <seriesInfo name="DOI" value="10.17487/RFC8288"/>
        </reference>
        <reference anchor="RFC8820">
          <front>
            <title>URI Design and Ownership</title>
            <author fullname="M. Nottingham" initials="M." surname="Nottingham"/>
            <date month="June" year="2020"/>
            <abstract>
              <t>Section 1.1.1 of RFC 3986 defines URI syntax as "a federated and extensible naming system wherein each scheme's specification may further restrict the syntax and semantics of identifiers using that scheme." In other words, the structure of a URI is defined by its scheme. While it is common for schemes to further delegate their substructure to the URI's owner, publishing independent standards that mandate particular forms of substructure in URIs is often problematic.</t>
              <t>This document provides guidance on the specification of URI substructure in standards.</t>
              <t>This document obsoletes RFC 7320 and updates RFC 3986.</t>
            </abstract>
          </front>
          <seriesInfo name="BCP" value="190"/>
          <seriesInfo name="RFC" value="8820"/>
          <seriesInfo name="DOI" value="10.17487/RFC8820"/>
        </reference>
        <reference anchor="W3C.REC-html52-20171214" target="https://www.w3.org/TR/2017/REC-html52-20171214/">
          <front>
            <title>HTML 5.2</title>
            <author fullname="Alex Danilo" role="editor"/>
            <author fullname="Arron Eicholz" role="editor"/>
            <author fullname="Sangwhan Moon" role="editor"/>
            <author fullname="Steve Faulkner" role="editor"/>
            <author fullname="Travis Leithead" role="editor"/>
            <date day="14" month="December" year="2017"/>
          </front>
          <seriesInfo name="W3C REC" value="REC-html52-20171214"/>
          <seriesInfo name="W3C" value="REC-html52-20171214"/>
        </reference>
        <reference anchor="RFC4180">
          <front>
            <title>Common Format and MIME Type for Comma-Separated Values (CSV) Files</title>
            <author fullname="Y. Shafranovich" initials="Y." surname="Shafranovich"/>
            <date month="October" year="2005"/>
            <abstract>
              <t>This RFC documents the format used for Comma-Separated Values (CSV) files and registers the associated MIME type "text/csv". This memo provides information for the Internet community.</t>
            </abstract>
          </front>
          <seriesInfo name="RFC" value="4180"/>
          <seriesInfo name="DOI" value="10.17487/RFC4180"/>
        </reference>
      </references>
    </references>
    <?line 1121?>

<section anchor="sec-numbers">
      <name>Mapping Scheme Numbers to Scheme Names</name>
      <t><xref target="tab-numbers"/> defines the initial mapping from CRI scheme numbers to
URI scheme names.</t>
      <table anchor="tab-numbers">
        <name>Mapping Scheme Numbers to Scheme Names</name>
        <thead>
          <tr>
            <th align="left">CRI value</th>
            <th align="left">URI scheme</th>
            <th align="left">Reference</th>
          </tr>
        </thead>
        <tbody>
          <tr>
            <td align="left">-1</td>
            <td align="left">coap</td>
            <td align="left">[RFCthis]</td>
          </tr>
          <tr>
            <td align="left">-2</td>
            <td align="left">coaps</td>
            <td align="left">[RFCthis]</td>
          </tr>
          <tr>
            <td align="left">-3</td>
            <td align="left">http</td>
            <td align="left">[RFCthis]</td>
          </tr>
          <tr>
            <td align="left">-4</td>
            <td align="left">https</td>
            <td align="left">[RFCthis]</td>
          </tr>
          <tr>
            <td align="left">-5</td>
            <td align="left">urn</td>
            <td align="left">[RFCthis]</td>
          </tr>
          <tr>
            <td align="left">-6</td>
            <td align="left">did</td>
            <td align="left">[RFCthis]</td>
          </tr>
          <tr>
            <td align="left">-7</td>
            <td align="left">coap+tcp</td>
            <td align="left">[RFCthis]</td>
          </tr>
          <tr>
            <td align="left">-8</td>
            <td align="left">coaps+tcp</td>
            <td align="left">[RFCthis]</td>
          </tr>
          <tr>
            <td align="left">-9</td>
            <td align="left">coap+ws</td>
            <td align="left">[RFCthis]</td>
          </tr>
          <tr>
            <td align="left">-10</td>
            <td align="left">coaps+ws</td>
            <td align="left">[RFCthis]</td>
          </tr>
          <tr>
            <td align="left">-1025</td>
            <td align="left">telnet</td>
            <td align="left">[RFCthis]</td>
          </tr>
          <tr>
            <td align="left">-1046</td>
            <td align="left">ldap</td>
            <td align="left">[RFCthis]</td>
          </tr>
          <tr>
            <td align="left">-1056</td>
            <td align="left">ms-virtualtouchpad</td>
            <td align="left">[RFCthis]</td>
          </tr>
          <tr>
            <td align="left">-1091</td>
            <td align="left">fax</td>
            <td align="left">[RFCthis]</td>
          </tr>
          <tr>
            <td align="left">-1107</td>
            <td align="left">ves</td>
            <td align="left">[RFCthis]</td>
          </tr>
          <tr>
            <td align="left">-1147</td>
            <td align="left">submit</td>
            <td align="left">[RFCthis]</td>
          </tr>
          <tr>
            <td align="left">-1192</td>
            <td align="left">gg</td>
            <td align="left">[RFCthis]</td>
          </tr>
          <tr>
            <td align="left">-1219</td>
            <td align="left">simplex</td>
            <td align="left">[RFCthis]</td>
          </tr>
          <tr>
            <td align="left">-1240</td>
            <td align="left">ms-settings-nfctransactions</td>
            <td align="left">[RFCthis]</td>
          </tr>
          <tr>
            <td align="left">-1241</td>
            <td align="left">secret-token</td>
            <td align="left">[RFCthis]</td>
          </tr>
          <tr>
            <td align="left">-1249</td>
            <td align="left">acap</td>
            <td align="left">[RFCthis]</td>
          </tr>
          <tr>
            <td align="left">-1276</td>
            <td align="left">openpgp4fpr</td>
            <td align="left">[RFCthis]</td>
          </tr>
          <tr>
            <td align="left">-1300</td>
            <td align="left">ms-mixedrealitycapture</td>
            <td align="left">[RFCthis]</td>
          </tr>
          <tr>
            <td align="left">-1307</td>
            <td align="left">ymsgr</td>
            <td align="left">[RFCthis]</td>
          </tr>
          <tr>
            <td align="left">-1320</td>
            <td align="left">iris.xpcs</td>
            <td align="left">[RFCthis]</td>
          </tr>
          <tr>
            <td align="left">-1351</td>
            <td align="left">turns</td>
            <td align="left">[RFCthis]</td>
          </tr>
          <tr>
            <td align="left">-1367</td>
            <td align="left">opaquelocktoken</td>
            <td align="left">[RFCthis]</td>
          </tr>
          <tr>
            <td align="left">-1499</td>
            <td align="left">platform</td>
            <td align="left">[RFCthis]</td>
          </tr>
          <tr>
            <td align="left">-1597</td>
            <td align="left">sftp</td>
            <td align="left">[RFCthis]</td>
          </tr>
          <tr>
            <td align="left">-1613</td>
            <td align="left">vscode</td>
            <td align="left">[RFCthis]</td>
          </tr>
          <tr>
            <td align="left">-1649</td>
            <td align="left">mqtt</td>
            <td align="left">[RFCthis]</td>
          </tr>
          <tr>
            <td align="left">-1664</td>
            <td align="left">ms-settings</td>
            <td align="left">[RFCthis]</td>
          </tr>
          <tr>
            <td align="left">-1690</td>
            <td align="left">doi</td>
            <td align="left">[RFCthis]</td>
          </tr>
          <tr>
            <td align="left">-1720</td>
            <td align="left">file</td>
            <td align="left">[RFCthis]</td>
          </tr>
          <tr>
            <td align="left">-1729</td>
            <td align="left">dvb</td>
            <td align="left">[RFCthis]</td>
          </tr>
          <tr>
            <td align="left">-1760</td>
            <td align="left">magnet</td>
            <td align="left">[RFCthis]</td>
          </tr>
          <tr>
            <td align="left">-1768</td>
            <td align="left">calculator</td>
            <td align="left">[RFCthis]</td>
          </tr>
          <tr>
            <td align="left">-1836</td>
            <td align="left">ssh</td>
            <td align="left">[RFCthis]</td>
          </tr>
          <tr>
            <td align="left">-1966</td>
            <td align="left">gopher</td>
            <td align="left">[RFCthis]</td>
          </tr>
          <tr>
            <td align="left">-1985</td>
            <td align="left">ms-gamingoverlay</td>
            <td align="left">[RFCthis]</td>
          </tr>
          <tr>
            <td align="left">-1997</td>
            <td align="left">z39.50</td>
            <td align="left">[RFCthis]</td>
          </tr>
          <tr>
            <td align="left">-2032</td>
            <td align="left">ms-secondary-screen-setup</td>
            <td align="left">[RFCthis]</td>
          </tr>
          <tr>
            <td align="left">-2038</td>
            <td align="left">fido</td>
            <td align="left">[RFCthis]</td>
          </tr>
          <tr>
            <td align="left">-2085</td>
            <td align="left">mumble</td>
            <td align="left">[RFCthis]</td>
          </tr>
          <tr>
            <td align="left">-2095</td>
            <td align="left">ms-settings-cloudstorage</td>
            <td align="left">[RFCthis]</td>
          </tr>
          <tr>
            <td align="left">-2106</td>
            <td align="left">imap</td>
            <td align="left">[RFCthis]</td>
          </tr>
          <tr>
            <td align="left">-2152</td>
            <td align="left">ms-officeapp</td>
            <td align="left">[RFCthis]</td>
          </tr>
          <tr>
            <td align="left">-2233</td>
            <td align="left">pwid</td>
            <td align="left">[RFCthis]</td>
          </tr>
          <tr>
            <td align="left">-2236</td>
            <td align="left">drm</td>
            <td align="left">[RFCthis]</td>
          </tr>
          <tr>
            <td align="left">-2264</td>
            <td align="left">tag</td>
            <td align="left">[RFCthis]</td>
          </tr>
          <tr>
            <td align="left">-2369</td>
            <td align="left">feed</td>
            <td align="left">[RFCthis]</td>
          </tr>
          <tr>
            <td align="left">-2460</td>
            <td align="left">ipps</td>
            <td align="left">[RFCthis]</td>
          </tr>
          <tr>
            <td align="left">-2484</td>
            <td align="left">xmlrpc.beeps</td>
            <td align="left">[RFCthis]</td>
          </tr>
          <tr>
            <td align="left">-2492</td>
            <td align="left">jms</td>
            <td align="left">[RFCthis]</td>
          </tr>
          <tr>
            <td align="left">-2542</td>
            <td align="left">wpid</td>
            <td align="left">[RFCthis]</td>
          </tr>
          <tr>
            <td align="left">-2669</td>
            <td align="left">barion</td>
            <td align="left">[RFCthis]</td>
          </tr>
          <tr>
            <td align="left">-2675</td>
            <td align="left">onenote</td>
            <td align="left">[RFCthis]</td>
          </tr>
          <tr>
            <td align="left">-2695</td>
            <td align="left">icon</td>
            <td align="left">[RFCthis]</td>
          </tr>
          <tr>
            <td align="left">-2769</td>
            <td align="left">message</td>
            <td align="left">[RFCthis]</td>
          </tr>
          <tr>
            <td align="left">-2800</td>
            <td align="left">ms-enrollment</td>
            <td align="left">[RFCthis]</td>
          </tr>
          <tr>
            <td align="left">-2804</td>
            <td align="left">bolo</td>
            <td align="left">[RFCthis]</td>
          </tr>
          <tr>
            <td align="left">-2817</td>
            <td align="left">diaspora</td>
            <td align="left">[RFCthis]</td>
          </tr>
          <tr>
            <td align="left">-2833</td>
            <td align="left">microsoft.windows.camera.picker</td>
            <td align="left">[RFCthis]</td>
          </tr>
          <tr>
            <td align="left">-2864</td>
            <td align="left">notes</td>
            <td align="left">[RFCthis]</td>
          </tr>
          <tr>
            <td align="left">-2866</td>
            <td align="left">amss</td>
            <td align="left">[RFCthis]</td>
          </tr>
          <tr>
            <td align="left">-2873</td>
            <td align="left">tip</td>
            <td align="left">[RFCthis]</td>
          </tr>
          <tr>
            <td align="left">-3018</td>
            <td align="left">fm</td>
            <td align="left">[RFCthis]</td>
          </tr>
          <tr>
            <td align="left">-3042</td>
            <td align="left">rtmfp</td>
            <td align="left">[RFCthis]</td>
          </tr>
          <tr>
            <td align="left">-3060</td>
            <td align="left">reload</td>
            <td align="left">[RFCthis]</td>
          </tr>
          <tr>
            <td align="left">-3111</td>
            <td align="left">pres</td>
            <td align="left">[RFCthis]</td>
          </tr>
          <tr>
            <td align="left">-3232</td>
            <td align="left">acd</td>
            <td align="left">[RFCthis]</td>
          </tr>
          <tr>
            <td align="left">-3362</td>
            <td align="left">prospero</td>
            <td align="left">[RFCthis]</td>
          </tr>
          <tr>
            <td align="left">-3364</td>
            <td align="left">geo</td>
            <td align="left">[RFCthis]</td>
          </tr>
          <tr>
            <td align="left">-3414</td>
            <td align="left">snmp</td>
            <td align="left">[RFCthis]</td>
          </tr>
          <tr>
            <td align="left">-3483</td>
            <td align="left">iris.beep</td>
            <td align="left">[RFCthis]</td>
          </tr>
          <tr>
            <td align="left">-3510</td>
            <td align="left">maps</td>
            <td align="left">[RFCthis]</td>
          </tr>
          <tr>
            <td align="left">-3575</td>
            <td align="left">content</td>
            <td align="left">[RFCthis]</td>
          </tr>
          <tr>
            <td align="left">-3618</td>
            <td align="left">pack</td>
            <td align="left">[RFCthis]</td>
          </tr>
          <tr>
            <td align="left">-3619</td>
            <td align="left">keyparc</td>
            <td align="left">[RFCthis]</td>
          </tr>
          <tr>
            <td align="left">-3632</td>
            <td align="left">mongodb</td>
            <td align="left">[RFCthis]</td>
          </tr>
          <tr>
            <td align="left">-3693</td>
            <td align="left">smb</td>
            <td align="left">[RFCthis]</td>
          </tr>
          <tr>
            <td align="left">-3796</td>
            <td align="left">graph</td>
            <td align="left">[RFCthis]</td>
          </tr>
          <tr>
            <td align="left">-3818</td>
            <td align="left">filesystem</td>
            <td align="left">[RFCthis]</td>
          </tr>
          <tr>
            <td align="left">-3839</td>
            <td align="left">payment</td>
            <td align="left">[RFCthis]</td>
          </tr>
          <tr>
            <td align="left">-3840</td>
            <td align="left">ms-settings-bluetooth</td>
            <td align="left">[RFCthis]</td>
          </tr>
          <tr>
            <td align="left">-3951</td>
            <td align="left">palm</td>
            <td align="left">[RFCthis]</td>
          </tr>
          <tr>
            <td align="left">-4027</td>
            <td align="left">hyper</td>
            <td align="left">[RFCthis]</td>
          </tr>
          <tr>
            <td align="left">-4043</td>
            <td align="left">microsoft.windows.camera</td>
            <td align="left">[RFCthis]</td>
          </tr>
          <tr>
            <td align="left">-4067</td>
            <td align="left">mvn</td>
            <td align="left">[RFCthis]</td>
          </tr>
          <tr>
            <td align="left">-4098</td>
            <td align="left">mtqp</td>
            <td align="left">[RFCthis]</td>
          </tr>
          <tr>
            <td align="left">-4130</td>
            <td align="left">jabber</td>
            <td align="left">[RFCthis]</td>
          </tr>
          <tr>
            <td align="left">-4275</td>
            <td align="left">mms</td>
            <td align="left">[RFCthis]</td>
          </tr>
          <tr>
            <td align="left">-4343</td>
            <td align="left">skype</td>
            <td align="left">[RFCthis]</td>
          </tr>
          <tr>
            <td align="left">-4351</td>
            <td align="left">oid</td>
            <td align="left">[RFCthis]</td>
          </tr>
          <tr>
            <td align="left">-4420</td>
            <td align="left">dict</td>
            <td align="left">[RFCthis]</td>
          </tr>
          <tr>
            <td align="left">-4454</td>
            <td align="left">attachment</td>
            <td align="left">[RFCthis]</td>
          </tr>
          <tr>
            <td align="left">-4662</td>
            <td align="left">ocf</td>
            <td align="left">[RFCthis]</td>
          </tr>
          <tr>
            <td align="left">-4807</td>
            <td align="left">isostore</td>
            <td align="left">[RFCthis]</td>
          </tr>
          <tr>
            <td align="left">-4816</td>
            <td align="left">redis</td>
            <td align="left">[RFCthis]</td>
          </tr>
          <tr>
            <td align="left">-4862</td>
            <td align="left">ms-settings-privacy</td>
            <td align="left">[RFCthis]</td>
          </tr>
          <tr>
            <td align="left">-4877</td>
            <td align="left">ms-settings-wifi</td>
            <td align="left">[RFCthis]</td>
          </tr>
          <tr>
            <td align="left">-5004</td>
            <td align="left">v-event</td>
            <td align="left">[RFCthis]</td>
          </tr>
          <tr>
            <td align="left">-5020</td>
            <td align="left">com-eventbrite-attendee</td>
            <td align="left">[RFCthis]</td>
          </tr>
          <tr>
            <td align="left">-5105</td>
            <td align="left">teliaeid</td>
            <td align="left">[RFCthis]</td>
          </tr>
          <tr>
            <td align="left">-5222</td>
            <td align="left">itms</td>
            <td align="left">[RFCthis]</td>
          </tr>
          <tr>
            <td align="left">-5234</td>
            <td align="left">fish</td>
            <td align="left">[RFCthis]</td>
          </tr>
          <tr>
            <td align="left">-5285</td>
            <td align="left">dtn</td>
            <td align="left">[RFCthis]</td>
          </tr>
          <tr>
            <td align="left">-5298</td>
            <td align="left">vscode-insiders</td>
            <td align="left">[RFCthis]</td>
          </tr>
          <tr>
            <td align="left">-5304</td>
            <td align="left">tftp</td>
            <td align="left">[RFCthis]</td>
          </tr>
          <tr>
            <td align="left">-5347</td>
            <td align="left">rtsp</td>
            <td align="left">[RFCthis]</td>
          </tr>
          <tr>
            <td align="left">-5358</td>
            <td align="left">adiumxtra</td>
            <td align="left">[RFCthis]</td>
          </tr>
          <tr>
            <td align="left">-5464</td>
            <td align="left">smp</td>
            <td align="left">[RFCthis]</td>
          </tr>
          <tr>
            <td align="left">-5470</td>
            <td align="left">ms-eyecontrolspeech</td>
            <td align="left">[RFCthis]</td>
          </tr>
          <tr>
            <td align="left">-5479</td>
            <td align="left">ms-settings-language</td>
            <td align="left">[RFCthis]</td>
          </tr>
          <tr>
            <td align="left">-5491</td>
            <td align="left">mqtts</td>
            <td align="left">[RFCthis]</td>
          </tr>
          <tr>
            <td align="left">-5595</td>
            <td align="left">wyciwyg</td>
            <td align="left">[RFCthis]</td>
          </tr>
          <tr>
            <td align="left">-5596</td>
            <td align="left">hcp</td>
            <td align="left">[RFCthis]</td>
          </tr>
          <tr>
            <td align="left">-5619</td>
            <td align="left">go</td>
            <td align="left">[RFCthis]</td>
          </tr>
          <tr>
            <td align="left">-5673</td>
            <td align="left">rediss</td>
            <td align="left">[RFCthis]</td>
          </tr>
          <tr>
            <td align="left">-5683</td>
            <td align="left">ms-settings-cellular</td>
            <td align="left">[RFCthis]</td>
          </tr>
          <tr>
            <td align="left">-5743</td>
            <td align="left">ldaps</td>
            <td align="left">[RFCthis]</td>
          </tr>
          <tr>
            <td align="left">-5843</td>
            <td align="left">z39.50s</td>
            <td align="left">[RFCthis]</td>
          </tr>
          <tr>
            <td align="left">-5886</td>
            <td align="left">bitcoincash</td>
            <td align="left">[RFCthis]</td>
          </tr>
          <tr>
            <td align="left">-5960</td>
            <td align="left">ms-mobileplans</td>
            <td align="left">[RFCthis]</td>
          </tr>
          <tr>
            <td align="left">-6182</td>
            <td align="left">pttp</td>
            <td align="left">[RFCthis]</td>
          </tr>
          <tr>
            <td align="left">-6208</td>
            <td align="left">facetime</td>
            <td align="left">[RFCthis]</td>
          </tr>
          <tr>
            <td align="left">-6289</td>
            <td align="left">gtalk</td>
            <td align="left">[RFCthis]</td>
          </tr>
          <tr>
            <td align="left">-6348</td>
            <td align="left">afp</td>
            <td align="left">[RFCthis]</td>
          </tr>
          <tr>
            <td align="left">-6361</td>
            <td align="left">mss</td>
            <td align="left">[RFCthis]</td>
          </tr>
          <tr>
            <td align="left">-6426</td>
            <td align="left">ms-settings-notifications</td>
            <td align="left">[RFCthis]</td>
          </tr>
          <tr>
            <td align="left">-6448</td>
            <td align="left">psyc</td>
            <td align="left">[RFCthis]</td>
          </tr>
          <tr>
            <td align="left">-6488</td>
            <td align="left">tv</td>
            <td align="left">[RFCthis]</td>
          </tr>
          <tr>
            <td align="left">-6514</td>
            <td align="left">wifi</td>
            <td align="left">[RFCthis]</td>
          </tr>
          <tr>
            <td align="left">-6523</td>
            <td align="left">sarif</td>
            <td align="left">[RFCthis]</td>
          </tr>
          <tr>
            <td align="left">-6539</td>
            <td align="left">moz</td>
            <td align="left">[RFCthis]</td>
          </tr>
          <tr>
            <td align="left">-6659</td>
            <td align="left">ms-lockscreencomponent-config</td>
            <td align="left">[RFCthis]</td>
          </tr>
          <tr>
            <td align="left">-6716</td>
            <td align="left">cabal</td>
            <td align="left">[RFCthis]</td>
          </tr>
          <tr>
            <td align="left">-6734</td>
            <td align="left">ms-media-stream-id</td>
            <td align="left">[RFCthis]</td>
          </tr>
          <tr>
            <td align="left">-6780</td>
            <td align="left">mupdate</td>
            <td align="left">[RFCthis]</td>
          </tr>
          <tr>
            <td align="left">-6793</td>
            <td align="left">dis</td>
            <td align="left">[RFCthis]</td>
          </tr>
          <tr>
            <td align="left">-6804</td>
            <td align="left">nih</td>
            <td align="left">[RFCthis]</td>
          </tr>
          <tr>
            <td align="left">-6809</td>
            <td align="left">ms-help</td>
            <td align="left">[RFCthis]</td>
          </tr>
          <tr>
            <td align="left">-6909</td>
            <td align="left">soap.beep</td>
            <td align="left">[RFCthis]</td>
          </tr>
          <tr>
            <td align="left">-6998</td>
            <td align="left">iotdisco</td>
            <td align="left">[RFCthis]</td>
          </tr>
          <tr>
            <td align="left">-7027</td>
            <td align="left">acr</td>
            <td align="left">[RFCthis]</td>
          </tr>
          <tr>
            <td align="left">-7040</td>
            <td align="left">ms-newsandinterests</td>
            <td align="left">[RFCthis]</td>
          </tr>
          <tr>
            <td align="left">-7089</td>
            <td align="left">hxxp</td>
            <td align="left">[RFCthis]</td>
          </tr>
          <tr>
            <td align="left">-7096</td>
            <td align="left">ms-settings-location</td>
            <td align="left">[RFCthis]</td>
          </tr>
          <tr>
            <td align="left">-7125</td>
            <td align="left">soap.beeps</td>
            <td align="left">[RFCthis]</td>
          </tr>
          <tr>
            <td align="left">-7301</td>
            <td align="left">ipn</td>
            <td align="left">[RFCthis]</td>
          </tr>
          <tr>
            <td align="left">-7309</td>
            <td align="left">nntp</td>
            <td align="left">[RFCthis]</td>
          </tr>
          <tr>
            <td align="left">-7316</td>
            <td align="left">query</td>
            <td align="left">[RFCthis]</td>
          </tr>
          <tr>
            <td align="left">-7334</td>
            <td align="left">smtp</td>
            <td align="left">[RFCthis]</td>
          </tr>
          <tr>
            <td align="left">-7335</td>
            <td align="left">ms-spd</td>
            <td align="left">[RFCthis]</td>
          </tr>
          <tr>
            <td align="left">-7400</td>
            <td align="left">ni</td>
            <td align="left">[RFCthis]</td>
          </tr>
          <tr>
            <td align="left">-7403</td>
            <td align="left">ms-excel</td>
            <td align="left">[RFCthis]</td>
          </tr>
          <tr>
            <td align="left">-7421</td>
            <td align="left">ms-settings-power</td>
            <td align="left">[RFCthis]</td>
          </tr>
          <tr>
            <td align="left">-7435</td>
            <td align="left">pop</td>
            <td align="left">[RFCthis]</td>
          </tr>
          <tr>
            <td align="left">-7447</td>
            <td align="left">session</td>
            <td align="left">[RFCthis]</td>
          </tr>
          <tr>
            <td align="left">-7582</td>
            <td align="left">ms-infopath</td>
            <td align="left">[RFCthis]</td>
          </tr>
          <tr>
            <td align="left">-7701</td>
            <td align="left">ms-word</td>
            <td align="left">[RFCthis]</td>
          </tr>
          <tr>
            <td align="left">-7715</td>
            <td align="left">web+ap</td>
            <td align="left">[RFCthis]</td>
          </tr>
          <tr>
            <td align="left">-7791</td>
            <td align="left">steam</td>
            <td align="left">[RFCthis]</td>
          </tr>
          <tr>
            <td align="left">-7995</td>
            <td align="left">cstr</td>
            <td align="left">[RFCthis]</td>
          </tr>
          <tr>
            <td align="left">-8008</td>
            <td align="left">web3</td>
            <td align="left">[RFCthis]</td>
          </tr>
          <tr>
            <td align="left">-8064</td>
            <td align="left">videotex</td>
            <td align="left">[RFCthis]</td>
          </tr>
          <tr>
            <td align="left">-8069</td>
            <td align="left">nfs</td>
            <td align="left">[RFCthis]</td>
          </tr>
          <tr>
            <td align="left">-8094</td>
            <td align="left">udp</td>
            <td align="left">[RFCthis]</td>
          </tr>
          <tr>
            <td align="left">-8102</td>
            <td align="left">ed2k</td>
            <td align="left">[RFCthis]</td>
          </tr>
          <tr>
            <td align="left">-8138</td>
            <td align="left">ms-getoffice</td>
            <td align="left">[RFCthis]</td>
          </tr>
          <tr>
            <td align="left">-8203</td>
            <td align="left">sgn</td>
            <td align="left">[RFCthis]</td>
          </tr>
          <tr>
            <td align="left">-8331</td>
            <td align="left">data</td>
            <td align="left">[RFCthis]</td>
          </tr>
          <tr>
            <td align="left">-8364</td>
            <td align="left">swidpath</td>
            <td align="left">[RFCthis]</td>
          </tr>
          <tr>
            <td align="left">-8385</td>
            <td align="left">fuchsia-pkg</td>
            <td align="left">[RFCthis]</td>
          </tr>
          <tr>
            <td align="left">-8395</td>
            <td align="left">ms-screensketch</td>
            <td align="left">[RFCthis]</td>
          </tr>
          <tr>
            <td align="left">-8426</td>
            <td align="left">hxxps</td>
            <td align="left">[RFCthis]</td>
          </tr>
          <tr>
            <td align="left">-8487</td>
            <td align="left">unreal</td>
            <td align="left">[RFCthis]</td>
          </tr>
          <tr>
            <td align="left">-8555</td>
            <td align="left">ens</td>
            <td align="left">[RFCthis]</td>
          </tr>
          <tr>
            <td align="left">-8585</td>
            <td align="left">ms-settings-camera</td>
            <td align="left">[RFCthis]</td>
          </tr>
          <tr>
            <td align="left">-8619</td>
            <td align="left">stun</td>
            <td align="left">[RFCthis]</td>
          </tr>
          <tr>
            <td align="left">-8673</td>
            <td align="left">ms-stickers</td>
            <td align="left">[RFCthis]</td>
          </tr>
          <tr>
            <td align="left">-8775</td>
            <td align="left">spotify</td>
            <td align="left">[RFCthis]</td>
          </tr>
          <tr>
            <td align="left">-8860</td>
            <td align="left">starknet</td>
            <td align="left">[RFCthis]</td>
          </tr>
          <tr>
            <td align="left">-8890</td>
            <td align="left">ms-settings-emailandaccounts</td>
            <td align="left">[RFCthis]</td>
          </tr>
          <tr>
            <td align="left">-8907</td>
            <td align="left">market</td>
            <td align="left">[RFCthis]</td>
          </tr>
          <tr>
            <td align="left">-8967</td>
            <td align="left">ms-powerpoint</td>
            <td align="left">[RFCthis]</td>
          </tr>
          <tr>
            <td align="left">-9001</td>
            <td align="left">rtsps</td>
            <td align="left">[RFCthis]</td>
          </tr>
          <tr>
            <td align="left">-9064</td>
            <td align="left">p1</td>
            <td align="left">[RFCthis]</td>
          </tr>
          <tr>
            <td align="left">-9128</td>
            <td align="left">aw</td>
            <td align="left">[RFCthis]</td>
          </tr>
          <tr>
            <td align="left">-9132</td>
            <td align="left">mailserver</td>
            <td align="left">[RFCthis]</td>
          </tr>
          <tr>
            <td align="left">-9186</td>
            <td align="left">irc6</td>
            <td align="left">[RFCthis]</td>
          </tr>
          <tr>
            <td align="left">-9338</td>
            <td align="left">ms-settings-lock</td>
            <td align="left">[RFCthis]</td>
          </tr>
          <tr>
            <td align="left">-9339</td>
            <td align="left">hcap</td>
            <td align="left">[RFCthis]</td>
          </tr>
          <tr>
            <td align="left">-9350</td>
            <td align="left">drop</td>
            <td align="left">[RFCthis]</td>
          </tr>
          <tr>
            <td align="left">-9419</td>
            <td align="left">icap</td>
            <td align="left">[RFCthis]</td>
          </tr>
          <tr>
            <td align="left">-9437</td>
            <td align="left">xcon-userid</td>
            <td align="left">[RFCthis]</td>
          </tr>
          <tr>
            <td align="left">-9457</td>
            <td align="left">leaptofrogans</td>
            <td align="left">[RFCthis]</td>
          </tr>
          <tr>
            <td align="left">-9461</td>
            <td align="left">ipfs</td>
            <td align="left">[RFCthis]</td>
          </tr>
          <tr>
            <td align="left">-9479</td>
            <td align="left">bitcoin</td>
            <td align="left">[RFCthis]</td>
          </tr>
          <tr>
            <td align="left">-9555</td>
            <td align="left">apt</td>
            <td align="left">[RFCthis]</td>
          </tr>
          <tr>
            <td align="left">-9605</td>
            <td align="left">ms-whiteboard-cmd</td>
            <td align="left">[RFCthis]</td>
          </tr>
          <tr>
            <td align="left">-9669</td>
            <td align="left">ssb</td>
            <td align="left">[RFCthis]</td>
          </tr>
          <tr>
            <td align="left">-9725</td>
            <td align="left">aaas</td>
            <td align="left">[RFCthis]</td>
          </tr>
          <tr>
            <td align="left">-9734</td>
            <td align="left">ar</td>
            <td align="left">[RFCthis]</td>
          </tr>
          <tr>
            <td align="left">-9767</td>
            <td align="left">proxy</td>
            <td align="left">[RFCthis]</td>
          </tr>
          <tr>
            <td align="left">-9773</td>
            <td align="left">res</td>
            <td align="left">[RFCthis]</td>
          </tr>
          <tr>
            <td align="left">-9780</td>
            <td align="left">msrps</td>
            <td align="left">[RFCthis]</td>
          </tr>
          <tr>
            <td align="left">-9795</td>
            <td align="left">aim</td>
            <td align="left">[RFCthis]</td>
          </tr>
          <tr>
            <td align="left">-9826</td>
            <td align="left">tool</td>
            <td align="left">[RFCthis]</td>
          </tr>
          <tr>
            <td align="left">-9842</td>
            <td align="left">finger</td>
            <td align="left">[RFCthis]</td>
          </tr>
          <tr>
            <td align="left">-9900</td>
            <td align="left">turn</td>
            <td align="left">[RFCthis]</td>
          </tr>
          <tr>
            <td align="left">-9901</td>
            <td align="left">num</td>
            <td align="left">[RFCthis]</td>
          </tr>
          <tr>
            <td align="left">-9903</td>
            <td align="left">svn</td>
            <td align="left">[RFCthis]</td>
          </tr>
          <tr>
            <td align="left">-9904</td>
            <td align="left">ut2004</td>
            <td align="left">[RFCthis]</td>
          </tr>
          <tr>
            <td align="left">-9932</td>
            <td align="left">ms-visio</td>
            <td align="left">[RFCthis]</td>
          </tr>
          <tr>
            <td align="left">-10008</td>
            <td align="left">eid</td>
            <td align="left">[RFCthis]</td>
          </tr>
          <tr>
            <td align="left">-10100</td>
            <td align="left">wss</td>
            <td align="left">[RFCthis]</td>
          </tr>
          <tr>
            <td align="left">-10103</td>
            <td align="left">gizmoproject</td>
            <td align="left">[RFCthis]</td>
          </tr>
          <tr>
            <td align="left">-10172</td>
            <td align="left">dlna-playsingle</td>
            <td align="left">[RFCthis]</td>
          </tr>
          <tr>
            <td align="left">-10224</td>
            <td align="left">swh</td>
            <td align="left">[RFCthis]</td>
          </tr>
          <tr>
            <td align="left">-10337</td>
            <td align="left">dat</td>
            <td align="left">[RFCthis]</td>
          </tr>
          <tr>
            <td align="left">-10348</td>
            <td align="left">cap</td>
            <td align="left">[RFCthis]</td>
          </tr>
          <tr>
            <td align="left">-10355</td>
            <td align="left">z39.50r</td>
            <td align="left">[RFCthis]</td>
          </tr>
          <tr>
            <td align="left">-10412</td>
            <td align="left">xcon</td>
            <td align="left">[RFCthis]</td>
          </tr>
          <tr>
            <td align="left">-10430</td>
            <td align="left">gitoid</td>
            <td align="left">[RFCthis]</td>
          </tr>
          <tr>
            <td align="left">-10524</td>
            <td align="left">hydrazone</td>
            <td align="left">[RFCthis]</td>
          </tr>
          <tr>
            <td align="left">-10565</td>
            <td align="left">example</td>
            <td align="left">[RFCthis]</td>
          </tr>
          <tr>
            <td align="left">-10699</td>
            <td align="left">crid</td>
            <td align="left">[RFCthis]</td>
          </tr>
          <tr>
            <td align="left">-10717</td>
            <td align="left">teamspeak</td>
            <td align="left">[RFCthis]</td>
          </tr>
          <tr>
            <td align="left">-10743</td>
            <td align="left">elsi</td>
            <td align="left">[RFCthis]</td>
          </tr>
          <tr>
            <td align="left">-10769</td>
            <td align="left">dtmi</td>
            <td align="left">[RFCthis]</td>
          </tr>
          <tr>
            <td align="left">-10840</td>
            <td align="left">ftp</td>
            <td align="left">[RFCthis]</td>
          </tr>
          <tr>
            <td align="left">-10902</td>
            <td align="left">ms-drive-to</td>
            <td align="left">[RFCthis]</td>
          </tr>
          <tr>
            <td align="left">-10903</td>
            <td align="left">upt</td>
            <td align="left">[RFCthis]</td>
          </tr>
          <tr>
            <td align="left">-10911</td>
            <td align="left">appdata</td>
            <td align="left">[RFCthis]</td>
          </tr>
          <tr>
            <td align="left">-11039</td>
            <td align="left">callto</td>
            <td align="left">[RFCthis]</td>
          </tr>
          <tr>
            <td align="left">-11131</td>
            <td align="left">ms-remotedesktop-launch</td>
            <td align="left">[RFCthis]</td>
          </tr>
          <tr>
            <td align="left">-11139</td>
            <td align="left">dweb</td>
            <td align="left">[RFCthis]</td>
          </tr>
          <tr>
            <td align="left">-11264</td>
            <td align="left">lastfm</td>
            <td align="left">[RFCthis]</td>
          </tr>
          <tr>
            <td align="left">-11307</td>
            <td align="left">xmlrpc.beep</td>
            <td align="left">[RFCthis]</td>
          </tr>
          <tr>
            <td align="left">-11342</td>
            <td align="left">ms-whiteboard</td>
            <td align="left">[RFCthis]</td>
          </tr>
          <tr>
            <td align="left">-11465</td>
            <td align="left">first-run-pen-experience</td>
            <td align="left">[RFCthis]</td>
          </tr>
          <tr>
            <td align="left">-11473</td>
            <td align="left">webcal</td>
            <td align="left">[RFCthis]</td>
          </tr>
          <tr>
            <td align="left">-11553</td>
            <td align="left">adt</td>
            <td align="left">[RFCthis]</td>
          </tr>
          <tr>
            <td align="left">-11566</td>
            <td align="left">vemmi</td>
            <td align="left">[RFCthis]</td>
          </tr>
          <tr>
            <td align="left">-11590</td>
            <td align="left">cvs</td>
            <td align="left">[RFCthis]</td>
          </tr>
          <tr>
            <td align="left">-11629</td>
            <td align="left">taler</td>
            <td align="left">[RFCthis]</td>
          </tr>
          <tr>
            <td align="left">-11688</td>
            <td align="left">ms-inputapp</td>
            <td align="left">[RFCthis]</td>
          </tr>
          <tr>
            <td align="left">-11864</td>
            <td align="left">git</td>
            <td align="left">[RFCthis]</td>
          </tr>
          <tr>
            <td align="left">-11893</td>
            <td align="left">irc</td>
            <td align="left">[RFCthis]</td>
          </tr>
          <tr>
            <td align="left">-11936</td>
            <td align="left">ms-settings-workplace</td>
            <td align="left">[RFCthis]</td>
          </tr>
          <tr>
            <td align="left">-12171</td>
            <td align="left">blob</td>
            <td align="left">[RFCthis]</td>
          </tr>
          <tr>
            <td align="left">-12173</td>
            <td align="left">modem</td>
            <td align="left">[RFCthis]</td>
          </tr>
          <tr>
            <td align="left">-12188</td>
            <td align="left">msnim</td>
            <td align="left">[RFCthis]</td>
          </tr>
          <tr>
            <td align="left">-12268</td>
            <td align="left">iris.lwz</td>
            <td align="left">[RFCthis]</td>
          </tr>
          <tr>
            <td align="left">-12302</td>
            <td align="left">ms-sttoverlay</td>
            <td align="left">[RFCthis]</td>
          </tr>
          <tr>
            <td align="left">-12321</td>
            <td align="left">lbry</td>
            <td align="left">[RFCthis]</td>
          </tr>
          <tr>
            <td align="left">-12334</td>
            <td align="left">rmi</td>
            <td align="left">[RFCthis]</td>
          </tr>
          <tr>
            <td align="left">-12346</td>
            <td align="left">ms-restoretabcompanion</td>
            <td align="left">[RFCthis]</td>
          </tr>
          <tr>
            <td align="left">-12482</td>
            <td align="left">ms-useractivityset</td>
            <td align="left">[RFCthis]</td>
          </tr>
          <tr>
            <td align="left">-12485</td>
            <td align="left">dab</td>
            <td align="left">[RFCthis]</td>
          </tr>
          <tr>
            <td align="left">-12491</td>
            <td align="left">about</td>
            <td align="left">[RFCthis]</td>
          </tr>
          <tr>
            <td align="left">-12500</td>
            <td align="left">embedded</td>
            <td align="left">[RFCthis]</td>
          </tr>
          <tr>
            <td align="left">-12501</td>
            <td align="left">rtmp</td>
            <td align="left">[RFCthis]</td>
          </tr>
          <tr>
            <td align="left">-12526</td>
            <td align="left">ircs</td>
            <td align="left">[RFCthis]</td>
          </tr>
          <tr>
            <td align="left">-12558</td>
            <td align="left">mid</td>
            <td align="left">[RFCthis]</td>
          </tr>
          <tr>
            <td align="left">-12573</td>
            <td align="left">sip</td>
            <td align="left">[RFCthis]</td>
          </tr>
          <tr>
            <td align="left">-12593</td>
            <td align="left">ipns</td>
            <td align="left">[RFCthis]</td>
          </tr>
          <tr>
            <td align="left">-12666</td>
            <td align="left">dvx</td>
            <td align="left">[RFCthis]</td>
          </tr>
          <tr>
            <td align="left">-12706</td>
            <td align="left">android</td>
            <td align="left">[RFCthis]</td>
          </tr>
          <tr>
            <td align="left">-12747</td>
            <td align="left">wtai</td>
            <td align="left">[RFCthis]</td>
          </tr>
          <tr>
            <td align="left">-12831</td>
            <td align="left">ms-search-repair</td>
            <td align="left">[RFCthis]</td>
          </tr>
          <tr>
            <td align="left">-12838</td>
            <td align="left">microsoft.windows.camera.multipicker</td>
            <td align="left">[RFCthis]</td>
          </tr>
          <tr>
            <td align="left">-12857</td>
            <td align="left">ms-settings-screenrotation</td>
            <td align="left">[RFCthis]</td>
          </tr>
          <tr>
            <td align="left">-12879</td>
            <td align="left">rtspu</td>
            <td align="left">[RFCthis]</td>
          </tr>
          <tr>
            <td align="left">-12914</td>
            <td align="left">ms-screenclip</td>
            <td align="left">[RFCthis]</td>
          </tr>
          <tr>
            <td align="left">-12943</td>
            <td align="left">aaa</td>
            <td align="left">[RFCthis]</td>
          </tr>
          <tr>
            <td align="left">-12954</td>
            <td align="left">xmpp</td>
            <td align="left">[RFCthis]</td>
          </tr>
          <tr>
            <td align="left">-12988</td>
            <td align="left">soldat</td>
            <td align="left">[RFCthis]</td>
          </tr>
          <tr>
            <td align="left">-13041</td>
            <td align="left">lorawan</td>
            <td align="left">[RFCthis]</td>
          </tr>
          <tr>
            <td align="left">-13054</td>
            <td align="left">beshare</td>
            <td align="left">[RFCthis]</td>
          </tr>
          <tr>
            <td align="left">-13077</td>
            <td align="left">sips</td>
            <td align="left">[RFCthis]</td>
          </tr>
          <tr>
            <td align="left">-13081</td>
            <td align="left">iris.xpc</td>
            <td align="left">[RFCthis]</td>
          </tr>
          <tr>
            <td align="left">-13113</td>
            <td align="left">simpleledger</td>
            <td align="left">[RFCthis]</td>
          </tr>
          <tr>
            <td align="left">-13127</td>
            <td align="left">vsls</td>
            <td align="left">[RFCthis]</td>
          </tr>
          <tr>
            <td align="left">-13207</td>
            <td align="left">matrix</td>
            <td align="left">[RFCthis]</td>
          </tr>
          <tr>
            <td align="left">-13307</td>
            <td align="left">otpauth</td>
            <td align="left">[RFCthis]</td>
          </tr>
          <tr>
            <td align="left">-13336</td>
            <td align="left">cid</td>
            <td align="left">[RFCthis]</td>
          </tr>
          <tr>
            <td align="left">-13352</td>
            <td align="left">service</td>
            <td align="left">[RFCthis]</td>
          </tr>
          <tr>
            <td align="left">-13417</td>
            <td align="left">h323</td>
            <td align="left">[RFCthis]</td>
          </tr>
          <tr>
            <td align="left">-13438</td>
            <td align="left">ms-settings-connectabledevices</td>
            <td align="left">[RFCthis]</td>
          </tr>
          <tr>
            <td align="left">-13452</td>
            <td align="left">payto</td>
            <td align="left">[RFCthis]</td>
          </tr>
          <tr>
            <td align="left">-13463</td>
            <td align="left">ms-settings-displays-topology</td>
            <td align="left">[RFCthis]</td>
          </tr>
          <tr>
            <td align="left">-13505</td>
            <td align="left">lvlt</td>
            <td align="left">[RFCthis]</td>
          </tr>
          <tr>
            <td align="left">-13596</td>
            <td align="left">ms-walk-to</td>
            <td align="left">[RFCthis]</td>
          </tr>
          <tr>
            <td align="left">-13672</td>
            <td align="left">dns</td>
            <td align="left">[RFCthis]</td>
          </tr>
          <tr>
            <td align="left">-13730</td>
            <td align="left">quic-transport</td>
            <td align="left">[RFCthis]</td>
          </tr>
          <tr>
            <td align="left">-13762</td>
            <td align="left">paparazzi</td>
            <td align="left">[RFCthis]</td>
          </tr>
          <tr>
            <td align="left">-13766</td>
            <td align="left">ms-people</td>
            <td align="left">[RFCthis]</td>
          </tr>
          <tr>
            <td align="left">-13889</td>
            <td align="left">xri</td>
            <td align="left">[RFCthis]</td>
          </tr>
          <tr>
            <td align="left">-13894</td>
            <td align="left">onenote-cmd</td>
            <td align="left">[RFCthis]</td>
          </tr>
          <tr>
            <td align="left">-13934</td>
            <td align="left">dav</td>
            <td align="left">[RFCthis]</td>
          </tr>
          <tr>
            <td align="left">-14003</td>
            <td align="left">content-type</td>
            <td align="left">[RFCthis]</td>
          </tr>
          <tr>
            <td align="left">-14068</td>
            <td align="left">sms</td>
            <td align="left">[RFCthis]</td>
          </tr>
          <tr>
            <td align="left">-14119</td>
            <td align="left">ms-publisher</td>
            <td align="left">[RFCthis]</td>
          </tr>
          <tr>
            <td align="left">-14197</td>
            <td align="left">xfire</td>
            <td align="left">[RFCthis]</td>
          </tr>
          <tr>
            <td align="left">-14250</td>
            <td align="left">secondlife</td>
            <td align="left">[RFCthis]</td>
          </tr>
          <tr>
            <td align="left">-14260</td>
            <td align="left">ark</td>
            <td align="left">[RFCthis]</td>
          </tr>
          <tr>
            <td align="left">-14301</td>
            <td align="left">iax</td>
            <td align="left">[RFCthis]</td>
          </tr>
          <tr>
            <td align="left">-14312</td>
            <td align="left">msrp</td>
            <td align="left">[RFCthis]</td>
          </tr>
          <tr>
            <td align="left">-14475</td>
            <td align="left">swid</td>
            <td align="left">[RFCthis]</td>
          </tr>
          <tr>
            <td align="left">-14590</td>
            <td align="left">tn3270</td>
            <td align="left">[RFCthis]</td>
          </tr>
          <tr>
            <td align="left">-14596</td>
            <td align="left">ms-appinstaller</td>
            <td align="left">[RFCthis]</td>
          </tr>
          <tr>
            <td align="left">-14627</td>
            <td align="left">stuns</td>
            <td align="left">[RFCthis]</td>
          </tr>
          <tr>
            <td align="left">-14688</td>
            <td align="left">dpp</td>
            <td align="left">[RFCthis]</td>
          </tr>
          <tr>
            <td align="left">-14701</td>
            <td align="left">ms-secondary-screen-controller</td>
            <td align="left">[RFCthis]</td>
          </tr>
          <tr>
            <td align="left">-14764</td>
            <td align="left">browserext</td>
            <td align="left">[RFCthis]</td>
          </tr>
          <tr>
            <td align="left">-14820</td>
            <td align="left">chrome</td>
            <td align="left">[RFCthis]</td>
          </tr>
          <tr>
            <td align="left">-14878</td>
            <td align="left">pkcs11</td>
            <td align="left">[RFCthis]</td>
          </tr>
          <tr>
            <td align="left">-15066</td>
            <td align="left">dlna-playcontainer</td>
            <td align="left">[RFCthis]</td>
          </tr>
          <tr>
            <td align="left">-15155</td>
            <td align="left">spiffe</td>
            <td align="left">[RFCthis]</td>
          </tr>
          <tr>
            <td align="left">-15207</td>
            <td align="left">uuid-in-package</td>
            <td align="left">[RFCthis]</td>
          </tr>
          <tr>
            <td align="left">-15261</td>
            <td align="left">ms-settings-proximity</td>
            <td align="left">[RFCthis]</td>
          </tr>
          <tr>
            <td align="left">-15356</td>
            <td align="left">things</td>
            <td align="left">[RFCthis]</td>
          </tr>
          <tr>
            <td align="left">-15377</td>
            <td align="left">ms-gamebarservices</td>
            <td align="left">[RFCthis]</td>
          </tr>
          <tr>
            <td align="left">-15379</td>
            <td align="left">shc</td>
            <td align="left">[RFCthis]</td>
          </tr>
          <tr>
            <td align="left">-15547</td>
            <td align="left">ipp</td>
            <td align="left">[RFCthis]</td>
          </tr>
          <tr>
            <td align="left">-15552</td>
            <td align="left">mailto</td>
            <td align="left">[RFCthis]</td>
          </tr>
          <tr>
            <td align="left">-15558</td>
            <td align="left">ms-browser-extension</td>
            <td align="left">[RFCthis]</td>
          </tr>
          <tr>
            <td align="left">-15838</td>
            <td align="left">shttp (OBSOLETE)</td>
            <td align="left">[RFCthis]</td>
          </tr>
          <tr>
            <td align="left">-15842</td>
            <td align="left">acct</td>
            <td align="left">[RFCthis]</td>
          </tr>
          <tr>
            <td align="left">-15849</td>
            <td align="left">w3</td>
            <td align="left">[RFCthis]</td>
          </tr>
          <tr>
            <td align="left">-15869</td>
            <td align="left">wais</td>
            <td align="left">[RFCthis]</td>
          </tr>
          <tr>
            <td align="left">-15928</td>
            <td align="left">qb</td>
            <td align="left">[RFCthis]</td>
          </tr>
          <tr>
            <td align="left">-15947</td>
            <td align="left">ms-search</td>
            <td align="left">[RFCthis]</td>
          </tr>
          <tr>
            <td align="left">-16043</td>
            <td align="left">ms-settings-airplanemode</td>
            <td align="left">[RFCthis]</td>
          </tr>
          <tr>
            <td align="left">-16045</td>
            <td align="left">jar</td>
            <td align="left">[RFCthis]</td>
          </tr>
          <tr>
            <td align="left">-16069</td>
            <td align="left">tel</td>
            <td align="left">[RFCthis]</td>
          </tr>
          <tr>
            <td align="left">-16074</td>
            <td align="left">dntp</td>
            <td align="left">[RFCthis]</td>
          </tr>
          <tr>
            <td align="left">-16160</td>
            <td align="left">chrome-extension</td>
            <td align="left">[RFCthis]</td>
          </tr>
          <tr>
            <td align="left">-16193</td>
            <td align="left">cast</td>
            <td align="left">[RFCthis]</td>
          </tr>
          <tr>
            <td align="left">-16326</td>
            <td align="left">view-source</td>
            <td align="left">[RFCthis]</td>
          </tr>
          <tr>
            <td align="left">-16356</td>
            <td align="left">im</td>
            <td align="left">[RFCthis]</td>
          </tr>
          <tr>
            <td align="left">-16358</td>
            <td align="left">resource</td>
            <td align="left">[RFCthis]</td>
          </tr>
          <tr>
            <td align="left">-16378</td>
            <td align="left">ms-calculator</td>
            <td align="left">[RFCthis]</td>
          </tr>
          <tr>
            <td align="left">-16380</td>
            <td align="left">news</td>
            <td align="left">[RFCthis]</td>
          </tr>
          <tr>
            <td align="left">-16415</td>
            <td align="left">wcr</td>
            <td align="left">[RFCthis]</td>
          </tr>
          <tr>
            <td align="left">-16523</td>
            <td align="left">casts</td>
            <td align="left">[RFCthis]</td>
          </tr>
          <tr>
            <td align="left">-16689</td>
            <td align="left">ms-access</td>
            <td align="left">[RFCthis]</td>
          </tr>
          <tr>
            <td align="left">-16723</td>
            <td align="left">grd</td>
            <td align="left">[RFCthis]</td>
          </tr>
          <tr>
            <td align="left">-16750</td>
            <td align="left">rsync</td>
            <td align="left">[RFCthis]</td>
          </tr>
          <tr>
            <td align="left">-16773</td>
            <td align="left">lpa</td>
            <td align="left">[RFCthis]</td>
          </tr>
          <tr>
            <td align="left">-16850</td>
            <td align="left">afs</td>
            <td align="left">[RFCthis]</td>
          </tr>
          <tr>
            <td align="left">-16874</td>
            <td align="left">bb</td>
            <td align="left">[RFCthis]</td>
          </tr>
          <tr>
            <td align="left">-16884</td>
            <td align="left">ham</td>
            <td align="left">[RFCthis]</td>
          </tr>
          <tr>
            <td align="left">-16926</td>
            <td align="left">info</td>
            <td align="left">[RFCthis]</td>
          </tr>
          <tr>
            <td align="left">-16972</td>
            <td align="left">ms-meetnow</td>
            <td align="left">[RFCthis]</td>
          </tr>
          <tr>
            <td align="left">-17117</td>
            <td align="left">ms-project</td>
            <td align="left">[RFCthis]</td>
          </tr>
          <tr>
            <td align="left">-17172</td>
            <td align="left">ethereum</td>
            <td align="left">[RFCthis]</td>
          </tr>
          <tr>
            <td align="left">-17225</td>
            <td align="left">thismessage</td>
            <td align="left">[RFCthis]</td>
          </tr>
          <tr>
            <td align="left">-17226</td>
            <td align="left">vnc</td>
            <td align="left">[RFCthis]</td>
          </tr>
          <tr>
            <td align="left">-17232</td>
            <td align="left">snews</td>
            <td align="left">[RFCthis]</td>
          </tr>
          <tr>
            <td align="left">-17245</td>
            <td align="left">sieve</td>
            <td align="left">[RFCthis]</td>
          </tr>
          <tr>
            <td align="left">-17269</td>
            <td align="left">feedready</td>
            <td align="left">[RFCthis]</td>
          </tr>
          <tr>
            <td align="left">-17271</td>
            <td align="left">mt</td>
            <td align="left">[RFCthis]</td>
          </tr>
          <tr>
            <td align="left">-17288</td>
            <td align="left">ws</td>
            <td align="left">[RFCthis]</td>
          </tr>
          <tr>
            <td align="left">-17338</td>
            <td align="left">ms-transit-to</td>
            <td align="left">[RFCthis]</td>
          </tr>
          <tr>
            <td align="left">-17346</td>
            <td align="left">ventrilo</td>
            <td align="left">[RFCthis]</td>
          </tr>
          <tr>
            <td align="left">-17357</td>
            <td align="left">iris</td>
            <td align="left">[RFCthis]</td>
          </tr>
        </tbody>
      </table>
      <t>The assignments from this table can be extracted from the XML form of
this document (when stored in a file "this.xml") into CSV form
<xref target="RFC4180"/> using this short Ruby program:</t>
      <sourcecode type="ruby"><![CDATA[
require 'rexml/document'; include REXML
XPath.each(Document.new(File.read("this.xml")),"//tr") {|row|
  puts XPath.each(row,"td").map{|d|d.text()}[0..1].join(",")}
]]></sourcecode>
    </section>
    <section anchor="the-small-print">
      <name>The Small Print</name>
      <t>This appendix lists a few corner cases of URI semantics that
implementers of CRIs need to be aware of, but that are not
representative of the normal operation of CRIs.</t>
      <ol spacing="normal" type="SP%d." group="SP"><li anchor="sp-initial-empty">Initial (Lone/Leading) Empty Path Segments:</li>
      </ol>
      <ul spacing="normal">
        <li>
          <em>Lone empty path segments:</em>
  As per <xref target="RFC3986"/>, <tt>s://x</tt> is distinct from <tt>s://x/</tt> -- i.e., a URI
  with an empty path (<tt>[]</tt> in CRI) is different from one with a lone
  empty path segment (<tt>[""]</tt>).
  However, in HTTP and CoAP, they are implicitly aliased (for CoAP, in
  item 8 of <xref section="6.4" sectionFormat="of" target="RFC7252"/>).
  As per item 7 of <xref section="6.5" sectionFormat="of" target="RFC7252"/>, recomposition of a URI
  without Uri-Path Options from the other URI-related CoAP Options
  produces <tt>s://x/</tt>, not <tt>s://x</tt> -- CoAP prefers the lone empty path
  segment form.
  Similarly, after discussing HTTP semantics, <xref section="6.2.3" sectionFormat="of" target="RFC3986"/> states:</li>
      </ul>
      <blockquote>
        <t>In general, a URI that uses the generic syntax for authority with an
  empty path should be normalized to a path of "/".</t>
      </blockquote>
      <ul spacing="normal">
        <li>
          <em>Leading empty path segments without authority</em>:
  Somewhat related, note also that URIs and URI references that do not
  carry an authority cannot represent initial empty path segments
  (i.e., that are followed by further path segments): <tt>s://x//foo</tt>
  works, but in a <tt>s://foo</tt> URI or an (absolute-path) URI reference of
  the form <tt>//foo</tt> the double slash would be mis-parsed as leading in
  to an authority.</li>
      </ul>
      <ol spacing="normal" type="SP%d." group="SP"><li anchor="sp-constraints">
          <t>Constraints (<xref target="constraints"/>) of CRIs/basic CRIs  </t>
          <t>
While most URIs in everyday use can be converted to CRIs and back to URIs
matching the input after syntax-based normalization of the URI,
these URIs illustrate the constraints by example:  </t>
          <ul spacing="normal">
            <li>
              <t><tt>https://host%ffname</tt>, <tt>https://example.com/x?data=%ff</tt>      </t>
              <t>
All URI components must, after percent decoding, be valid UTF-8 encoded text.
Bytes that are not valid UTF-8 show up, for example, in BitTorrent web seeds.
<!-- <https://www.bittorrent.org/beps/bep_0017.html>, not sure this warrants an informative reference -->
              </t>
            </li>
            <li>
              <t><tt>https://example.com/component%3bone;component%3btwo</tt>, <tt>http://example.com/component%3dequals</tt>      </t>
              <t>
While delimiters can be used in an escaped and unescaped form in URIs with generally distinct meanings,
basic CRIs (i.e., without percent-encoded text <xref target="pet"/>) only support one escapable delimiter character per component,
which is the delimiter by which the component is split up in the CRI.      </t>
              <t>
Note that the separators <tt>.</tt> (for authority parts), <tt>/</tt> (for paths), <tt>&amp;</tt> (for query parameters)
are special in that they are syntactic delimiters of their respective components in CRIs.
Thus, the following examples <em>are</em> convertible to basic CRIs:      </t>
              <t><tt>https://interior%2edot/</tt>      </t>
              <t><tt>https://example.com/path%2fcomponent/second-component</tt>      </t>
              <t><tt>https://example.com/x?ampersand=%26&amp;questionmark=?</tt></t>
            </li>
            <li>
              <t><tt>https://alice@example.com/</tt>      </t>
              <t>
The user information can be expressed in CRIs if the "userinfo"
feature is present.  The URI <tt>https://@example.com</tt> is
represented as <tt>[-4, [false, "", "example", "com"]]</tt>; the <tt>false</tt>
serves as a marker that the next element is the userinfo.      </t>
              <t>
The rules do not cater for unencoded ":" in userinfo, which is
commonly considered a deprecated inclusion of a literal password.</t>
            </li>
          </ul>
        </li>
      </ol>
    </section>
    <section removeInRFC="true" anchor="change-log">
      <name>Change Log</name>
      <t>Changes from -08 to -09</t>
      <ul spacing="normal">
        <li>Identify more esoteric features with a CDDL ".feature".</li>
        <li>Clarify that well-formedness requires removing trailing nulls.</li>
        <li>Fragments can contain PET.</li>
        <li>Percent-encoded text in PET is treated as byte strings.</li>
        <li>
          <t>URIs with an authority but a completely empty path (e.g.,
<tt>http://example.com</tt>): CRIs with an authority component no longer
always produce at least a slash in the path component.  </t>
          <t>
For generic schemes, the conversion of <tt>scheme://example.com</tt> to a
CRI is now possible
because CRI produces a URI with an authority not followed by a slash
following the updated rules of <xref target="cri-to-uri"/>.
Schemes like http and coap do not distinguish between the empty path
and the path containing a single slash when an authority is set (as
recommended in <xref target="RFC3986"/>).
For these schemes, that equivalence allows implementations to
convert the just-a-slash URI to a CRI with a zero length path array
(which, however, when converted back, does not produce a slash after
the authority).  </t>
          <t>
(Add an appendix "the small print" for more detailed discussion of
pesky corner cases like this.)</t>
        </li>
      </ul>
      <t>Changes from -07 to -08</t>
      <ul spacing="normal">
        <li>Fix the encoding of NOAUTH-NOSLASH / NOAUTH-LEADINGSLASH</li>
        <li>Add URN and DID schemes, add example.</li>
        <li>Add PET</li>
        <li>Remove hopeless attempt to encode "remote trailing nulls" rule in
CDDL (which is not a transformation language).</li>
      </ul>
      <t>Changes from -06 to -07</t>
      <ul spacing="normal">
        <li>More explicitly discuss constraints (<xref target="constraints"/>), add examples (<xref target="sp-constraints"/>).</li>
        <li>Make CDDL more explicit about special simple values.</li>
        <li>Lots of gratuitous changes from XML2RFC redefinition of <tt>&lt;tt&gt;</tt>
semantics.</li>
      </ul>
      <t>Changes from -05 to -06</t>
      <ul spacing="normal">
        <li>
          <t>rework authority:
          </t>
          <ul spacing="normal">
            <li>split reg-names at dots;</li>
            <li>add optional zone identifiers <xref target="RFC6874"/> to IP addresses</li>
          </ul>
        </li>
      </ul>
      <t>Changes from -04 to -05</t>
      <ul spacing="normal">
        <li>Simplify CBOR structure.</li>
        <li>Add implementation status section.</li>
      </ul>
      <t>Changes from -03 to -04:</t>
      <ul spacing="normal">
        <li>Minor editorial improvements.</li>
        <li>Renamed path.type/path-type to discard.</li>
        <li>Renamed option to section, substructured into items.</li>
        <li>Simplified the table "resolution-variables".</li>
        <li>Use the CBOR structure inspired by Jim Schaad's proposals.</li>
      </ul>
      <t>Changes from -02 to -03:</t>
      <ul spacing="normal">
        <li>Expanded the set of supported schemes (#3).</li>
        <li>Specified creation, normalization and comparison (#9).</li>
        <li>Clarified the default value of the <tt>path.type</tt> option (#33).</li>
        <li>Removed the <tt>append-relation</tt> path.type option (#41).</li>
        <li>Renumbered the remaining path.types.</li>
        <li>Renumbered the option numbers.</li>
        <li>Restructured the document.</li>
        <li>Minor editorial improvements.</li>
      </ul>
      <t>Changes from -01 to -02:</t>
      <ul spacing="normal">
        <li>Changed the syntax of schemes to exclude upper case characters (#13).</li>
        <li>Minor editorial improvements (#34 #37).</li>
      </ul>
      <t>Changes from -00 to -01:</t>
      <ul spacing="normal">
        <li>None.</li>
      </ul>
    </section>
    <section numbered="false" anchor="acknowledgements">
      <name>Acknowledgements</name>
      <t>CRIs were developed by <contact fullname="Klaus Hartke"/> for use in the Constrained
RESTful Application Language (CoRAL).
The current author team is completing this work with a view to achieve
good integration with the potential use cases, both inside and outside of CoRAL.</t>
      <t>Thanks to
<contact fullname="Christian Amsüss"/>,
<contact fullname="Thomas Fossati"/>,
<contact fullname="Ari Keränen"/>,
<contact fullname="Jim Schaad"/>,
<contact fullname="Dave Thaler"/> and
<contact fullname="Marco Tiloca"/>
for helpful comments and discussions that have shaped the
document.</t>
      <!--  LocalWords:  CRI normalizations dereferencing dereference CRIs
 -->
<!--  LocalWords:  untrusted subcomponent
 -->

</section>
    <section anchor="contributors" numbered="false" toc="include" removeInRFC="false">
      <name>Contributors</name>
      <contact initials="K." surname="Hartke" fullname="Klaus Hartke">
        <organization>Ericsson</organization>
        <address>
          <postal>
            <street>Torshamnsgatan 23</street>
            <city>Stockholm</city>
            <code>16483</code>
            <country>Sweden</country>
          </postal>
          <email>klaus.hartke@ericsson.com</email>
        </address>
      </contact>
      <contact initials="C." surname="Amsüss" fullname="Christian Amsüss">
        <organization/>
        <address>
          <postal>
            <street>Hollandstr. 12/4</street>
            <city>Vienna</city>
            <code>1020</code>
            <country>Austria</country>
          </postal>
          <email>christian@amsuess.com</email>
        </address>
      </contact>
    </section>
  </back>
  <!-- ##markdown-source:
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
Zybd/Q0ppJarefj/AO8YN9njDQEA

-->

</rfc>
