<?xml version='1.0' encoding='utf-8'?>
<rfc xmlns:xi="http://www.w3.org/2001/XInclude" version="3" ipr="trust200902" docName="draft-ietf-netmod-rfc6020-iana-update-02" number="9890" category="std" consensus="true" submissionType="IETF" updates="6020" obsoletes="" tocInclude="true" sortRefs="true" symRefs="true" xml:lang="en" prepTime="2025-10-28T23:08:29" indexInclude="true" scripts="Common,Latin" tocDepth="3">
  <link href="https://datatracker.ietf.org/doc/draft-ietf-netmod-rfc6020-iana-update-02" rel="prev"/>
  <link href="https://dx.doi.org/10.17487/rfc9890" rel="alternate"/>
  <link href="urn:issn:2070-1721" rel="alternate"/>
  <front>
    <title abbrev="YANG Module Names">An Update to YANG Module Names Registration</title>
    <seriesInfo name="RFC" value="9890" stream="IETF"/>
    <author fullname="Andy Bierman">
      <organization showOnFrontPage="true">YumaWorks</organization>
      <address>
        <postal>
          <country>United States of America</country>
        </postal>
        <email>andy@yumaworks.com</email>
      </address>
    </author>
    <author fullname="Mohamed Boucadair" role="editor">
      <organization showOnFrontPage="true">Orange</organization>
      <address>
        <postal>
          <country>France</country>
        </postal>
        <email>mohamed.boucadair@orange.com</email>
      </address>
    </author>
    <author fullname="Qin Wu">
      <organization showOnFrontPage="true">Huawei</organization>
      <address>
        <postal>
          <country>China</country>
        </postal>
        <email>bill.wu@huawei.com</email>
      </address>
    </author>
    <date month="10" year="2025"/>
    <area>OPS</area>
    <workgroup>netmod</workgroup>
    <keyword>NETCONF</keyword>
    <keyword>RESTCONF</keyword>
    <keyword>Automation</keyword>
    <abstract pn="section-abstract">
      <t indent="0" pn="section-abstract-1">This document amends the IANA guidance on the uniqueness of YANG module and submodule names.</t>
      <t indent="0" pn="section-abstract-2">The document updates RFC 6020 to clarify how modules and their revisions are handled by IANA.</t>
    </abstract>
    <boilerplate>
      <section anchor="status-of-memo" numbered="false" removeInRFC="false" toc="exclude" pn="section-boilerplate.1">
        <name slugifiedName="name-status-of-this-memo">Status of This Memo</name>
        <t indent="0" pn="section-boilerplate.1-1">
            This is an Internet Standards Track document.
        </t>
        <t indent="0" pn="section-boilerplate.1-2">
            This document is a product of the Internet Engineering Task Force
            (IETF).  It represents the consensus of the IETF community.  It has
            received public review and has been approved for publication by
            the Internet Engineering Steering Group (IESG).  Further
            information on Internet Standards is available in Section 2 of 
            RFC 7841.
        </t>
        <t indent="0" pn="section-boilerplate.1-3">
            Information about the current status of this document, any
            errata, and how to provide feedback on it may be obtained at
            <eref target="https://www.rfc-editor.org/info/rfc9890" brackets="none"/>.
        </t>
      </section>
      <section anchor="copyright" numbered="false" removeInRFC="false" toc="exclude" pn="section-boilerplate.2">
        <name slugifiedName="name-copyright-notice">Copyright Notice</name>
        <t indent="0" pn="section-boilerplate.2-1">
            Copyright (c) 2025 IETF Trust and the persons identified as the
            document authors. All rights reserved.
        </t>
        <t indent="0" pn="section-boilerplate.2-2">
            This document is subject to BCP 78 and the IETF Trust's Legal
            Provisions Relating to IETF Documents
            (<eref target="https://trustee.ietf.org/license-info" brackets="none"/>) in effect on the date of
            publication of this document. Please review these documents
            carefully, as they describe your rights and restrictions with
            respect to this document. Code Components extracted from this
            document must include Revised BSD License text as described in
            Section 4.e of the Trust Legal Provisions and are provided without
            warranty as described in the Revised BSD License.
        </t>
      </section>
    </boilerplate>
    <toc>
      <section anchor="toc" numbered="false" removeInRFC="false" toc="exclude" pn="section-toc.1">
        <name slugifiedName="name-table-of-contents">Table of Contents</name>
        <ul bare="true" empty="true" indent="2" spacing="compact" pn="section-toc.1-1">
          <li pn="section-toc.1-1.1">
            <t indent="0" keepWithNext="true" pn="section-toc.1-1.1.1"><xref derivedContent="1" format="counter" sectionFormat="of" target="section-1"/>.  <xref derivedContent="" format="title" sectionFormat="of" target="name-introduction">Introduction</xref></t>
          </li>
          <li pn="section-toc.1-1.2">
            <t indent="0" keepWithNext="true" pn="section-toc.1-1.2.1"><xref derivedContent="2" format="counter" sectionFormat="of" target="section-2"/>.  <xref derivedContent="" format="title" sectionFormat="of" target="name-requirements-notation">Requirements Notation</xref></t>
          </li>
          <li pn="section-toc.1-1.3">
            <t indent="0" pn="section-toc.1-1.3.1"><xref derivedContent="3" format="counter" sectionFormat="of" target="section-3"/>.  <xref derivedContent="" format="title" sectionFormat="of" target="name-iana-considerations">IANA Considerations</xref></t>
            <ul bare="true" empty="true" indent="2" spacing="compact" pn="section-toc.1-1.3.2">
              <li pn="section-toc.1-1.3.2.1">
                <t indent="0" keepWithNext="true" pn="section-toc.1-1.3.2.1.1"><xref derivedContent="3.1" format="counter" sectionFormat="of" target="section-3.1"/>.  <xref derivedContent="" format="title" sectionFormat="of" target="name-update-yang-parameters-regi">Update YANG Parameters Registry</xref></t>
              </li>
              <li pn="section-toc.1-1.3.2.2">
                <t indent="0" pn="section-toc.1-1.3.2.2.1"><xref derivedContent="3.2" format="counter" sectionFormat="of" target="section-3.2"/>.  <xref derivedContent="" format="title" sectionFormat="of" target="name-revisions-of-published-modu">Revisions of Published Modules</xref></t>
              </li>
            </ul>
          </li>
          <li pn="section-toc.1-1.4">
            <t indent="0" pn="section-toc.1-1.4.1"><xref derivedContent="4" format="counter" sectionFormat="of" target="section-4"/>.  <xref derivedContent="" format="title" sectionFormat="of" target="name-operational-considerations">Operational Considerations</xref></t>
          </li>
          <li pn="section-toc.1-1.5">
            <t indent="0" pn="section-toc.1-1.5.1"><xref derivedContent="5" format="counter" sectionFormat="of" target="section-5"/>.  <xref derivedContent="" format="title" sectionFormat="of" target="name-security-considerations">Security Considerations</xref></t>
          </li>
          <li pn="section-toc.1-1.6">
            <t indent="0" pn="section-toc.1-1.6.1"><xref derivedContent="6" format="counter" sectionFormat="of" target="section-6"/>.  <xref derivedContent="" format="title" sectionFormat="of" target="name-references">References</xref></t>
            <ul bare="true" empty="true" indent="2" spacing="compact" pn="section-toc.1-1.6.2">
              <li pn="section-toc.1-1.6.2.1">
                <t indent="0" pn="section-toc.1-1.6.2.1.1"><xref derivedContent="6.1" format="counter" sectionFormat="of" target="section-6.1"/>.  <xref derivedContent="" format="title" sectionFormat="of" target="name-normative-references">Normative References</xref></t>
              </li>
              <li pn="section-toc.1-1.6.2.2">
                <t indent="0" pn="section-toc.1-1.6.2.2.1"><xref derivedContent="6.2" format="counter" sectionFormat="of" target="section-6.2"/>.  <xref derivedContent="" format="title" sectionFormat="of" target="name-informative-references">Informative References</xref></t>
              </li>
            </ul>
          </li>
          <li pn="section-toc.1-1.7">
            <t indent="0" pn="section-toc.1-1.7.1"><xref derivedContent="" format="none" sectionFormat="of" target="section-appendix.a"/><xref derivedContent="" format="title" sectionFormat="of" target="name-acknowledgments">Acknowledgments</xref></t>
          </li>
          <li pn="section-toc.1-1.8">
            <t indent="0" pn="section-toc.1-1.8.1"><xref derivedContent="" format="none" sectionFormat="of" target="section-appendix.b"/><xref derivedContent="" format="title" sectionFormat="of" target="name-authors-addresses">Authors' Addresses</xref></t>
          </li>
        </ul>
      </section>
    </toc>
  </front>
  <middle>
    <section anchor="introduction" numbered="true" removeInRFC="false" toc="include" pn="section-1">
      <name slugifiedName="name-introduction">Introduction</name>
      <t indent="0" pn="section-1-1"><xref target="RFC6020" format="default" sectionFormat="of" derivedContent="RFC6020"/> defines a registry for YANG module and submodule names, called "YANG Module Names" <xref target="IANA-MOD-NAMES" format="default" sectionFormat="of" derivedContent="IANA-MOD-NAMES"/>.</t>
      <t indent="0" pn="section-1-2">Specifically, IANA considerations to register YANG module and submodule names are specified in <xref section="14" sectionFormat="of" target="RFC6020" format="default" derivedLink="https://rfc-editor.org/rfc/rfc6020#section-14" derivedContent="RFC6020"/>.
