<?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.39 (Ruby 3.4.9) -->
<rfc xmlns:xi="http://www.w3.org/2001/XInclude" ipr="trust200902" docName="draft-ietf-netmod-immutable-flag-12" category="std" consensus="true" submissionType="IETF" updates="8040, 8526" tocInclude="true" sortRefs="true" symRefs="true" version="3">
  <!-- xml2rfc v2v3 conversion 3.33.0 -->
  <front>
    <title abbrev="immutable flag">YANG Metadata Annotation for Immutable Flag</title>
    <seriesInfo name="Internet-Draft" value="draft-ietf-netmod-immutable-flag-12"/>
    <author fullname="Qiufang Ma" role="editor">
      <organization>Huawei</organization>
      <address>
        <postal>
          <street>101 Software Avenue, Yuhua District</street>
          <city>Nanjing, Jiangsu</city>
          <code>210012</code>
          <country>China</country>
        </postal>
        <email>maqiufang1@huawei.com</email>
      </address>
    </author>
    <author fullname="Qin Wu">
      <organization>Huawei</organization>
      <address>
        <postal>
          <street>101 Software Avenue, Yuhua District</street>
          <city>Nanjing, Jiangsu</city>
          <code>210012</code>
          <country>China</country>
        </postal>
        <email>bill.wu@huawei.com</email>
      </address>
    </author>
    <author fullname="Balazs Lengyel" role="editor">
      <organization>Ericsson</organization>
      <address>
        <email>balazs.lengyel@ericsson.com</email>
      </address>
    </author>
    <author fullname="Hongwei Li">
      <organization>HPE</organization>
      <address>
        <email>flycoolman@gmail.com</email>
      </address>
    </author>
    <date year="2026" month="June" day="12"/>
    <area>Operations and Management</area>
    <workgroup>netmod</workgroup>
    <keyword>immutable flag</keyword>
    <keyword>system configuration</keyword>
    <abstract>
      <?line 75?>

<t>This document defines a way to formally document an existing behavior,
   implemented by servers in production, on the immutability of some
   system-provided nodes, using a YANG metadata annotation called
   "immutable" to flag which nodes are immutable.</t>
      <t>Clients may use "immutable" annotations provided by the server, to
   know beforehand why certain otherwise valid configuration requests
   will cause the server to return an error.</t>
      <t>The immutable flag is descriptive, documenting an existing behavior, not
   proscriptive, dictating server behaviors.</t>
      <t>This document updates RFC 8040 and RFC 8526.</t>
    </abstract>
    <note removeInRFC="true">
      <name>Discussion Venues</name>
      <t>Discussion of this document takes place on the
    Network Modeling Working Group mailing list (netmod@ietf.org),
    which is archived at <eref target="https://mailarchive.ietf.org/arch/browse/netmod/"/>.</t>
      <t>Source for this draft and an issue tracker can be found at
    <eref target="https://github.com/netmod-wg/immutable-flag"/>.</t>
    </note>
  </front>
  <middle>
    <?line 91?>

<section anchor="introduction">
      <name>Introduction</name>
      <t>This document defines a YANG metadata annotation <xref target="RFC7952"/> to formally document
   an existing model handling behavior that has been used by
   multiple standard organizations and vendors.  It is the aim to create
   one single standard solution for documenting non-modifiable system
   data declared as configuration, instead of the multiple existing
   vendor and organization specific solutions.</t>
      <t>YANG <xref target="RFC7950"/> is a data modeling language used to model both state
   and configuration data, based on the "config" statement.  However,
   there exists some system configuration data that cannot be modified
   by the client (it is immutable), but still needs to be declared as
   "config true" to:</t>
      <ul spacing="normal">
        <li>
          <t>allow configuration of data nodes under immutable lists or containers;</t>
        </li>
        <li>
          <t>place "when", "must" and "leafref" constraints between configuration
   and immutable nodes;</t>
        </li>
        <li>
          <t>ensure the existence of specific list entries that are provided and
   needed by the system, while additional list entries can be created,
   modified or deleted.</t>
        </li>
      </ul>
      <t>If the server always rejects a client's attempt to override some
   system-provided data because it internally thinks the data is immutable, it should document
   it towards the clients in a machine-readable way rather than writing as
   plain text in the "description" statement.</t>
      <t>This document defines a way to formally document the existing behavior,
   implemented by servers in production, on the immutability of some
   system-provided nodes, using a YANG metadata annotation <xref target="RFC7952"/>
   called "immutable" to flag which nodes are immutable. This document does not
   regulate server behaviors. That said, it is expected that a server will return
   an error with an error-tag containing "invalid-value" if a client attempts to
   modify an immutable node.</t>
      <t>The following is a list of already implemented and potential use
   cases:</t>
      <ul spacing="normal">
        <li>
          <t>UC1  Modeling of server capabilities</t>
        </li>
        <li>
          <t>UC2  Hardware based auto-configuration</t>
        </li>
        <li>
          <t>UC3  Predefined administrator roles</t>
        </li>
        <li>
          <t>UC4  Declaring immutable system configuration from the perspective of a logical network element (LNE)</t>
        </li>
      </ul>
      <t><xref target="use-cases"/> describes the use cases in detail.</t>
      <section anchor="updates-to-rfc-8040">
        <name>Updates to RFC 8040</name>
        <t>This document updates Sections <xref target="RFC8040" section="4.8" sectionFormat="bare"/> and <xref target="RFC8040" section="9.1.1" sectionFormat="bare"/> of <xref target="RFC8040"/> to add an
  additional query parameter named "with-immutability", as specified in <xref target="RESTCONF-ext"/>.</t>
      </section>
      <section anchor="updates-to-rfc-8526">
        <name>Updates to RFC 8526</name>
        <t>This document updates <xref section="3.1.1" sectionFormat="of" target="RFC8526"/> to add an additional input parameter
   named "with-immutability" for the &lt;get-data&gt; operation, as specified in <xref target="NETCONF-ext"/>.</t>
      </section>
      <section anchor="editorial-note-to-be-removed-by-rfc-editor">
        <name>Editorial Note (To be removed by RFC Editor)</name>
        <t>Note to the RFC Editor: This section is to be removed prior to publication.</t>
        <t>This document contains placeholder values that need to be replaced with finalized
  values at the time of publication.  This note summarizes all of the
  substitutions that are needed.  No other RFC Editor instructions are specified
  elsewhere in this document.</t>
        <t>Please apply the following replacements:</t>
        <ul spacing="normal">
          <li>
            <t>XXXX --&gt; the assigned RFC number for this draft</t>
          </li>
          <li>
            <t>2026-05-26 --&gt; the actual date of the publication of this document</t>
          </li>
        </ul>
      </section>
    </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?>

