<?xml version='1.0' encoding='utf-8'?>
<!DOCTYPE rfc [
  <!ENTITY nbsp    "&#160;">
  <!ENTITY zwsp   "&#8203;">
  <!ENTITY nbhy   "&#8209;">
  <!ENTITY wj     "&#8288;">
]>
<?xml-stylesheet type="text/xsl" href="rfc2629.xslt" ?>
<!-- generated by https://github.com/cabo/kramdown-rfc version 1.7.35 (Ruby 4.0.2) -->
<rfc xmlns:xi="http://www.w3.org/2001/XInclude" ipr="trust200902" docName="draft-bormann-cbor-edn-app-ext-00" category="std" consensus="true" submissionType="IETF" tocInclude="true" sortRefs="true" symRefs="true" version="3">
  <!-- xml2rfc v2v3 conversion 3.32.0 -->
  <front>
    <title abbrev="EDN Application Extensions">Additional Application Extensions for the CBOR Extended Diagnostic Notation (EDN)</title>
    <seriesInfo name="Internet-Draft" value="draft-bormann-cbor-edn-app-ext-00"/>
    <author initials="C." surname="Bormann" fullname="Carsten Bormann">
      <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>
    <date year="2026" month="April" day="10"/>
    <keyword>Internet-Draft</keyword>
    <abstract>
      <?line 52?>

<t>The CBOR Extended Diagnostic Notation (EDN), to be standardized in
draft-ietf-cbor-edn-literals,
provides "application extensions" as its main language extension point.</t>
      <t>A number of application extensions are already defined in
draft-ietf-cbor-edn-literals itself and in draft-ietf-cbor-edn-e-ref.
The present document defines a number of additional application
extensions that have been batched up as a next step after completing
these specifications.
(<cref anchor="chore">Chore:</cref> Briefly List extensions.)</t>
      <t><cref anchor="status">This -00 of an individual submission shows the approximate
shape the first "batch" of application extensions could have, plus
a number of registrations that could go into this batch.
The latter provides a basis for a technical discussion of those
registrations.</cref></t>
    </abstract>
    <note removeInRFC="true">
      <name>About This Document</name>
      <t>
        The latest revision of this draft can be found at <eref target="https://cabo.github.io/edn-app-ext/"/>.
        Status information for this document may be found at <eref target="https://datatracker.ietf.org/doc/draft-bormann-cbor-edn-app-ext/"/>.
      </t>
      <t>
        Discussion of this document takes place on the
        cbor Working Group mailing list (<eref target="mailto:cbor@ietf.org"/>),
        which is archived at <eref target="https://mailarchive.ietf.org/arch/browse/cbor/"/>.
        Subscribe at <eref target="https://www.ietf.org/mailman/listinfo/cbor/"/>.
      </t>
      <t>Source for this draft and an issue tracker can be found at
        <eref target="https://github.com/cabo/edn-app-ext"/>.</t>
    </note>
  </front>
  <middle>
    <?line 73?>

<section anchor="intro">
      <name>Introduction</name>
      <t>(See abstract.)</t>
      <table anchor="tbl-new">
        <name>Additional EDN application extensions defined in this document</name>
        <thead>
          <tr>
            <th align="left">Name</th>
            <th align="left">Purpose</th>
          </tr>
        </thead>
        <tbody>
          <tr>
            <td align="left">same</td>
            <td align="left">Multiple literals for the same item, to be checked against each other</td>
          </tr>
          <tr>
            <td align="left">bytes</td>
            <td align="left">Reinterpret text string as byte string</td>
          </tr>
          <tr>
            <td align="left">float</td>
            <td align="left">Provide IEEE754-oriented literals for more floating point values</td>
          </tr>
          <tr>
            <td align="left">tbd b32/h32/c32?</td>
            <td align="left">Create byte string from base32 representation, possibly beyond the two variants defined in <xref target="RFC4648"/></td>
          </tr>
          <tr>
            <td align="left">tbd b45</td>
            <td align="left">Create byte string from base45 representation <xref target="RFC9285"/></td>
          </tr>
        </tbody>
      </table>
      <t><cref anchor="discuss">Discuss:</cref> We should also add application extensions for text