These considerations require that all module and submodule names in the registry must be unique. However,
the practice followed by IANA is not consistent with that guidance.</t>
      <t indent="0" pn="section-1-3">This document amends the guidance on the uniqueness of names (<xref section="14" sectionFormat="of" target="RFC6020" format="default" derivedLink="https://rfc-editor.org/rfc/rfc6020#section-14" derivedContent="RFC6020"/>)
to comply with the IANA practices for registering modules and their revisions.</t>
    </section>
    <section anchor="requirements-notation" numbered="true" removeInRFC="false" toc="include" pn="section-2">
      <name slugifiedName="name-requirements-notation">Requirements Notation</name>
      <t indent="0" pn="section-2-1">
    The key words "<bcp14>MUST</bcp14>", "<bcp14>MUST NOT</bcp14>",
    "<bcp14>REQUIRED</bcp14>", "<bcp14>SHALL</bcp14>", "<bcp14>SHALL NOT</bcp14>", "<bcp14>SHOULD</bcp14>", "<bcp14>SHOULD NOT</bcp14>",
    "<bcp14>RECOMMENDED</bcp14>", "<bcp14>NOT RECOMMENDED</bcp14>",
    "<bcp14>MAY</bcp14>", and "<bcp14>OPTIONAL</bcp14>" in this document are
    to be interpreted as described in BCP 14 <xref target="RFC2119" format="default" sectionFormat="of" derivedContent="RFC2119"/>
        <xref target="RFC8174" format="default" sectionFormat="of" derivedContent="RFC8174"/> when, and only when, they appear in all capitals,
    as shown here. 