<t>The document uses the following definition in <xref target="RFC6241"/>:</t>
      <ul spacing="normal">
        <li>
          <t>configuration data</t>
        </li>
      </ul>
      <t>The document uses the following definition in <xref target="RFC7950"/>:</t>
      <ul spacing="normal">
        <li>
          <t>data node</t>
        </li>
        <li>
          <t>leaf</t>
        </li>
        <li>
          <t>leaf-list</t>
        </li>
        <li>
          <t>container</t>
        </li>
        <li>
          <t>list</t>
        </li>
        <li>
          <t>anydata</t>
        </li>
        <li>
          <t>anyxml</t>
        </li>
        <li>
          <t>interior node</t>
        </li>
        <li>
          <t>data tree</t>
        </li>
      </ul>
      <t>The document uses the following definition in <xref target="RFC8341"/>:</t>
      <ul spacing="normal">
        <li>
          <t>access operation</t>
        </li>
      </ul>
      <t>The document uses the following definition in <xref target="I-D.ietf-netmod-system-config"/>:</t>
      <ul spacing="normal">
        <li>
          <t>system configuration</t>
        </li>
      </ul>
      <t>This document defines the following term:</t>
      <dl>
        <dt>immutable flag:</dt>
        <dd>
          <t>A read-only state value the server provides to describe
   immutability of the configuration, which is conveyed via a YANG metadata annotation
   called "immutable" with a boolean value.</t>
        </dd>
      </dl>
    </section>
    <section anchor="applicability">
      <name>Applicability</name>
      <t>While the immutable flag applies to all configuration nodes, its value <bcp14>MUST NOT</bcp14> be set to true for configuration data that is not system configuration.</t>
      <t>The immutable flag is only visible in read-only datastores (i.e., &lt;system&gt;
   <xref target="I-D.ietf-netmod-system-config"/>, &lt;intended&gt;, and &lt;operational&gt;)
   when a "with-immutability" parameter is carried (<xref target="with-immutability"/>),
   however this only serves as descriptive information about the
   instance node itself, but has no effect on the handling of the read-only
   datastore. If the immutable flag is requested to be returned for an invalid
   datastore, then the server <bcp14>MUST</bcp14> return an error response with the error-tag value
   "unknown-element".</t>
      <t>Configuration data has the same immutability if it appears in different datastores.
   The immutability of configuration data is protocol and
   user independent.</t>
    </section>
    <section anchor="immutable-metadata-annotation">
      <name>"Immutable" Metadata Annotation</name>
      <section anchor="immutable-def">
        <name>Definition</name>
        <t>The immutable flag which is defined as the metadata annotation takes a boolean
   value, and it is returned as requested by the client using a "with-immutability"
   parameter (<xref target="with-immutability"/>). If the "immutable" metadata annotation for
   a configuration node is not specified, the default "immutable" value is the
   same as the value of its parent node in the data tree (<xref target="interior"/>).
   The immutable metadata annotation value for a top-level instance
   node is "false" if not specified.</t>
        <t>A node that is annotated as immutable cannot be changed via configuring
   a different value in read-write configuration datastores (e.g., &lt;running&gt;),
   nor is there any way to delete the node from the intended datastore, which is the merged result of &lt;running&gt; and &lt;system&gt; as defined in <xref section="4" sectionFormat="of" target="I-D.ietf-netmod-system-config"/>. The node <bcp14>MAY</bcp14> be explicitly configured by a client in &lt;running&gt; with the
   same value and that configuration in &lt;running&gt; may subsequently be removed,
   but neither of these edits will change the configuration in &lt;intended&gt; (if implemented) on the device.</t>
        <t>Note that "immutable" metadata annotations are used to annotate data node
   instances.  A list may have multiple instances in the data tree,
   servers may annotate some of the instances as immutable, while others as
   mutable.</t>
        <t>Servers <bcp14>MUST</bcp14> ignore any immutable annotations sent from the client.</t>
      </section>
      <section anchor="with-immutability">
        <name>"with-immutability" Parameter</name>
        <t>This section specifies the NETCONF <xref target="RFC6241"/> <xref target="RFC8526"/> and RESTCONF <xref target="RFC8040"/>
   protocol extensions to support the "with-immutability" parameter.
   The "immutable" metadata annotations are not returned in a response unless
   explicitly requested by the client using this parameter.</t>
        <section anchor="NETCONF-ext">
          <name>NETCONF Extensions to Support "with-immutability"</name>
          <t>This document updates <xref target="RFC8526"/> to augment the &lt;get-data&gt;
   operation with an additional parameter named "with-immutability" when interacting with read-only datastores.
   If present, this parameter requests that the server includes
   the "immutable" metadata annotations in its response.</t>
          <t><xref target="tree"/> provides the tree structure <xref target="RFC8340"/> of augmentations to NETCONF
   operations, as defined in the "ietf-immutable-annotation" module (<xref target="module"/>).</t>
          <figure anchor="tree">
            <name>Augmentations to NETCONF Operations</name>
            <artwork><![CDATA[
module: ietf-immutable-annotation
  augment /ncds:get-data/ncds:input:
    +---w with-immutability?   empty
]]></artwork>
          </figure>
          <t>To discover if the "with-immutability" parameter is supported by the server,