generation from bytes, such as b64c and b64u, along the lines of <xref target="RFC9741"/>.</t>
      <section anchor="conventions-and-terminology">
        <name>Conventions and Terminology</name>
        <t>This specification uses terminology from <xref target="I-D.ietf-cbor-edn-literals"/>.
In particular, with respect to control operators, "target" refers to
the left-hand side operand, and "controller" to the right-hand side operand.
"Tool" refers to tools that produce, consume, or otherwise process EDN.
Note also that the data model underlying CBOR provides for text
strings as well as byte strings as two separate types, which are
then collectively referred to as "strings".</t>
        <t>The term ABNF in this specification stands for the combination of
<xref target="STD68"/> and <xref target="RFC7405"/>, i.e., ABNF defined in this document allows use
of the case-sensitive extensions defined in <xref target="RFC7405"/>.</t>
        <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 <xref target="BCP14"/> (<xref target="RFC2119"/>) (<xref target="RFC8174"/>) when, and only when, they
appear in all capitals, as shown here.</t>
        <?line -18?>

</section>
    </section>
    <section anchor="application-extensions">
      <name>Application Extensions</name>
      <section anchor="same-multiple-literals-to-be-checked-against-each-other">
        <name>same: multiple literals to be checked against each other</name>
        <t>The "<tt>same</tt>" application extension receives a sequence of one or more
data items and throws an error if these data items are not the same.</t>
        <t>Example:</t>
        <artwork><![CDATA[=============== NOTE: '\' line wrapping per RFC 8792 ================

$ edn-abnf -afloat,same -e "same<< float'47110815', 37128.08203125, \
                                                   0x1.22102ap+15 >>"
37128.08203125
$ edn-abnf -afloat,same -e "same<< float'47110815', 37128.08203126 >\
                                                                   >"
** cbor-diagnostic: same<<>>: 37128.08203125 not same as 37128.\
                                             08203126: Argument Error
$ edn-abnf -asame -e "same<< h'a10101', <<{/alg/ 1: 1 /AES-GCM 128 /\
                                                              }>> >>"
h'A10101'
$ edn-abnf -asame -e "same<<1>>" # trivially true
1
]]></artwork>
      </section>
      <section anchor="bytes-reinterpret-text-string-as-byte-string">
        <name>bytes: Reinterpret text string as byte string</name>
        <t>The "<tt>bytes</tt>" application extension receives a sequence of zero or more
strings (throwing an error if any of these data items are not text or
byte strings), concatenates their byte content and yields the
concatenation as a byte string.</t>
        <t>Examples:</t>
        <artwork><![CDATA[$ edn-abnf -abytes -e 'bytes<<>>'
h''
$ edn-abnf -abytes -e 'bytes`text1`'
h'7465787431'
$ edn-abnf -abytes -e 'bytes<<"1", "2">>'
h'3132'
$ edn-abnf -abytes -e 'bytes<<"ä", h'"'2f'"'>>'
h'C3A42F'
$ edn-abnf -abytes -e 'bytes<<"ä", h'"'2f'"'>>' | diag2diag.rb -tu
'ä/'
]]></artwork>
      </section>
      <section anchor="float-ieee754-oriented-literals-for-more-floating-point-values">
        <name>float: IEEE754-oriented literals for more floating point values</name>
        <t>The "<tt>float</tt>" application extension enables the notation of 2-byte,