</t>
    </section>
    <section anchor="sec-iana" numbered="true" removeInRFC="false" toc="include" pn="section-3">
      <name slugifiedName="name-iana-considerations">IANA Considerations</name>
      <section anchor="sec-update" numbered="true" removeInRFC="false" toc="include" pn="section-3.1">
        <name slugifiedName="name-update-yang-parameters-regi">Update YANG Parameters Registry</name>
        <t indent="0" pn="section-3.1-1">IANA has updated
the "YANG Module Names" registry under the "YANG Parameters" registry group <xref target="IANA-MOD-NAMES" format="default" sectionFormat="of" derivedContent="IANA-MOD-NAMES"/>
to list this document as an additional reference. This update is needed
because the procedure in this document is authoritative for assigning names in that registry.</t>
      </section>
      <section anchor="sec-amend" numbered="true" removeInRFC="false" toc="include" pn="section-3.2">
        <name slugifiedName="name-revisions-of-published-modu">Revisions of Published Modules</name>
        <t indent="0" pn="section-3.2-1">This document amends the guidance on the uniqueness of names, initially defined in <xref section="14" sectionFormat="of" target="RFC6020" format="default" derivedLink="https://rfc-editor.org/rfc/rfc6020#section-14" derivedContent="RFC6020"/>, as follows:</t>
        <t indent="0" pn="section-3.2-2">OLD:</t>
        <blockquote pn="section-3.2-3">
          <t indent="0" pn="section-3.2-3.1">All module and submodule names in the registry <bcp14>MUST</bcp14> be unique.</t>
          <t indent="0" pn="section-3.2-3.2">All XML namespaces in the registry <bcp14>MUST</bcp14> be unique.</t>
        </blockquote>
        <t indent="0" pn="section-3.2-4">NEW:</t>
        <blockquote pn="section-3.2-5">
          <t indent="0" pn="section-3.2-5.1">Modules and their revisions are maintained in the registry.</t>
          <t indent="0" pn="section-3.2-5.2">All initial version module and submodule names in the registry <bcp14>MUST</bcp14> be unique.</t>
          <t indent="0" pn="section-3.2-5.3">All XML namespaces of initial version modules in the registry <bcp14>MUST</bcp14> be unique.</t>
          <t indent="0" pn="section-3.2-5.4">All module and submodule revisions <bcp14>MUST</bcp14> have the same name as the one in the initial version of the module and submodule.</t>
          <t indent="0" pn="section-3.2-5.5">All module revisions <bcp14>MUST</bcp14> have the same XML namespace as the initial version of the module.</t>
        </blockquote>
      </section>
    </section>
    <section anchor="operational-considerations" numbered="true" removeInRFC="false" toc="include" pn="section-4">
      <name slugifiedName="name-operational-considerations">Operational Considerations</name>
      <t indent="0" pn="section-4-1">This document aligns an IANA policy with the practice for handling YANG module names (<xref target="sec-amend" format="default" sectionFormat="of" derivedContent="Section 3.2"/>). As such, there are no new operations or manageability requirements introduced by this document.</t>
    </section>
    <section anchor="security-considerations" numbered="true" removeInRFC="false" toc="include" pn="section-5">
      <name slugifiedName="name-security-considerations">Security Considerations</name>
      <t indent="0" pn="section-5-1">This document defines a new IANA action (<xref target="sec-update" format="default" sectionFormat="of" derivedContent="Section 3.1"/>) and an update (<xref target="sec-amend" format="default" sectionFormat="of" derivedContent="Section 3.2"/>) to an IANA registration procedure defined in <xref target="RFC6020" format="default" sectionFormat="of" derivedContent="RFC6020"/>.
