<?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-00" 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-00"/>
    <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>
    </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 document with) 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.</t>
        </li>
        <li>
          <t>Contributing methods to YANG module are 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.</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>
      </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 80?>

<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:
H4sIAAAAAAAAA5VW23LbNhB9x1ds1ZlOkjEVO/EkrpomlWXH8Yxlu760zXT6
AJKQhIgEGAC0omb8L/2WflnPAqItOX6pXkQu9np294BZlomgQ6UG1Ps4PD2i
Uv12eNLUygQ6d2ejQ+/pB6qlNkEZaQpFT3AO+dOekHnu1A0Mk6QnChnU1Lrl
gLSZWCFKWxhZw3Xp5CRkuW0LWUrtshtV2UJlS2mm2fa28G1ea++1NWHZQP34
8Oq9MG2dKzcQJZwORGGNV8a3fkDBtUog7EvxPUmn5IDOzi/xvLBuPnW2bQaU
EhJztYSwHAjK6HOriznlbaCFqiqKtda2bCvlhZBtmFnHeoLwm7RVlRIf2xn+
S9rvUo/n1k2l0X/LgIwR3aEMFQ8UgKoG8But+ncF/2KjTr+wtRDGuhqmN6hK
ME73byLLMpK5D04WQYirmfYEDNvYjVL5wulceZL0/zpFYSYDwVdtnSLf6iDz
ShEi40TBD7cjObKTDWRoocNMm6jGTemnFGtdlpUSwPzYBAfVgpEQ4uL9yHNL
yNhAeQoF8DhQV4Y2040IffpgF0jAbZGum0qxjnL++Y0ypXXJW2XtnO3Yj1MT
5RRXBweqgoIpEWcy0YWGabUkn6pbHQebTPDQpyuboJC63sLTOrqNs431EVyj
FiQbCGQx+yZ3RiFLuaGyjUqEOGp1GZFnq4XT0WITUK6n1L5oPdsD2q9fvzvO
DvpahUlmVIBe5ibF3u7261z729s+DTGtwN8rmsK9qrRhN02DUtWXRhUBp8gc
ZVaS0UbFRjoXZ4qC+hL63KiRNTdcAtYoQnagJtro+M6Dpgi7whtUeuqNry+v
elvpn07P4vPF4a/XxxeHB/x8+WF4cnL3IFYalx/Ork8O7p/uLUdn4/Hh6UEy
hpQ2RKI3Hn7ECWfVOzu/Oj47HZ70KE7deocYOdSGseIJd41TXK30oluMCOf+
6Pzff3Z2GVZM44udnR9vb1cvezuvd/GymCmTolkDDNMrAF4KgKqkYy8SmBey
waJUHrqe/MwuDM0wekDz2Z+MzF8DepMXzc7u25WAC94QdphtCCNm30q+MU4g
PiJ6JMwdmhvyB0hv5jv8uPHe4b4mfPOOR42ynb13bwWPUGITcA2ou2ydSnMz
sVVlFzzoTXfAVJPE6Anji6X6/YhkaZvg6Ym87ynTy9OOz9KKgAaf0TAuoVNY
SR1woVDEF60vwPfc9nwZOQleRzPwq19Lg+VrqfCGXapIUPSy/4IZLg7DXhwG
DFRkTLkiuZjIOCayFbOLUmaDxmlEptHx89FBUruRFdY9OoZ1U8kCw/GMNy1g
HNu4/LXCcpaRhtZqTLMct7bkPeyYoMtzdzNL9nq1UW2Ewys1j8NKQdcKo1xL
Y8B0uGpVYvaIODuEu8j0He4d9TdtXulCdjrSEIImjry/blgxcoWsuvxt/olT
vVGRTLbSxQL+ti5IJuEt9G6qPTN5NL++OKYVwj3jeyDsPCmgtWtXTI/Zlf4Y
n9DF6rQHVN4hp5ev9vbQLt7auzatculs11pHp7h+H4RJfl5tv9hmDliLGe3O
pYMJ59ujzqSDfT1Yt+eJhrxyIfVuHd2f+CQoCXIirNCcm8/nRwja5o9NtTZF
1Zb4YEDEfSwPrkMfmXrVtw59bg42Ny4CjnEbOAX04f+us7X8hN4WM/7cgH1s
s8a1GXssKxUvA8xZi9tpybMavci1i8ADiDv36eDhjdXN6c72g3VK19KKJvF1
MDwdPhJjndVnIFdjk6aMXv3qIyOXxZydDIu5sYtKlVM28OLrIH0ZqvLn3gT8
rHq3nVP+ymTywf5Np6zR8cQq/9Wqnh6O8cWImPvxmxHc3vTFf7oKsqwJCwAA

-->

</rfc>
