<?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.39 (Ruby 3.2.2) -->
<rfc xmlns:xi="http://www.w3.org/2001/XInclude" ipr="trust200902" docName="draft-thomson-rswg-syntax-change-00" category="info" submissionType="editorial" updates="7990" tocInclude="true" sortRefs="true" symRefs="true" version="3">
  <!-- xml2rfc v2v3 conversion 3.17.4 -->
  <front>
    <title>Changing XML Syntax for RFCs</title>
    <seriesInfo name="Internet-Draft" value="draft-thomson-rswg-syntax-change-00"/>
    <author fullname="Martin Thomson">
      <organization>Mozilla</organization>
      <address>
        <email>mt@lowentropy.net</email>
      </address>
    </author>
    <date year="2023" month="July" day="25"/>
    <area>RFC Editor</area>
    <workgroup>RFC Series Working Group</workgroup>
    <keyword>next generation</keyword>
    <keyword>unicorn</keyword>
    <keyword>sparkling distributed ledger</keyword>
    <abstract>
      <?line 36?>

<t>The authoritative version of RFCs are published in an XML format.  This format
is chosen for its ability to capture semantic details.  A high-level process is
described for the revision of the RFC XML format.</t>
    </abstract>
    <note removeInRFC="true">
      <name>About This Document</name>
      <t>
        The latest revision of this draft can be found at <eref target="https://martinthomson.github.io/rfc-syntax-change/draft-thomson-rswg-syntax-change.html"/>.
        Status information for this document may be found at <eref target="https://datatracker.ietf.org/doc/draft-thomson-rswg-syntax-change/"/>.
      </t>
      <t>
        Discussion of this document takes place on the
        RFC Series Working Group Editorial Stream Working Group mailing list (<eref target="mailto:rswg@rfc-editor.org"/>),
        which is archived at <eref target="https://mailarchive.ietf.org/arch/browse/rswg/"/>.
      </t>
      <t>Source for this draft and an issue tracker can be found at
        <eref target="https://github.com/martinthomson/rfc-syntax-change"/>.</t>
    </note>
  </front>
  <middle>
    <?line 42?>

<section anchor="rationale">
      <name>Rationale</name>
      <t>The canonical format for published RFCs is XML <xref target="RFC7990"/>.  Historically, the
published version of an RFC has been immutable (<xref section="7.6" sectionFormat="of" target="RFC9280"/>).</t>
      <t>The RFC format <xref target="RFC7991"/> is not able to address use cases that were not
originally anticipated.  It might also be possible to improve the format to
better capture meaning.</t>
      <t>Though it might be possible to evolve the format and only use the new format for
the publication of new RFCs, this would mean that there would be no single
format across the series.  Tools that seek to process RFC XML would need to
understand all iterations of the format.</t>
    </section>
    <section anchor="syntax-change-policy">
      <name>Syntax Change Policy</name>
      <t>The RFC Series Working Group (RSWG), constituted by <xref target="RFC9280"/>, acts as
custodian for the RFC XML format.  If the RSWG reaches consensus, they can
propose a revision to the XML format.</t>
      <t>The RSWG publishes an RFC on the Editorial stream that describes the format
change.  An updated XML format is used for the publication of new RFCs.  Some
time might be necessary to implement those changes in tools and active
documents.</t>
      <t>Existing RFCs can be updated to use the new format.  The RFC that describes
format changes can also describe how the XML of existing RFCs will be updated.</t>
      <t>Updates to the XML format need to ensure that any change to existing RFCs
preserves - to the greatest extent possible - the semantics expressed in the
original RFC.  That is, the intent is that changes only update the XML syntax,
they do not alter the semantics that are expressed using that syntax.</t>
      <t>This process does not require that updates to XML avoid all risk of introducing
semantic changes to existing RFCs.  Instead, it only requires that the RSWG
carefully consider the potential for semantic changes, take steps to understand
the risk of a semantic change (either deliberate or inadvertent), and to limit
those risks.</t>
      <section anchor="canonical-version">
        <name>Canonical Version</name>
        <t>When the XML for an existing RFC is updated, the updated XML becomes the
canonical version of that RFC.</t>
      </section>
      <section anchor="archival">
        <name>Archival</name>
        <t>When RFC XML is updated, the updated version of the document shall be archived
in addition to the existing version.</t>
        <t>This document does not specify how archives are maintained or how archived XML