4-byte, and 8-byte byte strings as hex literals (like the <tt>h</tt>
application prefix).
The application-oriented literal is interpreted as an encoded data item
prefixing the byte string by a single byte 0xF9 (binary16), 0xFA
(binary32), and 0xFB (binary64), respectively, would be.</t>
        <t>Example:</t>
        <artwork><![CDATA[=============== NOTE: '\' line wrapping per RFC 8792 ================

$ edn-abnf -afloat -e "[float'fe00', float'47110815']" -tpretty
82             # array(2)
   F9 FE00     # primitive(65024)
   FA 47110815 # primitive(1192298517)
$ edn-abnf -afloat,same -e "same<< float'47110815', 37128.08203125 >\
                                                                   >"
37128.08203125
]]></artwork>
      </section>
      <section anchor="tbd-b32h32c32-create-byte-string-from-base32-representation">
        <name>tbd b32/h32/c32?: Create byte string from base32 representation</name>
        <t><cref anchor="todo">TO BE DONE:</cref> define, possibly beyond the two variants defined in <xref target="RFC4648"/>; watch <xref target="I-D.josefsson-rfc4648bis"/>.</t>
      </section>
      <section anchor="tbd-b45-create-byte-string-from-base45-representation">
        <name>tbd b45: Create byte string from base45 representation</name>
        <t><cref anchor="todo_1">TO BE DONE:</cref> define based on <xref target="RFC9285"/></t>
      </section>
    </section>
    <section removeInRFC="true" anchor="implementation-status">
      <name>Implementation Status</name>
      <!-- RFC7942 -->

<t>This section records the status of known implementations of the
protocol defined by this specification at the time of posting of
this Internet-Draft, and is based on a proposal described in
<xref target="RFC7942"/>.  The description of implementations in this section is
intended to assist the IETF in its decision processes in
progressing drafts to RFCs.  Please note that the listing of any
individual implementation here does not imply endorsement by the
IETF.  Furthermore, no effort has been spent to verify the
information presented here that was supplied by IETF contributors.
This is not intended as, and must not be construed to be, a
catalog of available implementations or their features.  Readers
are advised to note that other implementations may exist.</t>
      <t>According to <xref target="RFC7942"/>, "this will allow reviewers and working
groups to assign due consideration to documents that have the
benefit of running code, which may serve as evidence of valuable
experimentation and feedback that have made the implemented
protocols more mature.  It is up to the individual working groups
to use this information as they see fit".
<?line -20?>
      </t>
      <section anchor="implementation-1">
        <name>Implementation 1</name>
        <t>The "<tt>float</tt>" application extension is implemented in
<eref target="https://cbor.me"/> and can be enabled (<tt>–‍afloat</tt>) in the cbor
diagnostic tools (<tt>cbor-diag</tt> gem) and the <tt>edn-abnf</tt> gem.<br/>
At the time of writing, the "<tt>same</tt>" and "<tt>bytes</tt>" application
extensions  (<tt>–‍asame</tt>,  <tt>–‍abytes</tt>) are only available in the gems.</t>
      </section>
      <section anchor="implementation-2">
        <name>Implementation 2</name>
        <t>The <tt>float</tt> application extension is implemented in the JavaScript
tools that come with the CBOR test vectors project <eref target="https://github.com/cbor-wg/cbor-test-vectors/blob/main/check/files.test.js"/>.</t>
      </section>
    </section>
    <section anchor="security-considerations">
      <name>Security considerations</name>
      <t>The security considerations of <xref target="I-D.ietf-cbor-edn-literals"/> apply.</t>
      <t><cref anchor="todo_2">TO BE DONE:</cref> List any specific security considerations that apply to
