<?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.21 (Ruby 3.3.6) -->
<rfc xmlns:xi="http://www.w3.org/2001/XInclude" ipr="trust200902" docName="draft-boucadair-veloce-yang-01" category="info" consensus="true" submissionType="IETF" tocInclude="true" sortRefs="true" symRefs="true" version="3">
  <!-- xml2rfc v2v3 conversion 3.25.0 -->
  <front>
    <title abbrev="VELOCE">YANG deVELpment PrOCEss &amp; maintenance (VELOCE)</title>
    <seriesInfo name="Internet-Draft" value="draft-boucadair-veloce-yang-01"/>
    <author fullname="Mohamed Boucadair">
      <organization>Orange</organization>
      <address>
        <email>mohamed.boucadair@orange.com</email>
      </address>
    </author>
    <date year="2024" month="December" day="06"/>
    <keyword>quick but well YANG modules</keyword>
    <abstract>
      <?line 28?>

<t>This document describes a YANG deVELpment PrOCEss &amp; maintenance (VELOCE) that is more suitable for the development of YANG modules within the IETF.</t>
    </abstract>
    <note removeInRFC="true">
      <name>Discussion Venues</name>
      <t>Source for this draft and an issue tracker can be found at
    <eref target="https://github.com/boucadair/draft-boucadair-veloce-yang"/>.</t>
    </note>
  </front>
  <middle>
    <?line 32?>

<section anchor="introduction">
      <name>Introduction</name>
      <t>RFCs are not be suited for documenting YANG modules. However, implementers/vendors are looking for reference models and sufficiently stable models to refer to. To that aim, this document proposes a new approach for documenting IETF-endorsed YANG modules.</t>
      <t>Guidance for writing  YANG modules are discussed in <xref target="I-D.ietf-netmod-rfc8407bis"/>. All these guidelines apply expect those related to narrative text.</t>
      <t>This document mainly focuses on IETF modules. Note that <xref target="I-D.ietf-netmod-rfc8407bis"/> includes provisons for IANA-maintained modules to not be included in RFCs:</t>
      <blockquote>
        <t>Designers of IANA-maintained modules <bcp14>MAY</bcp14> supply the full initial
   version of the module in a specification document that registers the
   module or only a script to be used (including by IANA) for generating
   the module (e.g., an XSLT stylesheet as in Appendix A of [RFC9108]).</t>
      </blockquote>
    </section>
    <section anchor="conventions-and-definitions">
      <name>Conventions and Definitions</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?>