It does not introduce any new or increased security risks that need to be discussed.</t>
    </section>
  </middle>
  <back>
    <displayreference target="I-D.ietf-netmod-rfc8407bis" to="YANG-GUIDE"/>
    <references anchor="sec-combined-references" pn="section-6">
      <name slugifiedName="name-references">References</name>
      <references anchor="sec-normative-references" pn="section-6.1">
        <name slugifiedName="name-normative-references">Normative References</name>
        <reference anchor="RFC2119" target="https://www.rfc-editor.org/info/rfc2119" quoteTitle="true" derivedAnchor="RFC2119">
          <front>
            <title>Key words for use in RFCs to Indicate Requirement Levels</title>
            <author fullname="S. Bradner" initials="S." surname="Bradner"/>
            <date month="March" year="1997"/>
            <abstract>
              <t indent="0">In many standards track documents several words are used to signify the requirements in the specification. These words are often capitalized. This document defines these words as they should be interpreted in IETF documents. This document specifies an Internet Best Current Practices for the Internet Community, and requests discussion and suggestions for improvements.</t>
            </abstract>
          </front>
          <seriesInfo name="BCP" value="14"/>
          <seriesInfo name="RFC" value="2119"/>
          <seriesInfo name="DOI" value="10.17487/RFC2119"/>
        </reference>
        <reference anchor="RFC6020" target="https://www.rfc-editor.org/info/rfc6020" quoteTitle="true" derivedAnchor="RFC6020">
          <front>
            <title>YANG - A Data Modeling Language for the Network Configuration Protocol (NETCONF)</title>
            <author fullname="M. Bjorklund" initials="M." role="editor" surname="Bjorklund"/>
            <date month="October" year="2010"/>
            <abstract>
              <t indent="0">YANG is a data modeling language used to model configuration and state data manipulated by the Network Configuration Protocol (NETCONF), NETCONF remote procedure calls, and NETCONF notifications. [STANDARDS-TRACK]</t>
            </abstract>
          </front>
          <seriesInfo name="RFC" value="6020"/>
          <seriesInfo name="DOI" value="10.17487/RFC6020"/>
        </reference>
        <reference anchor="RFC8174" target="https://www.rfc-editor.org/info/rfc8174" quoteTitle="true" derivedAnchor="RFC8174">
          <front>
            <title>Ambiguity of Uppercase vs Lowercase in RFC 2119 Key Words</title>
            <author fullname="B. Leiba" initials="B." surname="Leiba"/>
            <date month="May" year="2017"/>
            <abstract>
              <t indent="0">RFC 2119 specifies common key words that may be used in protocol specifications. This document aims to reduce the ambiguity by clarifying that only UPPERCASE usage of the key words have the defined special meanings.</t>
            </abstract>
          </front>
          <seriesInfo name="BCP" value="14"/>
          <seriesInfo name="RFC" value="8174"/>
          <seriesInfo name="DOI" value="10.17487/RFC8174"/>
        </reference>
      </references>
      <references anchor="sec-informative-references" pn="section-6.2">
        <name slugifiedName="name-informative-references">Informative References</name>
        <reference anchor="IANA-MOD-NAMES" target="https://www.iana.org/assignments/yang-parameters/" quoteTitle="true" derivedAnchor="IANA-MOD-NAMES">
          <front>
            <title>YANG Module Names</title>
            <author>
              <organization showOnFrontPage="true">IANA</organization>
            </author>
            <date/>
          </front>
        </reference>
        <reference anchor="I-D.ietf-netmod-rfc8407bis" target="https://datatracker.ietf.org/doc/html/draft-ietf-netmod-rfc8407bis-28" quoteTitle="true" derivedAnchor="YANG-GUIDE">
          <front>
            <title>Guidelines for Authors and Reviewers of Documents Containing YANG Data Models</title>
            <author initials="A." surname="Bierman" fullname="Andy Bierman">
              <organization showOnFrontPage="true">YumaWorks</organization>
            </author>
            <author initials="M." surname="Boucadair" fullname="Mohamed Boucadair" role="editor">
              <organization showOnFrontPage="true">Orange</organization>
            </author>
            <author initials="Q." surname="Wu" fullname="Qin Wu">
              <organization showOnFrontPage="true">Huawei</organization>
            </author>
            <date month="June" day="5" year="2025"/>
          </front>
          <seriesInfo name="Internet-Draft" value="draft-ietf-netmod-rfc8407bis-28"/>
          <refcontent>Work in Progress</refcontent>
        </reference>
      </references>
    </references>
    <section numbered="false" anchor="acknowledgments" removeInRFC="false" toc="include" pn="section-appendix.a">
      <name slugifiedName="name-acknowledgments">Acknowledgments</name>
      <t indent="0" pn="section-appendix.a-1">The content of this document was part of <xref target="I-D.ietf-netmod-rfc8407bis" format="default" sectionFormat="of" derivedContent="YANG-GUIDE"/>.</t>
      <t indent="0" pn="section-appendix.a-2"><contact fullname="Mahesh Jethanandani"/> suggested to offload this
      part from <xref target="I-D.ietf-netmod-rfc8407bis" format="default" sectionFormat="of" derivedContent="YANG-GUIDE"/>.  Thanks to Mahesh
      and <contact fullname="Kent Watsen"/> for the discussion and comments.</t>
      <t indent="0" pn="section-appendix.a-3">Thanks to <contact fullname="Mallory Knodel"/> for the GENART review
      and <contact fullname="Barry Leiba"/> for the ARTART review.</t>
      <t indent="0" pn="section-appendix.a-4">Thanks <contact fullname="Mike Bishop"/> for the IESG review.</t>
    </section>
    <section anchor="authors-addresses" numbered="false" removeInRFC="false" toc="include" pn="section-appendix.b">
      <name slugifiedName="name-authors-addresses">Authors' Addresses</name>
      <author fullname="Andy Bierman">
        <organization showOnFrontPage="true">YumaWorks</organization>
        <address>
          <postal>
            <country>United States of America</country>
          </postal>
          <email>andy@yumaworks.com</email>
        </address>
      </author>
      <author fullname="Mohamed Boucadair" role="editor">
        <organization showOnFrontPage="true">Orange</organization>
        <address>
          <postal>
            <country>France</country>
          </postal>
          <email>mohamed.boucadair@orange.com</email>
        </address>
      </author>
      <author fullname="Qin Wu">
        <organization showOnFrontPage="true">Huawei</organization>
        <address>
          <postal>
            <country>China</country>
          </postal>
          <email>bill.wu@huawei.com</email>
        </address>
      </author>
    </section>
  </back>
</rfc>