specific application extensions.</t>
    </section>
    <section anchor="iana-considerations">
      <name>IANA considerations</name>
      <t><cref anchor="todo_3">TO BE DONE:</cref></t>
    </section>
  </middle>
  <back>
    <references anchor="sec-combined-references">
      <name>References</name>
      <references anchor="sec-normative-references">
        <name>Normative References</name>
        <reference anchor="I-D.ietf-cbor-edn-literals">
          <front>
            <title>CBOR Extended Diagnostic Notation (EDN)</title>
            <author fullname="Carsten Bormann" initials="C." surname="Bormann">
              <organization>Universität Bremen TZI</organization>
            </author>
            <date day="6" month="April" year="2026"/>
            <abstract>
              <t>   This document formalizes and consolidates the definition of the
   Extended Diagnostic Notation (EDN) of the Concise Binary Object
   Representation (CBOR), addressing implementer experience.

   Replacing EDN's previous informal descriptions, it updates RFC 8949,
   obsoleting its Section 8, and RFC 8610, obsoleting its Appendix G.

   It also specifies registry-based extension points and uses them to
   support text representations such as of epoch-based dates/times and
   of IP addresses and prefixes.


   // (This cref will be removed by the RFC editor:) The present -22 is
   // intended to present a complete specification that can be used to
   // confirm the results of the 2026-04-01 CBOR interim.  This includes
   // extending inline comments to encompass C-style comments, and end-
   // of-line comments to encompass C++-style comments.

              </t>
            </abstract>
          </front>
          <seriesInfo name="Internet-Draft" value="draft-ietf-cbor-edn-literals-22"/>
        </reference>
        <reference anchor="IANA.cbor-diagnostic-notation">
          <front>
            <title>*** BROKEN REFERENCE ***</title>
            <author>
              <organization/>
            </author>
            <date/>
          </front>
        </reference>
        <referencegroup anchor="STD68" target="https://www.rfc-editor.org/info/std68">
          <reference anchor="RFC5234" target="https://www.rfc-editor.org/info/rfc5234">
            <front>
              <title>Augmented BNF for Syntax Specifications: ABNF</title>
              <author fullname="D. Crocker" initials="D." role="editor" surname="Crocker"/>
              <author fullname="P. Overell" initials="P." surname="Overell"/>
              <date month="January" year="2008"/>
              <abstract>
                <t>Internet technical specifications often need to define a formal syntax. Over the years, a modified version of Backus-Naur Form (BNF), called Augmented BNF (ABNF), has been popular among many Internet specifications. The current specification documents ABNF. It balances compactness and simplicity with reasonable representational power. The differences between standard BNF and ABNF involve naming rules, repetition, alternatives, order-independence, and value ranges. This specification also supplies additional rule definitions and encoding for a core lexical analyzer of the type common to several Internet specifications. [STANDARDS-TRACK]</t>
              </abstract>
            </front>
            <seriesInfo name="STD" value="68"/>
            <seriesInfo name="RFC" value="5234"/>
            <seriesInfo name="DOI" value="10.17487/RFC5234"/>
          </reference>
        </referencegroup>
        <reference anchor="RFC7405">
          <front>
            <title>Case-Sensitive String Support in ABNF</title>
            <author fullname="P. Kyzivat" initials="P." surname="Kyzivat"/>
            <date month="December" year="2014"/>
            <abstract>
              <t>This document extends the base definition of ABNF (Augmented Backus-Naur Form) to include a way to specify US-ASCII string literals that are matched in a case-sensitive manner.</t>
            </abstract>
          </front>
          <seriesInfo name="RFC" value="7405"/>
          <seriesInfo name="DOI" value="10.17487/RFC7405"/>
        </reference>
        <reference anchor="RFC4648">
          <front>
            <title>The Base16, Base32, and Base64 Data Encodings</title>
            <author fullname="S. Josefsson" initials="S." surname="Josefsson"/>
            <date month="October" year="2006"/>
            <abstract>
              <t>This document describes the commonly used base 64, base 32, and base 16 encoding schemes. It also discusses the use of line-feeds in encoded data, use of padding in encoded data, use of non-alphabet characters in encoded data, use of different encoding alphabets, and canonical encodings. [STANDARDS-TRACK]</t>
            </abstract>
          </front>
          <seriesInfo name="RFC" value="4648"/>
          <seriesInfo name="DOI" value="10.17487/RFC4648"/>
        </reference>
        <reference anchor="I-D.josefsson-rfc4648bis">
          <front>
            <title>The Base16, Base32, and Base64 Data Encodings</title>
            <author fullname="Simon Josefsson" initials="S." surname="Josefsson">
         </author>
            <date day="11" month="October" year="2025"/>
            <abstract>
              <t>   This document describes the commonly used base 64, base 32, and base
   16 encoding schemes.  It also discusses the use of line-feeds in
   encoded data, use of padding in encoded data, use of non-alphabet
   characters in encoded data, use of different encoding alphabets, and
   canonical encodings.  This document obsoletes RFC 4648 and changes
   the status to Internet Standard.

              </t>
            </abstract>
          </front>
          <seriesInfo name="Internet-Draft" value="draft-josefsson-rfc4648bis-01"/>
        </reference>
        <reference anchor="RFC9285">
          <front>
            <title>The Base45 Data Encoding</title>
            <author fullname="P. Fältström" initials="P." surname="Fältström"/>
            <author fullname="F. Ljunggren" initials="F." surname="Ljunggren"/>
            <author fullname="D.W. van Gulik" initials="D.W." surname="van Gulik"/>
            <date month="August" year="2022"/>
            <abstract>
              <t>This document describes the Base45 encoding scheme, which is built upon the Base64, Base32, and Base16 encoding schemes.</t>
            </abstract>
          </front>
          <seriesInfo name="RFC" value="9285"/>
          <seriesInfo name="DOI" value="10.17487/RFC9285"/>
        </reference>
        <reference anchor="RFC9741">
          <front>
            <title>Concise Data Definition Language (CDDL): Additional Control Operators for the Conversion and Processing of Text</title>
            <author fullname="C. Bormann" initials="C." surname="Bormann"/>
            <date month="March" year="2025"/>
            <abstract>
              <t>The Concise Data Definition Language (CDDL), standardized in RFC 8610, provides "control operators" as its main language extension point. RFCs have added to this extension point in both an application-specific and a more general way.</t>
              <t>The present document defines a number of additional generally applicable control operators for text conversion (bytes, integers, printf-style formatting, and JSON) and for an operation on text.</t>
            </abstract>
          </front>
          <seriesInfo name="RFC" value="9741"/>
          <seriesInfo name="DOI" value="10.17487/RFC9741"/>
        </reference>
        <reference anchor="IEEE754" target="https://ieeexplore.ieee.org/document/8766229">
          <front>
            <title>IEEE Standard for Floating-Point Arithmetic</title>
            <author>
              <organization>IEEE</organization>
            </author>
            <date/>
          </front>
          <seriesInfo name="IEEE Std" value="754-2019"/>
          <seriesInfo name="DOI" value="10.1109/IEEESTD.2019.8766229"/>
        </reference>
        <referencegroup anchor="BCP14" target="https://www.rfc-editor.org/info/bcp14">
          <reference anchor="RFC2119" target="https://www.rfc-editor.org/info/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" target="https://www.rfc-editor.org/info/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>
        </referencegroup>
      </references>
      <references anchor="sec-informative-references">
        <name>Informative References</name>
        <reference anchor="RFC7942">
          <front>
            <title>Improving Awareness of Running Code: The Implementation Status Section</title>
            <author fullname="Y. Sheffer" initials="Y." surname="Sheffer"/>
            <author fullname="A. Farrel" initials="A." surname="Farrel"/>
            <date month="July" year="2016"/>
            <abstract>
              <t>This document describes a simple process that allows authors of Internet-Drafts to record the status of known implementations by including an Implementation Status section. This will allow reviewers and working groups to assign due consideration to documents that have the benefit of running code, which may serve as evidence of valuable experimentation and feedback that have made the implemented protocols more mature.</t>
              <t>This process is not mandatory. Authors of Internet-Drafts are encouraged to consider using the process for their documents, and working groups are invited to think about applying the process to all of their protocol specifications. This document obsoletes RFC 6982, advancing it to a Best Current Practice.</t>
            </abstract>
          </front>
          <seriesInfo name="BCP" value="205"/>
          <seriesInfo name="RFC" value="7942"/>
          <seriesInfo name="DOI" value="10.17487/RFC7942"/>
        </reference>
      </references>
    </references>
    <?line 254?>

<section numbered="false" anchor="acknowledgements">
      <name>Acknowledgements</name>
    </section>
  </back>
  <!-- ##markdown-source:
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
VhEj5TDShj7E1mbSfXlkn/riv473FQZEIQAA

-->

</rfc>