a NETCONF client can query if the server implements "ietf-immutable-annotation" module by reading the YANG library information from the operational state datastore, as per <xref target="RFC8526"/>.</t>
          <t>Refer to <xref target="NETCONF-example"/> for an example of NETCONF operation with "with-immutability" input parameter.</t>
        </section>
        <section anchor="RESTCONF-ext">
          <name>RESTCONF Extensions to Support "with-immutability"</name>
          <t>This document extends Sections <xref target="RFC8040" section="4.8" sectionFormat="bare"/> and <xref target="RFC8040" section="9.1.1" sectionFormat="bare"/> of <xref target="RFC8040"/> to add a query
   parameter named "with-immutability" to the GET operation. If present, this parameter
   requests that the server includes the "immutable" metadata annotations in its
   response. This parameter is only allowed with no values carried when interacting with read-only datastores.
   If it has any unexpected value, then a "400 Bad Request" status-line is returned.
   RESTCONF protocol operations for the datastore resources are defined in <xref target="RFC8527"/>.</t>
          <t>To enable a RESTCONF client to discover if the "with-immutability" query parameter
   is supported by the server, the following capability URI is defined:</t>
          <artwork><![CDATA[
    urn:ietf:params:restconf:capability:with-immutability:1.0
]]></artwork>
          <t>Refer to <xref target="RESTCONF-example"/> for an example of RESTCONF operation with "with-immutability" query parameter.</t>
        </section>
      </section>
    </section>
    <section anchor="use-of-immutable-flag-for-different-statements">
      <name>Use of Immutable Flag for Different Statements</name>
      <t>This section defines what the immutable flag means to the client for
   each instance of YANG data node statement.</t>
      <section anchor="the-leaf-statement">
        <name>The "leaf" Statement</name>
        <t>When a leaf node instance is immutable, it cannot be configured with a
   different value in read-write configuration datastores (e.g., &lt;running&gt;) or
   removed from &lt;intended&gt; (if implemented). Though it can be created/deleted
   in read-write configuration datastores (see Sections <xref format="counter" target="immutable-def"/> and <xref format="counter" target="system-interact"/>).</t>
      </section>
      <section anchor="the-leaf-list-statement">
        <name>The "leaf-list" Statement</name>
        <t>When a leaf-list entry is immutable, it cannot be configured with a
  different value in read-write configuration datastore (e.g., &lt;running&gt;) or
  removed from &lt;intended&gt; (if implemented). Though it can be created/deleted
  in read-write configuration datastores (see Sections <xref format="counter" target="immutable-def"/> and <xref format="counter" target="system-interact"/>).</t>
        <t>The immutable annotation attached to the individual leaf-list entry
   provides immutability with respect to the entry itself. As per the restrictions in <xref target="RFC7952"/>,
   annotations cannot be attached to an entire leaf-list instance and only
   to individual leaf-list entries, which implies a leaf-list as a whole
   can only inherit immutability from a parent node (e.g., container).</t>
        <t>If a leaf-list as a whole is immutable via inheritance from a parent node, any leaf-list entries cannot be added,
   modified, or reordered (if it is ordered-by user).</t>
        <t>Refer to <xref target="imm-leaf-list"/> for an example of immutability of leaf-lists.</t>
      </section>
      <section anchor="the-container-statement">
        <name>The "container" Statement</name>
        <t>When a container node instance is immutable, it cannot be removed from &lt;intended&gt; (if implemented).
   Though it can be created/deleted in read-write configuration datastores
   (see Sections <xref format="counter" target="immutable-def"/> and <xref format="counter" target="system-interact"/>).</t>
        <t>Descendant nodes of the container recursively inherit the immutability of the container, unless
   the immutability is overridden by an "immutable" annotation on a descendant node (<xref target="interior"/>).</t>
      </section>
      <section anchor="the-list-statement">
        <name>The "list" Statement</name>
        <t>When a list entry is immutable, it cannot be removed from &lt;intended&gt; (if implemented).
  Though it can be created/deleted in read-write configuration datastores
  (see Sections <xref format="counter" target="immutable-def"/> and <xref format="counter" target="system-interact"/>).</t>
        <t>Descendant nodes of the list entry recursively inherit the immutability of the list entry, unless
  the immutability is overridden by an "immutable" annotation on a descendant node (<xref target="interior"/>).</t>
        <t>The immutable annotation attached to the individual list entry provides
   immutability with respect to the entry itself. As per the restrictions in <xref target="RFC7952"/>,
   annotations cannot be attached to an entire list instance and only
   to individual list entries, which implies a list as a whole
   can only inherit immutability from a parent node (e.g., container).</t>
        <t>If a list as a whole is immutable via inheritance from a parent node, any list entries cannot be added, removed, or reordered (if it is ordered-by user).
   Each list entry inherits the immutability of the list by default, unless the immutability is
   overridden by an "immutable" annotation on a list entry.</t>
        <t>Refer to <xref target="imm-list"/> for an example of immutability of lists.</t>
      </section>
      <section anchor="the-anydata-statement">
        <name>The "anydata" Statement</name>
        <t>When an "anydata" node instance is immutable, it cannot be removed from &lt;intended&gt; (if implemented).
   Though it can be created/deleted in read-write configuration datastores
   (see Sections <xref format="counter" target="immutable-def"/> and <xref format="counter" target="system-interact"/>).</t>
        <t>Additionally, as with all interior nodes, immutability is recursively applied to
   descendants (<xref target="interior"/>).</t>
      </section>
      <section anchor="the-anyxml-statement">
        <name>The "anyxml" Statement</name>
        <t>When an "anyxml" node instance is immutable, it cannot be removed from &lt;intended&gt; (if implemented).
   Though it can be created/deleted in read-write configuration datastores
   (see Sections <xref format="counter" target="immutable-def"/> and <xref format="counter" target="system-interact"/>).</t>
        <t>Additionally, as with all interior nodes, immutability is recursively applied to
   descendants (<xref target="interior"/>).</t>
      </section>
    </section>
    <section anchor="interior">
      <name>Immutability of Interior Nodes</name>
      <t>Immutability is a property of a configuration data node instance, conveyed as metadata <xref target="RFC7952"/>. It is
   recursively applied to descendants, which may reset the immutability
   state as needed, thereby affecting their descendants.  There is no limit
   to the number of times the immutability state may change in a data tree.</t>
      <t>If the "immutable" metadata annotation for a returned child node is omitted,
   it has the same immutability as its parent node. The immutability of top
   hierarchy of returned nodes is false by default. Servers may suppress the
   annotation if it is inherited from its parent node or uses the default value
   as the top-level node, but are not precluded from returning the annotation
   on every single element.</t>
      <t>Refer to <xref target="inherit"/> for an example of how immutability is recursively
   inherited or explicitly reset by descendants.</t>
    </section>
    <section anchor="system-interact">
      <name>System Configuration Datastore Interactions</name>
      <t>Immutable configuration can only be created, updated and deleted by the server,
   and it is present in &lt;system&gt;, if implemented. That said, the existence of
   immutable configuration is independent of whether &lt;system&gt; is implemented or
   not. Not all system configuration data is immutable. Immutable configuration
   does not appear in &lt;running&gt; unless it is explicitly configured.</t>
      <t>As specified in <xref target="immutable-def"/>, a client <bcp14>MAY</bcp14> create/delete immutable nodes
   with same values as defined by server in read-write configuration datastore (e.g.,
   &lt;candidate&gt;, &lt;running&gt;), which merely makes immutable nodes
   visible/invisible in the datastore.</t>
    </section>
    <section anchor="nacm-interactions">
      <name>NACM Interactions</name>
      <t>The server rejects an operation request due to immutability when it
   tries to perform the operation on the request data. Any immutability checking
   <bcp14>MUST</bcp14> be performed after
   access control decisions, if the Network Configuration Access
   Control Model (NACM) <xref target="RFC8341"/> is implemented on a server. For
   example, if an operation requests to override an immutable
   configuration node, but the server checks the user is not authorized
   to perform the requested access operation on the request data, the
   request is rejected with an "access-denied" error.</t>
    </section>
    <section anchor="module">
      <name>YANG Module</name>
      <t>This module imports definitions from <xref target="RFC7952"/>, <xref target="RFC8342"/>, <xref target="RFC8526"/>, and <xref target="I-D.ietf-netmod-system-config"/>.</t>
      <sourcecode markers="true" name="ietf-immutable-annotation@2026-05-26.yang"><![CDATA[
module ietf-immutable-annotation {
  yang-version 1.1;
  namespace "urn:ietf:params:xml:ns:yang:ietf-immutable-annotation";
  prefix imma;

  import ietf-yang-metadata {
    prefix md;
    reference
      "RFC 7952: Defining and Using Metadata with YANG";
  }
  import ietf-netconf-nmda {
    prefix ncds;
    reference
      "RFC 8526: NETCONF Extensions to Support the Network
       Management Datastore Architecture";
  }
  import ietf-system-datastore {
    prefix sysds;
    reference
      "RFC YYYY: System-defined Configuration";
  }
  import ietf-datastores {
    prefix ds;
    reference
      "RFC 8342: Network Management Datastore Architecture
                 (NMDA)";
  }

  organization
    "IETF Network Modeling (NETMOD) Working Group";
  contact
    "WG Web: <https://datatracker.ietf.org/wg/netmod/>
     WG List: <mailto:netmod@ietf.org>
     Author: Qiufang Ma
             <mailto:maqiufang1@huawei.com>
     Author: Qin Wu
             <mailto:bill.wu@huawei.com>
     Author: Balazs Lengyel
             <mailto:balazs.lengyel@ericsson.com>
     Author: Hongwei Li
             <mailto:flycoolman@gmail.com>";
  description
    "This module defines a metadata annotation called 'immutable'
     to allow the server to formally document existing behavior on
     the mutability of some system configuration. Clients may use
     'immutable' metadata annotation provided by the server to know
     beforehand why certain otherwise valid configuration requests
     will cause the server to return an error.

     Copyright (c) 2026 IETF Trust and the persons identified
     as authors of the code. All rights reserved.

     Redistribution and use in source and binary forms, with
     or without modification, is permitted pursuant to, and
     subject to the license terms contained in, the Revised
     BSD License set forth in Section 4.c of the IETF Trust's
     Legal Provisions Relating to IETF Documents
     (https://trustee.ietf.org/license-info).

     This version of this YANG module is part of RFC XXXX
     (https://www.rfc-editor.org/info/rfcXXXX); see the RFC
     itself for full legal notices.";

  revision 2026-05-26 {
    description
      "Initial revision.";
    // RFC Ed.: replace XXXX and remove this comment
    reference
      "RFC XXXX: YANG Metadata Annotation for Immutable Flag";
  }
  md:annotation immutable {
    type boolean;
    description
      "The 'immutable' metadata annotation indicates the
       immutability of an instantiated data node. It takes as a
       value 'true' or 'false'. An immutable node cannot be changed
       via configuring a different value in read-write configuration
       datastores (e.g., <running>), though it can be created/deleted
       in read-write configuration datastores. If not specified for
       a given configuration data node, the immutability is the
       same as the value of its parent node in the data tree. The
       default value of 'immutable' annotation for a top-level
       instance node is false if not specified.";
  }

  augment "/ncds:get-data/ncds:input" {
    description
      "Allows the server to include 'immutable' metadata
       annotations in its response to get-data operation.";
    leaf with-immutability {
      when
        "derived-from-or-self(../ncds:datastore,'sysds:system') "
      + "or derived-from-or-self(../ncds:datastore,'ds:intended') "
      + "or derived-from-or-self(../ncds:datastore,'ds:operational')";
      type empty;
      description
        "If this parameter is present, the server returns the
         'immutable' annotation for configuration that it considers
         immutable.";
    }
  }
}
]]></sourcecode>
    </section>
    <section anchor="security-considerations">
      <name>Security Considerations</name>
      <t>This section is modeled after the template described in <xref section="3.7" sectionFormat="of" target="RFC9907"/>.</t>
      <t>The "ietf-immutable-annotation" YANG module defines a data model that is
   designed to be accessed via YANG-based management protocols, such as the Network Configuration Protocol (NETCONF) <xref target="RFC6241"/> and RESTCONF <xref target="RFC8040"/>. These YANG-based management protocols (1) have to
   use a secure transport layer (e.g., Secure Shell (SSH) <xref target="RFC4252"/>, TLS <xref target="I-D.ietf-tls-rfc8446bis"/>, and QUIC <xref target="RFC9000"/>) and (2) have to use mutual authentication.</t>
      <t>The Network Configuration Access Control Model (NACM) <xref target="RFC8341"/>
   provides the means to restrict access for particular NETCONF or
   RESTCONF users to a preconfigured subset of all available NETCONF or
   RESTCONF protocol operations and content.</t>
      <t>The YANG module specified in this document defines a metadata annotation,
   it also extends the RPC operations of the NETCONF protocol in <xref target="RFC6241"/>
   and <xref target="RFC8526"/>.</t>
      <t>The immutable metadata annotation exposes the immutability of configuration data,
   which may provide hints for attackers to find vulnerabilities in the network,
   e.g., to leverage the immutability of some configuration to better craft an attack.
   Since immutable annotations are attached to the instances of configuration data nodes,
   it is only accessible to clients that have the permissions to read the annotated configuration nodes.</t>
      <t>The security considerations for the NETCONF protocol operations (see
   <xref section="9" sectionFormat="of" target="RFC6241"/> and <xref section="6" sectionFormat="of" target="RFC8526"/>) also apply to
   the operations extended in this document.</t>
    </section>
    <section anchor="iana-considerations">
      <name>IANA Considerations</name>
      <section anchor="the-ietf-xml-registry">
        <name>The "IETF XML" Registry</name>
        <t>This document registers one XML namespace URN in the 'IETF XML registry',
   following the format defined in <xref target="RFC3688"/>.</t>
        <artwork><![CDATA[
URI: urn:ietf:params:xml:ns:yang:ietf-immutable-annotation
Registrant Contact: The IESG.
XML: N/A, the requested URIs are XML namespaces.
]]></artwork>
      </section>
      <section anchor="the-yang-module-names-registry">
        <name>The "YANG Module Names" Registry</name>
        <t>This document registers one module name in the 'YANG Module Names'
registry, defined in <xref target="RFC6020"/>.</t>
        <artwork><![CDATA[
name: ietf-immutable-annotation
prefix: imma
namespace: urn:ietf:params:xml:ns:yang:ietf-immutable-annotation
RFC: XXXX
]]></artwork>
      </section>
      <section anchor="restconf-capability-urn-registry">
        <name>RESTCONF Capability URN Registry</name>
        <t>This document defines the following capability identifier URNs in the
"RESTCONF Capability URNs" registry defined in <xref target="RFC8040"/>:</t>
        <artwork><![CDATA[
Index
Capability Identifier
---------------------

:with-immutability
urn:ietf:params:restconf:capability:with-immutability:1.0
]]></artwork>
      </section>
    </section>
  </middle>
  <back>
    <references anchor="sec-combined-references">
      <name>References</name>
      <references anchor="sec-normative-references">
        <name>Normative References</name>
        <reference anchor="RFC7952">
          <front>
            <title>Defining and Using Metadata with YANG</title>
            <author fullname="L. Lhotka" initials="L." surname="Lhotka"/>
            <date month="August" year="2016"/>
            <abstract>
              <t>This document defines a YANG extension that allows for defining metadata annotations in YANG modules. The document also specifies XML and JSON encoding of annotations and other rules for annotating instances of YANG data nodes.</t>
            </abstract>
          </front>
          <seriesInfo name="RFC" value="7952"/>
          <seriesInfo name="DOI" value="10.17487/RFC7952"/>
        </reference>
        <reference anchor="RFC7950">
          <front>
            <title>The YANG 1.1 Data Modeling Language</title>
            <author fullname="M. Bjorklund" initials="M." role="editor" surname="Bjorklund"/>
            <date month="August" year="2016"/>
            <abstract>
              <t>YANG is a data modeling language used to model configuration data, state data, Remote Procedure Calls, and notifications for network management protocols. This document describes the syntax and semantics of version 1.1 of the YANG language. YANG version 1.1 is a maintenance release of the YANG language, addressing ambiguities and defects in the original specification. There are a small number of backward incompatibilities from YANG version 1. This document also specifies the YANG mappings to the Network Configuration Protocol (NETCONF).</t>
            </abstract>
          </front>
          <seriesInfo name="RFC" value="7950"/>
          <seriesInfo name="DOI" value="10.17487/RFC7950"/>
        </reference>
        <reference anchor="RFC8040">
          <front>
            <title>RESTCONF Protocol</title>
            <author fullname="A. Bierman" initials="A." surname="Bierman"/>
            <author fullname="M. Bjorklund" initials="M." surname="Bjorklund"/>
            <author fullname="K. Watsen" initials="K." surname="Watsen"/>
            <date month="January" year="2017"/>
            <abstract>
              <t>This document describes an HTTP-based protocol that provides a programmatic interface for accessing data defined in YANG, using the datastore concepts defined in the Network Configuration Protocol (NETCONF).</t>
            </abstract>
          </front>
          <seriesInfo name="RFC" value="8040"/>
          <seriesInfo name="DOI" value="10.17487/RFC8040"/>
        </reference>
        <reference anchor="RFC8526">
          <front>
            <title>NETCONF Extensions to Support the Network Management Datastore Architecture</title>
            <author fullname="M. Bjorklund" initials="M." surname="Bjorklund"/>
            <author fullname="J. Schoenwaelder" initials="J." surname="Schoenwaelder"/>
            <author fullname="P. Shafer" initials="P." surname="Shafer"/>
            <author fullname="K. Watsen" initials="K." surname="Watsen"/>
            <author fullname="R. Wilton" initials="R." surname="Wilton"/>
            <date month="March" year="2019"/>
            <abstract>
              <t>This document extends the Network Configuration Protocol (NETCONF) defined in RFC 6241 in order to support the Network Management Datastore Architecture (NMDA) defined in RFC 8342.</t>
              <t>This document updates RFCs 6241 and 7950. The update to RFC 6241 adds new and operations and augments existing,, and operations. The update to RFC 7950 requires the usage of the YANG library (described in RFC 8525) by NETCONF servers implementing the NMDA.</t>
            </abstract>
          </front>
          <seriesInfo name="RFC" value="8526"/>
          <seriesInfo name="DOI" value="10.17487/RFC8526"/>
        </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="RFC6241">
          <front>
            <title>Network Configuration Protocol (NETCONF)</title>
            <author fullname="R. Enns" initials="R." role="editor" surname="Enns"/>
            <author fullname="M. Bjorklund" initials="M." role="editor" surname="Bjorklund"/>
            <author fullname="J. Schoenwaelder" initials="J." role="editor" surname="Schoenwaelder"/>
            <author fullname="A. Bierman" initials="A." role="editor" surname="Bierman"/>
            <date month="June" year="2011"/>
            <abstract>
              <t>The Network Configuration Protocol (NETCONF) defined in this document provides mechanisms to install, manipulate, and delete the configuration of network devices. It uses an Extensible Markup Language (XML)-based data encoding for the configuration data as well as the protocol messages. The NETCONF protocol operations are realized as remote procedure calls (RPCs). This document obsoletes RFC 4741. [STANDARDS-TRACK]</t>
            </abstract>
          </front>
          <seriesInfo name="RFC" value="6241"/>
          <seriesInfo name="DOI" value="10.17487/RFC6241"/>
        </reference>
        <reference anchor="RFC8341">
          <front>
            <title>Network Configuration Access Control Model</title>
            <author fullname="A. Bierman" initials="A." surname="Bierman"/>
            <author fullname="M. Bjorklund" initials="M." surname="Bjorklund"/>
            <date month="March" year="2018"/>
            <abstract>
              <t>The standardization of network configuration interfaces for use with the Network Configuration Protocol (NETCONF) or the RESTCONF protocol requires a structured and secure operating environment that promotes human usability and multi-vendor interoperability. There is a need for standard mechanisms to restrict NETCONF or RESTCONF protocol access for particular users to a preconfigured subset of all available NETCONF or RESTCONF protocol operations and content. This document defines such an access control model.</t>
              <t>This document obsoletes RFC 6536.</t>
            </abstract>
          </front>
          <seriesInfo name="STD" value="91"/>
          <seriesInfo name="RFC" value="8341"/>
          <seriesInfo name="DOI" value="10.17487/RFC8341"/>
        </reference>
        <reference anchor="I-D.ietf-netmod-system-config">
          <front>
            <title>System-defined Configuration</title>
            <author fullname="Qiufang Ma" initials="Q." surname="Ma">
              <organization>Huawei</organization>
            </author>
            <author fullname="Qin Wu" initials="Q." surname="Wu">
              <organization>Huawei</organization>
            </author>
            <author fullname="Chong Feng" initials="C." surname="Feng">
         </author>
            <date day="28" month="January" year="2026"/>
            <abstract>
              <t>   The Network Management Datastore Architecture (NMDA) in RFC 8342
   defines several configuration datastores holding configuration.  The
   contents of these configuration datastores are controlled by clients.
   This document introduces the concept of system configuration
   datastore holding configuration controlled by the system on which a
   server is running.  The system configuration can be referenced (e.g.,
   leafref) by configuration explicitly created by clients.

   This document updates RFC 8342.

              </t>
            </abstract>
          </front>
          <seriesInfo name="Internet-Draft" value="draft-ietf-netmod-system-config-20"/>
        </reference>
        <reference anchor="RFC8527">
          <front>
            <title>RESTCONF Extensions to Support the Network Management Datastore Architecture</title>
            <author fullname="M. Bjorklund" initials="M." surname="Bjorklund"/>
            <author fullname="J. Schoenwaelder" initials="J." surname="Schoenwaelder"/>
            <author fullname="P. Shafer" initials="P." surname="Shafer"/>
            <author fullname="K. Watsen" initials="K." surname="Watsen"/>
            <author fullname="R. Wilton" initials="R." surname="Wilton"/>
            <date month="March" year="2019"/>
            <abstract>
              <t>This document extends the RESTCONF protocol defined in RFC 8040 in order to support the Network Management Datastore Architecture (NMDA) defined in RFC 8342.</t>
              <t>This document updates RFC 8040 by introducing new datastore resources, adding a new query parameter, and requiring the usage of the YANG library (described in RFC 8525) by RESTCONF servers implementing the NMDA.</t>
            </abstract>
          </front>
          <seriesInfo name="RFC" value="8527"/>
          <seriesInfo name="DOI" value="10.17487/RFC8527"/>
        </reference>
        <reference anchor="RFC8342">
          <front>
            <title>Network Management Datastore Architecture (NMDA)</title>
            <author fullname="M. Bjorklund" initials="M." surname="Bjorklund"/>
            <author fullname="J. Schoenwaelder" initials="J." surname="Schoenwaelder"/>
            <author fullname="P. Shafer" initials="P." surname="Shafer"/>
            <author fullname="K. Watsen" initials="K." surname="Watsen"/>
            <author fullname="R. Wilton" initials="R." surname="Wilton"/>
            <date month="March" year="2018"/>
            <abstract>
              <t>Datastores are a fundamental concept binding the data models written in the YANG data modeling language to network management protocols such as the Network Configuration Protocol (NETCONF) and RESTCONF. This document defines an architectural framework for datastores based on the experience gained with the initial simpler model, addressing requirements that were not well supported in the initial model. This document updates RFC 7950.</t>
            </abstract>
          </front>
          <seriesInfo name="RFC" value="8342"/>
          <seriesInfo name="DOI" value="10.17487/RFC8342"/>
        </reference>
        <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 anchor="sec-informative-references">
        <name>Informative References</name>
        <reference anchor="TR-531" target="https://wiki.opennetworking.org/download/attachments/376340494/Draft_TR-531_UML-YANG_Mapping_Gdls_v1.1.03.docx?version=5&amp;modificationDate=1675432243513&amp;api=v2">
          <front>
            <title>UML to YANG Mapping Guidelines</title>
            <author>
              <organization>ONF</organization>
            </author>
            <date year="2023" month="February"/>
          </front>
        </reference>
        <reference anchor="TS28.623" target="https://www.3gpp.org/ftp/Specs/archive/28_series/28.623/28623-i02.zip">
          <front>
            <title>Telecommunication management; Generic Network Resource Model (NRM) Integration Reference Point (IRP); Solution Set (SS) definitions</title>
            <author>
              <organization>3GPP</organization>
            </author>
            <date/>
          </front>
        </reference>
        <reference anchor="TS32.156" target="https://www.3gpp.org/ftp/Specs/archive/32_series/32.156/32156-h10.zip">
          <front>
            <title>Telecommunication management; Fixed Mobile Convergence (FMC) Model repertoire</title>
            <author>
              <organization>3GPP</organization>
            </author>
            <date/>
          </front>
        </reference>
        <reference anchor="RFC8340">
          <front>
            <title>YANG Tree Diagrams</title>
            <author fullname="M. Bjorklund" initials="M." surname="Bjorklund"/>
            <author fullname="L. Berger" initials="L." role="editor" surname="Berger"/>
            <date month="March" year="2018"/>
            <abstract>
              <t>This document captures the current syntax used in YANG module tree diagrams. The purpose of this document is to provide a single location for this definition. This syntax may be updated from time to time based on the evolution of the YANG language.</t>
            </abstract>
          </front>
          <seriesInfo name="BCP" value="215"/>
          <seriesInfo name="RFC" value="8340"/>
          <seriesInfo name="DOI" value="10.17487/RFC8340"/>
        </reference>
        <reference anchor="RFC9907">
          <front>
            <title>Guidelines for Authors and Reviewers of Documents Containing YANG Data Models</title>
            <author fullname="A. Bierman" initials="A." surname="Bierman"/>
            <author fullname="M. Boucadair" initials="M." role="editor" surname="Boucadair"/>
            <author fullname="Q. Wu" initials="Q." surname="Wu"/>
            <date month="March" year="2026"/>
            <abstract>
              <t>This document provides guidelines for authors and reviewers of specifications containing YANG data models, including IANA-maintained YANG 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.</t>
              <t>This document obsoletes RFC 8407; it also updates RFC 8126 by providing additional guidelines for writing the IANA considerations for RFCs that specify IANA-maintained YANG modules.</t>
            </abstract>
          </front>
          <seriesInfo name="BCP" value="216"/>
          <seriesInfo name="RFC" value="9907"/>
          <seriesInfo name="DOI" value="10.17487/RFC9907"/>
        </reference>
        <reference anchor="RFC4252">
          <front>
            <title>The Secure Shell (SSH) Authentication Protocol</title>
            <author fullname="T. Ylonen" initials="T." surname="Ylonen"/>
            <author fullname="C. Lonvick" initials="C." role="editor" surname="Lonvick"/>
            <date month="January" year="2006"/>
            <abstract>
              <t>The Secure Shell Protocol (SSH) is a protocol for secure remote login and other secure network services over an insecure network. This document describes the SSH authentication protocol framework and public key, password, and host-based client authentication methods. Additional authentication methods are described in separate documents. The SSH authentication protocol runs on top of the SSH transport layer protocol and provides a single authenticated tunnel for the SSH connection protocol. [STANDARDS-TRACK]</t>
            </abstract>
          </front>
          <seriesInfo name="RFC" value="4252"/>
          <seriesInfo name="DOI" value="10.17487/RFC4252"/>
        </reference>
        <reference anchor="I-D.ietf-tls-rfc8446bis">
          <front>
            <title>The Transport Layer Security (TLS) Protocol Version 1.3</title>
            <author fullname="Eric Rescorla" initials="E." surname="Rescorla">
              <organization>Independent</organization>
            </author>
            <date day="13" month="September" year="2025"/>
            <abstract>
              <t>   This document specifies version 1.3 of the Transport Layer Security
   (TLS) protocol.  TLS allows client/server applications to communicate
   over the Internet in a way that is designed to prevent eavesdropping,
   tampering, and message forgery.

   This document updates RFCs 5705, 6066, 7627, and 8422 and obsoletes
   RFCs 5077, 5246, 6961, 8422, and 8446.  This document also specifies
   new requirements for TLS 1.2 implementations.

              </t>
            </abstract>
          </front>
          <seriesInfo name="Internet-Draft" value="draft-ietf-tls-rfc8446bis-14"/>
        </reference>
        <reference anchor="RFC9000">
          <front>
            <title>QUIC: A UDP-Based Multiplexed and Secure Transport</title>
            <author fullname="J. Iyengar" initials="J." role="editor" surname="Iyengar"/>
            <author fullname="M. Thomson" initials="M." role="editor" surname="Thomson"/>
            <date month="May" year="2021"/>
            <abstract>
              <t>This document defines the core of the QUIC transport protocol. QUIC provides applications with flow-controlled streams for structured communication, low-latency connection establishment, and network path migration. QUIC includes security measures that ensure confidentiality, integrity, and availability in a range of deployment circumstances. Accompanying documents describe the integration of TLS for key negotiation, loss detection, and an exemplary congestion control algorithm.</t>
            </abstract>
          </front>
          <seriesInfo name="RFC" value="9000"/>
          <seriesInfo name="DOI" value="10.17487/RFC9000"/>
        </reference>
        <reference anchor="RFC8343">
          <front>
            <title>A YANG Data Model for Interface Management</title>
            <author fullname="M. Bjorklund" initials="M." surname="Bjorklund"/>
            <date month="March" year="2018"/>
            <abstract>
              <t>This document defines a YANG data model for the management of network interfaces. It is expected that interface-type-specific data models augment the generic interfaces data model defined in this document. The data model includes definitions for configuration and system state (status information and counters for the collection of statistics).</t>
              <t>The YANG data model in this document conforms to the Network Management Datastore Architecture (NMDA) defined in RFC 8342.</t>
              <t>This document obsoletes RFC 7223.</t>
            </abstract>
          </front>
          <seriesInfo name="RFC" value="8343"/>
          <seriesInfo name="DOI" value="10.17487/RFC8343"/>
        </reference>
        <reference anchor="RFC8530">
          <front>
            <title>YANG Model for Logical Network Elements</title>
            <author fullname="L. Berger" initials="L." surname="Berger"/>
            <author fullname="C. Hopps" initials="C." surname="Hopps"/>
            <author fullname="A. Lindem" initials="A." surname="Lindem"/>
            <author fullname="D. Bogdanovic" initials="D." surname="Bogdanovic"/>
            <author fullname="X. Liu" initials="X." surname="Liu"/>
            <date month="March" year="2019"/>
            <abstract>
              <t>This document defines a logical network element (LNE) YANG module that is compliant with the Network Management Datastore Architecture (NMDA). This module can be used to manage the logical resource partitioning that may be present on a network device. Examples of common industry terms for logical resource partitioning are logical systems or logical routers. The YANG model in this document conforms with NMDA as defined in RFC 8342.</t>
            </abstract>
          </front>
          <seriesInfo name="RFC" value="8530"/>
          <seriesInfo name="DOI" value="10.17487/RFC8530"/>
        </reference>
      </references>
    </references>
    <?line 606?>

<section anchor="use-cases">
      <name>Detailed Use Cases</name>
      <section anchor="uc1-modeling-of-server-capabilities">
        <name>UC1 - Modeling of server capabilities</name>
        <t>System capabilities might be represented as immutable configuration.
   Configurable data nodes might need constraints specified as
   "when", "must" or "path" statements to ensure that configuration is set
   according to the system's capabilities. For example,</t>
        <ul spacing="normal">
          <li>
            <t>A timer can support the values 1,5,8 seconds. This is defined in the
   leaf-list 'supported-timer-values'.</t>
          </li>
          <li>
            <t>When the configurable 'interface-timer' leaf is set, it should be ensured
   that one of the supported values is used.  The natural solution would be to
   make the 'interface-timer' a leaf-ref pointing at the 'supported-timer-values'.</t>
          </li>
        </ul>
        <t>However, this is not possible as 'supported-timer-values' must be
   read-only thus "config false" while 'interface-timer' must be writable
   thus "config true".  According to the rules of YANG it is not allowed
   to put a constraint between "config true" and "config false" data nodes.</t>
        <t>The solution is that the supported-timer-values data node in the YANG
   Model shall be defined as "config true" and shall also be marked with
   the "immutable" annotation making it unchangeable. After this the
   'interface-timer' shall be defined as a leaf-ref pointing at the
   'supported-timer-values'.</t>
      </section>
      <section anchor="uc2-hardware-based-auto-configuration-interface-example">
        <name>UC2 - Hardware based auto-configuration - Interface Example</name>
        <t><xref target="RFC8343"/> defines a YANG data model for the management of network
   interfaces.  When a system-controlled interface is physically present,
   the system creates an interface entry with valid name and type
   values in &lt;system&gt; (if exists, see <xref target="I-D.ietf-netmod-system-config"/>).</t>
        <t>The system-generated type value is dependent on and represents the hardware
   present, and as a consequence cannot be changed by the client.  If a
   client tries to set the type of an interface to a value that can
   never be used by the system, the request will be rejected by the
   server.  The data is modeled as "config true" and thus should be annotated
   as immutable.</t>
        <t>Seemingly an alternative would be to model the list and these leafs
   as "config false", but that does not work because:</t>
        <ul spacing="normal">
          <li>
            <t>The list cannot be marked as "config false", because it needs to contain
  configurable child nodes, e.g., IP address or enabled;</t>
          </li>
          <li>
            <t>The key leaf (name) cannot be marked as "config false" as the list
  itself is "config true";</t>
          </li>
          <li>
            <t>The type cannot be marked "config false", because we <bcp14>MAY</bcp14> need to
  reference the type to make different configuration nodes
  conditionally available.</t>
          </li>
        </ul>
      </section>
      <section anchor="uc3-predefined-administrator-roles">
        <name>UC3 - Predefined Administrator Roles</name>
        <t>User and group management is fundamental for setting up access
   control rules (see <xref section="2.5" sectionFormat="of" target="RFC8341"/>).</t>
        <t>A device may provide a predefined user account (e.g., a system
   administrator that is always available and has full privileges) for
   initial system set up and management of other users/groups.  It is
   possible that a new user/group can be defined granted particular privileges,
   but the predefined administrator account and its granted access are immutable.</t>
      </section>
      <section anchor="uc4-declaring-immutable-system-configuration-from-the-perspective-of-a-logical-network-element-lne">
        <name>UC4 - Declaring immutable system configuration from the perspective of a logical network element (LNE)</name>
        <t>A logical network element (LNE), as described in <xref target="RFC8530"/>, is an independently managed virtual
   network device made up of resources allocated to it from its host or
   parent network device.  The host device may allocate some
   resources to an LNE, which from an LNE's perspective is provided by
   the system and may not be modifiable.</t>
        <t>For example, a host may allocate an interface to an LNE with a valid
   MTU value as its management interface, so that the allocated
   interface should then be accessible as the LNE-specific instance of
   the interface model.  The assigned MTU value is system-created and
   immutable from the context of the LNE.</t>
      </section>
    </section>
    <section anchor="examples-of-servers-immutable-behavior">
      <name>Examples of Server's Immutable Behavior</name>
      <t>This section provides some examples to illustrate the server's behavior with
  immutable flag. These examples are not intended as recommendations for
  real-world deployments.</t>
      <t>The following fictional module is used throughout this section:</t>
      <artwork><![CDATA[
module example-user-group {
  yang-version 1.1;
  namespace "urn:example:user-group";
  prefix ex-urp;

  import iana-crypt-hash {
    prefix ianach;
  }
 
  organization
    "Example, Inc.";

  contact
    "Support at example.com";

  description
    "An example module for basic user and group management.";

  revision "2026-03-31" {
    description
      "Initial version.";
    reference
      "RFC XXXX: YANG Metadata Annotation for Immutable Flag";
  }

  container user-groups {
    description
      "A container for user and group management";
    list group {
      key "name";
      description
        "The list of access user-groups";
      leaf name {
        type string;
        description
          "Unique name identifier for the user-group";
      }
      leaf description {
        type string;
        description
          "Human-readable description of the group";
      }
      leaf access-level {
        type enumeration {
          enum admin;
          enum power;
          enum normal;
          enum guest;
        }
        description
          "Permission level assigned to the group";
      }
      list user {
        key "name";
        description
          "List of users belonging to the group";
        leaf name {
          type string;
          description
            "Unique name identifier for the user";
        }
        leaf password {
          type ianach:crypt-hash;
          description
            "Cryptographically hashed user password";
        }
        leaf full-name {
          type string;
          description
            "Human-readable full name of the user";
        }
      }
      leaf-list tag {
        type string;
        ordered-by user;
        description
          "User-ordered tags for categorizing the user-group";
      }
    }
  }
}
]]></artwork>
      <section anchor="NETCONF-example">
        <name>NETCONF Example to Retrieve Immutable Configuration</name>
        <t><xref target="NETCONF-with-immutability"/> illustrates a NETCONF request example to retrieve "user-groups"
   configuration in &lt;system&gt; with "with-immutability" parameter and the response a server might return. For illustrative clarity, some annotations that could otherwise be omitted are shown explicitly in the response.</t>
        <figure anchor="NETCONF-with-immutability">
          <name>A NETCONF Example to Retrieve Immutable Configuration</name>
          <artwork><![CDATA[
=============== NOTE: '\' line wrapping per RFC 8792 ================

<rpc message-id="101"
     xmlns="urn:ietf:params:xml:ns:netconf:base:1.0">
  <get-data xmlns="urn:ietf:params:xml:ns:yang:ietf-netconf-nmda"
            xmlns:sysds="urn:ietf:params:xml:ns:yang:ietf-system-\
                                                          datastore">
    <datastore>sysds:system</datastore>
    <subtree-filter>
      <user-groups xmlns="urn:example:user-group"/>
    </subtree-filter>
    <with-immutability/>
  </get-data>
</rpc>

<rpc-reply message-id="101"
       xmlns="urn:ietf:params:xml:ns:netconf:base:1.0">
  <data xmlns="urn:ietf:params:xml:ns:yang:ietf-netconf-nmda">
    <user-groups xmlns="urn:example:user-group"
      xmlns:imma="urn:ietf:params:xml:ns:yang:ietf-immutable-\
                                                          annotation"
      imma:immutable="false">
      <group imma:immutable="true">
        <name>administrator</name>
        <description imma:immutable="false">administrator group</\
                                                         description>
        <access-level>admin</access-level>
        <user>
          <name>ex-username-1</name>
          <password>$5$rounds=10000$mysalt123456789$l4BjA1p/8q.qCYJ.\
                               2pLqjR5mCJf2bP7cLpYWmnC7Hq8</password>
        </user>
        <user imma:immutable="false">
          <name>ex-username-2</name>
          <password>$1$/h1234q$abcdef1234567890abcdef</password>
        </user>
        <tag>system</tag>
        <tag>non-editable</tag>
      </group>
      <group imma:immutable="false">
        <name>power-users</name>
        <description>Power user group</description>
        <access-level>power</access-level>
        <user>
          <name>ex-username-3</name>
          <password>$1$/h4567q$abcdef2345678901abcdef</password>
        </user>
        <tag>system</tag>
        <tag>editable</tag>
      </group>
    </user-groups>
  </data>
</rpc-reply>
]]></artwork>
        </figure>
      </section>
      <section anchor="RESTCONF-example">
        <name>RESTCONF Example to Retrieve Immutable Configuration</name>
        <t><xref target="RESTCONF-with-immutability"/> illustrates a RESTCONF request example to retrieve "user-groups"
  configuration in &lt;system&gt; with "with-immutability" query parameter and the response a server might return. For illustrative clarity, some annotations that could otherwise be omitted are shown explicitly in the response.</t>
        <figure anchor="RESTCONF-with-immutability">
          <name>A RESTCONF Example to Retrieve Immutable Configuration</name>
          <artwork><![CDATA[
=============== NOTE: '\' line wrapping per RFC 8792 ================

GET /restconf/ds/ietf-system-datastore:system/example-user-group:\
                               user-groups?with-immutability HTTP/1.1
Host: example.com
Accept: application/yang-data+json


HTTP/1.1 200 OK
Date: Fri, 9 Jan 2026 15:56:30 GMT
Server: example-server
Content-Type: application/yang-data+json
Cache-Control: no-cache
ETag: "a74eefc993a2b"
Last-Modified: Mon, 5 Jan 2026 14:02:14 GMT

{
  "example-user-group:user-groups": {
    "@": {
      "ietf-immutable-annotation:immutable": false
    },
    "group": [
      {
        "@": {
          "ietf-immutable-annotation:immutable": true
        },
        "name": "administrator",
        "description": "administrator group",
        "@description": {
          "ietf-immutable-annotation:immutable": false
        },
        "access-level": "admin",
        "user": [
          {
            "name": "ex-username-1",
            "password": "$5$rounds=10000$mysalt123456789$l4BjA1p/8q.\
                                    qCYJ.2pLqjR5mCJf2bP7cLpYWmnC7Hq8"
          },
          {
            "@": {
              "ietf-immutable-annotation:immutable": false
            },
            "name": "ex-username-2",
            "password": "$1$/h1234q$abcdef1234567890abcdef"
          }
        ],
        "tag": ["system", "non-editable"]
      },
      {
        "@": {
          "ietf-immutable-annotation:immutable": false
        },
        "name": "power-users",
        "description": "Power user group",
        "access-level": "power",
        "user": [
          {
            "name": "ex-username-3",
            "password": "$1$/h4567q$abcdef2345678901abcdef"
          }
        ],
        "tag": ["system", "editable"]
      }
    ]
  }
}
]]></artwork>
        </figure>
      </section>
      <section anchor="inherit">
        <name>The Inheritance of Immutability</name>
        <t>In the example in <xref target="NETCONF-with-immutability"/> and <xref target="RESTCONF-with-immutability"/>, there are two "group" list entries inside "user-groups"
container node. The "immutable" metadata attribute for "user-groups" container
instance is "false", which is also its default value as the top-level element,
and thus can be omitted. The "administrator" list entry is immutable
with the immutability of its descendant nodes "description" and "user" list entry of "ex-username-2" being explicitly toggled.
Other descendant nodes inside "administrator" list entry inherit the immutability of the list entry thus are also immutable.</t>
        <t>The "immutable" metadata attribute
for "power-users" list entry is "false", which is also the same
value as its parent node (i.e., the "user-groups" container), and thus can be omitted.
Other descendant nodes inside "power-users" group inherit the immutability of the list entry thus are also mutable.</t>
      </section>
      <section anchor="imm-list">
        <name>Immutability of the list</name>
        <t>In the example in <xref target="NETCONF-with-immutability"/> and <xref target="RESTCONF-with-immutability"/>, the "group" list as a whole inherits immutability from the
 container "user-groups", which is mutable. One of the list entry named "administrator" is immutable,
 and the other entry named "power-user" is mutable. The client is able to copy the entire "user-groups"
 container in &lt;running&gt;, add new "group" entries, modify the values of descendant nodes of "power-users" list entry,
 but the values of descendant nodes of "administrator" list entry cannot be overridden with different values except
 for the "description" and "ex-username-2" user list entry nodes, which is explicitly reset to be mutable.
 The client may also subsequently delete any copied "group" entries or the entire
 "user-groups" container, which will not prevent the deleted data being present in &lt;intended&gt; (if implemented) assuming it
 is still contained in &lt;system&gt;.</t>
        <t>The "user" list inside the "administrator" group list entry as a whole inherits immutability from the
 list entry, which is immutable. Thus the client cannot add new user entries inside "administrator" group.
 As one of the user entry named "ex-username-1" is immutable through inheritance,
 and the other "ex-username-2" user entry is explicitly set to be mutable. The client cannot
 modify the "password" parameter, or add a "full-name" value for user "ex-username-1".
 but is allowed to update (e.g., modify the "password" value, or add a "full-name" value)
 the list entry for user "ex-username-2". The client may copy or subsequently delete any of the two list entries in &lt;running&gt;,
 but there is no way to delete the nodes from &lt;intended&gt; (if implemented).</t>
      </section>
      <section anchor="imm-leaf-list">
        <name>Immutability of the leaf-list</name>
        <t>In the example in <xref target="NETCONF-with-immutability"/> and <xref target="RESTCONF-with-immutability"/>, the user-ordered "tag" leaf-list node inside the "administrator" group entry as a whole inherits immutability from the list entry, which is immutable. Thus the client cannot add, modify, or reorder
entries, the client may copy or subsequently delete any of the two leaf-list entries in &lt;running&gt;,
but there is no way to delete the nodes from &lt;intended&gt; if those entries appear in &lt;system&gt;.</t>
        <t>The leaf-list node instance inside the "power-users" group entry as a whole inherits
immutability from the list entry, which is mutable. Thus the client can add or reorder
entries, the client may copy or subsequently delete any of the two leaf-list entries in &lt;running&gt;,
but there is no way to delete the nodes from &lt;intended&gt; if those entries appear in &lt;system&gt;.</t>
      </section>
      <section anchor="error-responses-to-clients-overriding-immutable-configuration">
        <name>Error Responses to Clients Overriding Immutable Configuration</name>
        <t>This section provides examples of client attempts to override immutable configuration and error responses that the server might return. Separate examples are provided for NETCONF and RESTCONF protocols, in <xref target="NETCONF-error"/> and <xref target="RESTCONF-error"/> respectively.</t>
        <figure anchor="NETCONF-error">
          <name>A NETCONF Example to Override Immutable Configuration with Error Response</name>
          <artwork><![CDATA[
=============== NOTE: '\' line wrapping per RFC 8792 ================

<rpc message-id="102"
     xmlns="urn:ietf:params:xml:ns:netconf:base:1.0">
  <edit-config>
    <target>
      <running/>
    </target>
    <config>
      <user-groups xmlns="urn:example:user-group">
        <group>
          <name>administrator</name>
          <access-level>guest</access-level>
        </group>
      </user-groups>
    </config>
  </edit-config>
</rpc>

<rpc-reply message-id="102" 
       xmlns="urn:ietf:params:xml:ns:netconf:base:1.0">
  <rpc-error>
    <error-type>application</error-type>
    <error-tag>invalid-value</error-tag>
    <error-severity>error</error-severity>
    <error-path xmlns="urn:example:user-group">
      /user-groups/group[name="administrator"]/access-level
    </error-path>
    <error-message xml:lang="en">
      Invalid access-level value because the target node is marked \
                                                         as immutable
    </error-message>
  </rpc-error>
</rpc-reply>
]]></artwork>
        </figure>
        <figure anchor="RESTCONF-error">
          <name>A RESTCONF Example to Override Immutable Configuration with Error Response</name>
          <artwork><![CDATA[
=============== NOTE: '\' line wrapping per RFC 8792 ================

PATCH /restconf/ds/ietf-datastores:running/example-user-group:user-\
                     groups/group=administrator/access-level HTTP/1.1
Host: example.com
Content-Type: application/yang-data+json

{
  "example-user-group:access-level": "guest"
}

HTTP/1.1 400 Bad Request
Content-Type: application/yang-data+json

{
  "ietf-restconf:errors": {
    "error": [
      {
        "error-type": "application",
        "error-tag": "invalid-value",
        "error-severity": "error",
        "error-path": "/example-user-group:user-groups/group[name='\
                                       administrator']/access-level",
        "error-message": "Invalid access-level value because the \
                                  target node is marked as immutable"
      }
    ]
  }
}
]]></artwork>
        </figure>
      </section>
    </section>
    <section anchor="implementations">
      <name>Existing Implementations</name>
      <t>Note to the RFC Editor: Please remove this section prior to publication.</t>
      <t>There are already a number of full or partial implementations of
   immutability:</t>
      <ul spacing="normal">
        <li>
          <t>3GPP TS 32.156 <xref target="TS32.156"/> and 28.623 <xref target="TS28.623"/>: Requirements
   and a partial solution</t>
        </li>
        <li>
          <t>ITU-T using ONF TR-531 <xref target="TR-531"/> concept on information model level but
   no YANG representation.</t>
        </li>
        <li>
          <t>Ericsson: requirements and solution</t>
        </li>
        <li>
          <t>YumaPro: requirements and solution</t>
        </li>
        <li>
          <t>Nokia: partial requirements and solution</t>
        </li>
        <li>
          <t>Huawei: partial requirements and solution</t>
        </li>
        <li>
          <t>Cisco using the concept at least in some YANG modules</t>
        </li>
        <li>
          <t>Junos OS provides a hidden and immutable configuration group
   called junos-defaults</t>
        </li>
      </ul>
    </section>
    <section numbered="false" anchor="acknowledgments">
      <name>Acknowledgments</name>
      <t>Thanks to Kent Watsen, Jan Lindblad, Jason Sterne, Robert Wilton, Andy Bierman,
   Juergen Schoenwaelder, Reshad Rahman, Anthony Somerset, Lou Berger, Joe Clarke,
   and Scott Mansfield for reviewing, and providing important inputs to this document.</t>
      <t>Thanks to Per Andersson for the YANGDOCTORS review.</t>
      <t>Thanks to Mahesh Jethanandani for the AD review.</t>
    </section>
  </back>
  <!-- ##markdown-source:
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
F2np8Wp7a0u9/4/WEX9tPos66qX6IeBiHtV/Onj6bLCzpV6/u2ix79Ks1WWs
tg45kbV7AUbTykUPMSmyK4m8A5Wk3SE+aR1fBJOBagfPd8NwPHz5cifYvmy3
3gIEu++k7+BAvcMCsKfOznYHW9uD/i7trIWmW7sGyC59D8TAa39rflQrcsct
o27r76jjAG4jptqsMg3UP2Uiazx68z9gDdRerKXasfORSwIB5CoibecF9yux
5ffEF+G8/a3/+iN2aqFR3qorV8xW3MXJILdQ8yHnndbTZ5wp6CXjX4AXH6DP
3E9rI61nhVLjmkq3neaTlOng0RCuLNQApu2VYLpLH/KOZX7+xUEeSFzEXZuZ
GibFuQpQ+xftvuj8aXeimdL0+R1tacWVKOtK7RU0SzN+Oc3u3ImMVZrSY5BR
RQT9/xfXj4QaT7MWYVWex+gtWuehvGSn6aDt2C3lXU90I6RW6ySRnj68ivcR
2Dolh5PKV+lB0p2Lv6F5nWpO7bc4jChxvKT/+L1jeyu+fFJwaTPHabxJnK8u
ur3m2jopw3zYiPLZIm4i4tQIVhpTSRS70zI5ORLYF91HtunLhqaWqS3zObVy
DQTvpNSK1P/8OOUH0l1wp4exJR4Em0P9ydHEinQyibE4/D0lNFTW0dhYcYh7
tz1lGFEVBkHYSUi4G58twqfLUkqQbMBjIQ3TWl502+vgyd8hpHTFenrZ6Kgm
FN8FN2/DYmo+FmBe/ka5u58ZSZ+j476ZYJn8RZfYv7pui1PdSrTaN5XS3exF
9mDtYM107Xpvk5IdkMinN0r06PWMbBk7h7N0vIEWIW1vtQuTIkiko2t70jnn
9Enf2ZJVZk/j9w3r0KdDMOtHw8n0oJXvyTsZ4um4Sj54dRtoHY6n04HumKD5
ztoENadVKzGgUlU51vqgxdIyoawaxlPiMSTKXYxxip5BcKU9Htd0Gup2UcGp
LHnqf3tN2qZhd1xAEBYElMCsZLOMtVbTvdabouRMaSx4pb8spbvkERtivuk1
xVv1zTZQJxYzznBuUZpKEfH3WU2PC8d8x1SNC8182qa1cTTiDJIyGpmJOPB9
wO1zW1AbfDiN8i6Q39hkWU0nmpgJs2U5Xbc9QOJB7lYVmJHmHvo2hN8aWRJS
3PbIlUtdS3VGGDg0VqUwl8D4hC33Wlpt0HpOqL8yfw6obcKjbeejkbR86VA9
vqlRbr63g8W21IhRZzDWLyvfzWlecqNVZov1e9hu98q3iTga5m42XChBGKpn
JbXMY3CGCZk2qvXfkszv1au3UaCZILBINfOVgr9MPWXfjo4NkyrvbEN3vF19
OR94L7/gWmoKcvt/t4ysKR6P+sqnJ8r4fzz6qW1imodmarf1psMULzwCKPWI
dlBQo2I1IqD1AASsAj9dzP/3QA7X8Jg+8vxBPLOU0qjbbb1nXQHlWoOZKTWY
lSzJ0EmzFOiAYo9tNvy+lU39YvHu+l+frn4szfdgn4fIu4tSRqVJs0V2qUMH
XnMHp22Ex1Fo9SoX0Y/lIwjUD/ivz0TY/oJMBPRESIGOxGSKIJuEhYnXCMGZ
2Lv75z134IMC2E6oyAu/0ZO7g8HlWBmlojXGykoRvnLQCR/Zg+xteiC5M2cA
dI0vSRrAaYlqZCfy8fTlHCBg/fOwKfvcezGY7MvH27mMzbypQ27yYo6VScDk
9ulX/ZZ56r6KRbP3RJ8LSobyPxFRr0py8BcPMwJyu5i3ukAXNzCIg2Tyqh0m
Zr0TPqqf9shal66hIf5JNGp6MUnVzRckArhVVN72ZbdMOA4uVwcwmXetClq+
1yywKfBI1pnPnMmp92eymrODi8M3NaEz29VroLlDU0CnAeYuxbzyaMWjlFWh
s3vHshojTmVvMjGRduvWibiVPlH50EUJWqZOn7DuBLfo9/q4lL3tFJqx67jO
bnPR8R2PCVTf0hedXN+0buUVqpWHPzfisnrN1+59pTwcr/n8oLoVuVW4m3ve
+PtspJ4ruFdbu/Lv8saX7m+dB/6xFxhrUKQp6om2iSS0jjaP9+TW+fo7eza5
LyO2jByoM9Agc/2NFK+SA8vJ0ozrzS/jcnMnccgHMebqLrFazXwAg5J2dUum
IFal/fhd/rn/hPQo2Hl9dqYuztXOdq//9BmoTBfn/KPoUNsves+2d+g5/3h7
O6BbF2WhacRJBb5mcV3dLiucXHzsXsgXyREXFx+6T3f6OCP9AOvAJUTflaJ8
CfshZC51ZcIClRpnA2WaailM1bEDob8B0rgN74ASNvQGuQDe39NPi1lwlqV3
v3iafoqCgTnaXa+/oabC93//EL9ha77WHhpIgMaMRFJwt9eZ19gql7E/LJIU
dP1zq70HasoeQqoubFDRiUvgDNIk+DecpisRlJw+CXAwxE678McJY/hmwJQW
jnS+le7nHiSfyDD4D7QUfgwKQEmH8gveRsnoMg5G+BtgRJ1jNXPYUR9SmAde
xd7H8OpBAoT8XRQCyrnv1g+LEHgBvD+cpmFyHYTxCJ06cBGnyO2DKb4Iw8BK
AqvsHECTUdeMt+lCfYdD4eUfUrjSMTIR862M82FaFNhTOx9HMCWZFVj1E2LB
FQcNGIpcYYllRwH5D+eLQj5m63dP8k5/BpcQTgJbyaWmR/dpOHp/ePH+w7ms
VR73LpjCudQPIZhISYBe4ciMPjgyg/4PZShAY52lAAA=

-->

</rfc>