</section>
    <section anchor="veloce-procedure">
      <name>VELOCE Procedure</name>
      <t>The following procedure is followed when a WG adopts a YANG module:</t>
      <ul spacing="normal">
        <li>
          <t>A new repository <bcp14>MUST</bcp14> be created by the WG Chairs following the procedure in <xref section="3.2" sectionFormat="of" target="RFC8874"/> to maintain the YANG Module, with the apprpriate CI/CD YANG validation in place. Other administrative polices are defined in <xref target="RFC8875"/>. The same procedure for managing WG documents (e.g., assign editors) applies for managing YANG modules (<xref section="6.1" sectionFormat="of" target="RFC2418"/>). Refer also to <xref section="3.3" sectionFormat="of" target="RFC8874"/> for considerations related to granting WG participants write and administrators right.</t>
        </li>
        <li>
          <t>Contributing methods to YANG module (including issues handling andd merge procedure) are similar to those defined in <xref section="4" sectionFormat="of" target="RFC8874"/>.</t>
        </li>
        <li>
          <t>The WG Chairs <bcp14>MUST</bcp14> seek in a timely manner after the adoption of the document for the publication of an RFC that describes the initial module objectives and, more importantly, registers the URI in the "ns" subregistry within the "IETF XML Registry" <xref target="RFC3688"/> and the YANG module in the "YANG Module Names" subregistry <xref target="RFC6020"/> within the "YANG Parameters" registry.</t>
        </li>
        <li>
          <t>The YANG module <bcp14>MUST NOT</bcp14> be inserted in the document; instead a link to the Github repository <bcp14>MUST</bcp14> be included.</t>
        </li>
        <li>
          <t>Bis versions of the initial RFC <bcp14>MAY</bcp14> be considered to document major changes or their rationale. Such a decision is left to the WG Chairs.</t>
        </li>
      </ul>
    </section>
    <section anchor="security-considerations">
      <name>Security Considerations</name>
      <t>The same considerations discussed in <xref section="10" sectionFormat="of" target="RFC8874"/> apply here.</t>
    </section>
    <section anchor="iana-considerations">
      <name>IANA Considerations</name>
      <t>This document has no IANA actions.</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-netmod-rfc8407bis">
          <front>
            <title>Guidelines for Authors and Reviewers of Documents Containing YANG Data Models</title>
            <author fullname="Andy Bierman" initials="A." surname="Bierman">
              <organization>YumaWorks</organization>
            </author>
            <author fullname="Mohamed Boucadair" initials="M." surname="Boucadair">
              <organization>Orange</organization>
            </author>
            <author fullname="Qin Wu" initials="Q." surname="Wu">
              <organization>Huawei</organization>
            </author>
            <date day="13" month="November" year="2024"/>
            <abstract>
              <t>   This memo provides guidelines for authors and reviewers of
   specifications containing YANG modules, including IANA-maintained
   modules.  Recommendations and procedures are defined, which are
   intended to increase interoperability and usability of Network
   Configuration Protocol (NETCONF) and RESTCONF protocol
   implementations that utilize YANG modules.  This document obsoletes
   RFC 8407.

   Also, this document updates RFC 8126 by providing additional
   guidelines for writing the IANA considerations for RFCs that specify
   IANA-maintained modules.  The document also updates RFC 6020 by
   clarifying how modules and their revisions are handled by IANA.

              </t>
            </abstract>
          </front>
          <seriesInfo name="Internet-Draft" value="draft-ietf-netmod-rfc8407bis-21"/>
        </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="RFC8874">
          <front>
            <title>Working Group GitHub Usage Guidance</title>
            <author fullname="M. Thomson" initials="M." surname="Thomson"/>
            <author fullname="B. Stark" initials="B." surname="Stark"/>
            <date month="August" year="2020"/>
            <abstract>
              <t>This document provides a set of guidelines for working groups that choose to use GitHub for their work.</t>
            </abstract>
          </front>
          <seriesInfo name="RFC" value="8874"/>
          <seriesInfo name="DOI" value="10.17487/RFC8874"/>
        </reference>
        <reference anchor="RFC8875">
          <front>
            <title>Working Group GitHub Administration</title>
            <author fullname="A. Cooper" initials="A." surname="Cooper"/>
            <author fullname="P. Hoffman" initials="P." surname="Hoffman"/>
            <date month="August" year="2020"/>
            <abstract>
              <t>The use of GitHub in IETF working group processes is increasing. This document describes uses and conventions for working groups that are considering starting to use GitHub. It does not mandate any processes and does not require changes to the processes used by current and future working groups not using GitHub.</t>
            </abstract>
          </front>
          <seriesInfo name="RFC" value="8875"/>
          <seriesInfo name="DOI" value="10.17487/RFC8875"/>
        </reference>
        <reference anchor="RFC2418">
          <front>
            <title>IETF Working Group Guidelines and Procedures</title>
            <author fullname="S. Bradner" initials="S." surname="Bradner"/>
            <date month="September" year="1998"/>
            <abstract>
              <t>This document describes the guidelines and procedures for formation and operation of IETF working groups. 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="25"/>
          <seriesInfo name="RFC" value="2418"/>
          <seriesInfo name="DOI" value="10.17487/RFC2418"/>
        </reference>
      </references>
      <references anchor="sec-informative-references">
        <name>Informative References</name>
        <reference anchor="RFC3688">
          <front>
            <title>The IETF XML Registry</title>
            <author fullname="M. Mealling" initials="M." surname="Mealling"/>
            <date month="January" year="2004"/>
            <abstract>
              <t>This document describes an IANA maintained registry for IETF standards which use Extensible Markup Language (XML) related items such as Namespaces, Document Type Declarations (DTDs), Schemas, and Resource Description Framework (RDF) Schemas.</t>
            </abstract>
          </front>
          <seriesInfo name="BCP" value="81"/>
          <seriesInfo name="RFC" value="3688"/>
          <seriesInfo name="DOI" value="10.17487/RFC3688"/>
        </reference>
        <reference anchor="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>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>
      </references>
    </references>
    <?line 88?>

<section numbered="false" anchor="acknowledgments">
      <name>Acknowledgments</name>
      <t>This draft is triggered by the discussion in NEMOPS IAB workshop.</t>
    </section>
  </back>
  <!-- ##markdown-source:
H4sIAAAAAAAAA5VX627bNhT+z6fgXGBoCsuL26xNva6dm6RtgNyWpFuLYT8o
6VhmI4kaScX1grzLnmVPtu+QliOn3YAVKCJRPLfvfOfiJEmE176kiRx8nJ68
lTn9cnDUVFR7eWZP9w6ck9/KSunaU63qjORDfMf51kCoNLV0DcF4MhCZ8lQY
u5xIXc+MELnJalVBdW7VzCepaTOVK22TaypNRslS1UWyPRauTSvtnDa1Xza4
fnhw+UbUbZWSnYgcSiciM7Wj2rVuIr1tScDsE/FAKktqIk/PLvC8MPaqsKZt
JjI6JK5oicN8ImQi/2h1diXT1ssFlaUMsVYmb0tyQqjWz43le0Li36wty+j4
sZnjby5fd66H78YWqtZ/Kg+PYd0iDAofCECVE+gNUqN1wD+ZcGeUmUqI2tgK
oteISjBOd28iSRKpUuetyrwQl3PtJDBsQzZycpnVKTmp5P/LlPRz5SV0VcaS
dK32Ki1JwjK+EPRwOqIiM9tARi60n+s6XOOkjKKLlc7zkgQwP6y9xdWMkRDi
/M2e45TI2niZRlMAjw11Yei62LAwku/MAg7YodRVUxLfIeu+u6Y6NzZqK425
YjnWY2lGljg6KKASF+ocdmYznWmIlkvpYnSrz95EETyM5KWJUChdDfHUR7ex
pjEugFvTQqoGByqbf+E7o5BE3xDZRiRCvG11HpBnqYXVQWITUI4n1y5rHcsD
2pubbw6T/ZEmP0tq8riX2Fm2u7P9LNXu9nYkp2Ar8HckC6inUtespmkQKn1u
KPP4Cs8RZqkYbURcK2sDp6Snz350n0nMEUjP8M4RmzpEdZeRE+MpAnVz81++
wf2sbMFLRu9aO5RoiPxwejJNAhHxHx51sbNnkRgrwQAAkwbcv5mgRGH4Vrzk
Stonp4saTGBK/pvC4+lH5D5AwQzlsoVGwK5KLkewinsKa+DPUYpNKukAnAZn
QgnfIROCtlRoxyRkKdazEkRkhnGDNAqx8RwPYmk5kQ9jRJzvdBn83QpQFIQY
FPOAFfW8eEijYjQEe+WHi6NLkHaJgOZEIKdjF6dNA5bpz3LK7v8GkJ6Pt3d/
3xpx1e2Z+pr5yIAz//dpFsLGO+eaJBoft8PcycHx+4vLwTD+lSen4fn84Of3
h+cH+/x88W56dLR+EKsbF+9O3x/t3z3dSe6dHh8fnOxHYZzKjSMxQE4Gw+DV
4PTs8vD0ZHo0kKGF9CnIZRDh43ZlG0tMXeVE1+UCNV7vnf3913iHawQAPB6P
n4N08WV3/GwHL4s51dFaSE18BcxLgQohZUO2wYpMNeh6pRsyvG5uFrWco48A
zUe/MTK/T+SLNGvGOy9XBxzwxmGH2cZhwOzLky+EI4hfOfqKmTWaG+f3kN70
d/px473DvXf44hX3DZmMd1+9FEyhOBowODCH89ZS5M3MlKVZMIub7gPPjXiM
nDC+4P+vb6XKTePXoyiSGlX8CHzl/mkJ3VR77AIyoIlEZxjVnOQ0Fit07M0x
Gl3PKJ/3DHNzvKAwW+ST0WMuhJD63ZB60KdrCUEwOHIcHBmGuRVOuZE3VsOy
3Dv8bm8/XrtWJTp1UAzpplQZjeQp7lsEVqGWeASHBtqYUmdd3+YyW3ft6Mn3
3KIZOoeJ33Oei79StSo4LsTaMd+tK99xg5OUM0puK3R0TW5TcGN0PLxD4+lo
3KHxeGe8e3u7NZLnYcyB44ah6SP35B5ybIL3KUwTq2IX6Q2PAquKX3ndKOsx
WBvFjvNAo1BrPYx4RltdzDFlHnFf8ijeNohXhLmUh67fC6PfKbHytYhrDpUl
v+MvejvZogfkVkDe6UqXiof4athtpKKLdGczTvbocoNpgYqO6CoOAa8rQtMA
2jUjN/MUF6LA7d7gWHetbmNq2rTsZgfuqDDE4vC429L44moYrSdI+oldvabQ
todxH8PaY6xXvLsMN2ePfH9+KFfsHtRugFmXxgsoq95mNgjj+8PxETgQvw6A
yiv49OTpLsgRcrYukbsxGGR7ZSNPwOF7ZqKep9uPt7nb9mwGuTNlIcL+DmQn
0sHeN9Z11NjwHVkfc9dH9wf+4kmBXhJ0uIrJJvkWRtv0ax2l2yLY4mu0qdW8
d13eOvQ5ObwqcBNa0T5SvbcRfeKamPOS7mTMssayGVKsSjSHixbLoEJ6Mx12
CpgraeY7J9ccC/MZhGxRLEsuiF6VxR4bGsW98ru3EXaEHm/fq9y49q0m14Ow
Z3zFRn/QzjHvahNvqqDVrZb4VGVXrGSaXdVmUVJehP6ERSz+8qL8x8EM7YQG
t51S/hXHkaPIiyKAuGrmK/9X/fTk4Bi/yGDzdfhNhnHbjMQ/zZo7J2kOAAA=

-->

</rfc>