might be located or identified.</t>
      </section>
      <section anchor="publication-formats">
        <name>Publication Formats</name>
        <t>Publication formats are produced from the XML format.  As XML changes,
publication formats necessarily change, even if this might not result in
observable differences.  Similarly, as production tools change, publication
formats can be regenerated to ensure a consistent presentation across the
series.</t>
        <t>Publication formats -- or the contexts in which they are displayed -- can
optionally provide additional details of the specific XML version that they were
generated from, or provide a means to discover alternative renderings.</t>
        <t>This document does not stipulate whether production formats are archived.</t>
      </section>
    </section>
    <section anchor="security-considerations">
      <name>Security Considerations</name>
      <t>The RSWG are responsible for managing the risk of semantic changes that would
affect the interpretation of existing and future RFCs.  Changes to content that
has security implications would have security-relevant consequences.</t>
    </section>
    <section anchor="iana-considerations">
      <name>IANA Considerations</name>
      <t>This document has no IANA actions.</t>
    </section>
  </middle>
  <back>
    <references>
      <name>References</name>
      <references>
        <name>Normative References</name>
        <reference anchor="RFC7990">
          <front>
            <title>RFC Format Framework</title>
            <author fullname="H. Flanagan" initials="H." surname="Flanagan"/>
            <date month="December" year="2016"/>
            <abstract>
              <t>In order to improve the readability of RFCs while supporting their archivability, the canonical format of the RFC Series will be transitioning from plain-text ASCII to XML using the xml2rfc version 3 vocabulary; different publication formats will be rendered from that base document. With these changes comes an increase in complexity for authors, consumers, and the publisher of RFCs. This document serves as the framework that provides the problem statement, lays out a road map of the documents that capture the specific requirements, and describes the transition plan.</t>
            </abstract>
          </front>
          <seriesInfo name="RFC" value="7990"/>
          <seriesInfo name="DOI" value="10.17487/RFC7990"/>
        </reference>
        <reference anchor="RFC9280">
          <front>
            <title>RFC Editor Model (Version 3)</title>
            <author fullname="P. Saint-Andre" initials="P." role="editor" surname="Saint-Andre"/>
            <date month="June" year="2022"/>
            <abstract>
              <t>This document specifies version 3 of the RFC Editor Model. The model defines two high-level tasks related to the RFC Series. First, policy definition is the joint responsibility of the RFC Series Working Group (RSWG), which produces policy proposals, and the RFC Series Approval Board (RSAB), which approves such proposals. Second, policy implementation is primarily the responsibility of the RFC Production Center (RPC) as contractually overseen by the IETF Administration Limited Liability Company (IETF LLC). In addition, various responsibilities of the RFC Editor function are now performed alone or in combination by the RSWG, RSAB, RPC, RFC Series Consulting Editor (RSCE), and IETF LLC. Finally, this document establishes the Editorial Stream for publication of future policy definition documents produced through the processes defined herein.</t>
              <t>This document obsoletes RFC 8728. This document updates RFCs 7841, 8729, and 8730.</t>
            </abstract>
          </front>
          <seriesInfo name="RFC" value="9280"/>
          <seriesInfo name="DOI" value="10.17487/RFC9280"/>
        </reference>
      </references>
      <references>
        <name>Informative References</name>
        <reference anchor="RFC7991">
          <front>
            <title>The "xml2rfc" Version 3 Vocabulary</title>
            <author fullname="P. Hoffman" initials="P." surname="Hoffman"/>
            <date month="December" year="2016"/>
            <abstract>
              <t>This document defines the "xml2rfc" version 3 vocabulary: an XML-based language used for writing RFCs and Internet-Drafts. It is heavily derived from the version 2 vocabulary that is also under discussion. This document obsoletes the v2 grammar described in RFC 7749.</t>
            </abstract>
          </front>
          <seriesInfo name="RFC" value="7991"/>
          <seriesInfo name="DOI" value="10.17487/RFC7991"/>
        </reference>
      </references>
    </references>
    <?line 127?>

<section numbered="false" anchor="acknowledgments">
      <name>Acknowledgments</name>
      <t>Thanks to Paul Hoffman, John Levine, Pete Resnick, and Alexis Rossi for
constructive discussions about how the evolution of the RFC XML format might be
managed.</t>
    </section>
  </back>
  <!-- ##markdown-source:
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
isl8+B8HOvLq+RAAAA==

-->

</rfc>
