<?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.29 (Ruby 3.4.4) -->
<rfc xmlns:xi="http://www.w3.org/2001/XInclude" ipr="trust200902" docName="draft-ietf-ivy-entitlement-inventory-01" category="std" consensus="true" submissionType="IETF" tocInclude="true" sortRefs="true" symRefs="true" version="3">
  <!-- xml2rfc v2v3 conversion 3.31.0 -->
  <front>
    <title abbrev="entitlement-inventory">A YANG Module for Entitlement Inventory</title>
    <seriesInfo name="Internet-Draft" value="draft-ietf-ivy-entitlement-inventory-01"/>
    <author initials="M." surname="Palmero" fullname="Marisol Palmero">
      <organization>Independent</organization>
      <address>
        <email>marisol.ietf@gmail.com</email>
      </address>
    </author>
    <author initials="C." surname="Cardona" fullname="Camilo Cardona">
      <organization>NTT</organization>
      <address>
        <email>camilo@gin.ntt.net</email>
      </address>
    </author>
    <author initials="D." surname="Lopez" fullname="Diego Lopez">
      <organization>Telefonica</organization>
      <address>
        <email>diego.r.lopez@telefonica.com</email>
      </address>
    </author>
    <date year="2025" month="October" day="20"/>
    <area>Operations and Management</area>
    <workgroup>Network Inventory YANG WG</workgroup>
    <keyword>inventory</keyword>
    <keyword>capability</keyword>
    <keyword>entitlement</keyword>
    <keyword>licensing</keyword>
    <abstract>
      <?line 42?>

<t>This document proposes a YANG module for incorporating entitlements in a network inventory, encompassing both virtual and physical network elements. Entitlements define the rights for their holder to use specific capabilities in a network element(s). The model is rooted by the concept of the capabilities offered by an element, enabled by the held entitlements, and considers entitlement scope, how they are assigned, and when they expire. The model introduces a descriptive definition of capabilities and the entitlement use restrictions, supporting entitlement administration and the understanding of the capabilities available through the network.</t>
    </abstract>
    <note removeInRFC="true">
      <name>About This Document</name>
      <t>
        The latest revision of this draft can be found at <eref target="https://dr2lopez.github.io/ivy-capability-entitlement/draft-ietf-ivy-entitlement-inventory.html"/>.
        Status information for this document may be found at <eref target="https://datatracker.ietf.org/doc/draft-ietf-ivy-entitlement-inventory/"/>.
      </t>
      <t>
        Discussion of this document takes place on the
        Network Inventory YANG WG Working Group mailing list (<eref target="mailto:inventory-yang@ietf.org"/>),
        which is archived at <eref target="https://mailarchive.ietf.org/arch/browse/inventory-yang/"/>.
        Subscribe at <eref target="https://www.ietf.org/mailman/listinfo/inventory-yang/"/>.
      </t>
      <t>Source for this draft and an issue tracker can be found at
        <eref target="https://github.com/dr2lopez/ivy-capability-entitlement"/>.</t>
    </note>
  </front>
  <middle>
    <?line 46?>

<section anchor="introduction">
      <name>Introduction</name>
      <t>The purpose of any network elements included as assets in the inventory of any network operator is to leverage their capabilities to build network services. Many of these capabilities are not automatically enabled upon acquisition; their use may require specific rights—typically provided via entitlements or licenses from the vendor.</t>
      <t>The primary intent of this draft is to support three key operational use cases in managing software entitlements and network capabilities:</t>
      <ul spacing="normal">
        <li>
          <t>Listing entitlements (e.g., licenses) available across the operator organization, their holders, and applicable scope.</t>
        </li>
        <li>
          <t>Modeling the capabilities that entitlements permit or enable, representing what a network element may do when properly licensed.</t>
        </li>
        <li>
          <t>Representing the actual use of capabilities, including any active restrictions or limits defined by the associated entitlements.</t>
        </li>
      </ul>
      <t>Together, these use cases enable administrators to answer essential questions such as: What can this device do? What is it currently allowed to do? And what is it actively doing within the bounds of licensing or entitlement constraints? This approach supports not only entitlement tracking but also intent-aware control of device behavior and resource exposure.</t>
      <t>As network technology evolves toward modular, software-defined, and virtualized architectures, managing the rights to activate specific functions becomes increasingly complex. These rights granted via entitlements or licenses must be tracked, aggregated, and matched to assets to ensure that services can be delivered using available capabilities. This complexity calls for structured, machine-readable models that represent which capabilities are available, permitted, and in use.</t>
      <t>To address this, the model relies on two core concepts: capability and entitlement. A capability represents what a system or component may do; an entitlement grants permission to use one or more of those capabilities, possibly under constraints such as time, scope, or usage limits. Being able to represent and exchange this information across systems helps automate entitlement administration and simplify operational decisions.</t>
      <t>This draft provides a foundational YANG structure for representing these relationships as standards, complementing the network inventory module.</t>
      <section anchor="scope-of-the-entitlement-model">
        <name>Scope of the Entitlement Model</name>
        <t>The entitlement model aims to provide an inventory of entitlements. This includes the entitled holders and the capabilities to which they are entitled. Additionally, it offers information into the restrictions of the operation of the different assets (network entities and components). In general, this model seeks to address the following questions:</t>
        <ul spacing="normal">
          <li>
            <t>What entitlements are administered/owned by the organization?</t>
          </li>
          <li>
            <t>How are entitlements restricted to some assets and holders?</t>
          </li>
          <li>
            <t>What entitlements are installed on each network element?</t>
          </li>
          <li>
            <t>What constraints do the current installed entitlements impose on the network elements' functionality?</t>
          </li>
          <li>
            <t>Does the entitlement impose any kind of global restrictions? What are they?</t>
          </li>
          <li>
            <t>What are the restrictions that each network element has due to the entitlements it holds locally?</t>
          </li>
        </ul>
        <t>The model is designed with flexibility in mind, allowing for expansion through the utilization of tools provided by YANG.</t>
        <t>The realm of entitlements and licensing is inherently complex, presenting challenges in creating a model that can comprehensively encompass all scenarios without ambiguity. While we attempt to address various situations through examples and use cases, we acknowledge that the model might not be able to cover all corner cases without ambiguity. In such cases, we recommend that implementations provide additional documentation to clarify those potential ambiguities. The current model does not aim to serve as a catalog of licenses. While it may accommodate basic scenarios, it does not aim to cover the full spectrum of license characteristics, which can vary significantly. Instead, our focus is on providing a general framework for describing relationships and answering the questions posed above.</t>
        <t>With the aim of clarifying the model scope, here are some questions that our model does not attempt to answer:</t>
        <ul spacing="normal">
          <li>
            <t>What are the implications of purchasing a specific entitlement?</t>
          </li>
          <li>
            <t>Which entitlement is needed to obtain a specific capability?</t>
          </li>
          <li>
            <t>Is license migration feasible?</t>
          </li>
          <li>
            <t>What capabilities are permitted when an entitlement is installed in a specific device?</t>
          </li>
          <li>
            <t>Features or restrictions that depend on each user. We are not covering this in the current version of this document, but it could be done if we expand the holders' identification.</t>
          </li>
        </ul>
        <t>This model focuses on the ability to use capabilities, not on access control mechanisms. For example, if a router cannot enable MPLS due to entitlement restrictions, it means the organization lacks the rights to use that capability—even if access to the device itself is available. This distinction is separate from, for instance, the ability of a specific user to configure MPLS due to access control limitations.</t>
      </section>
      <section anchor="pre-provisioned-vs-discovered-entitlements">
        <name>Pre-Provisioned vs. Discovered Entitlements</name>
        <t>This model is not intended for automatic discovery of entitlements or capabilities through the network elements themselves. Instead, it assumes that entitlements and their associations are either:</t>
        <ul spacing="normal">
          <li>
            <t>Provisioned in a license server or asset database;</t>
          </li>
          <li>
            <t>Installed on individual devices and reported through management interfaces; or</t>
          </li>
          <li>
            <t>Manually configured as part of an inventory process.</t>
          </li>
        </ul>
        <t>Future augmentations may explore capability discovery or telemetry driven models, but they are out of scope for the current version.</t>
      </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?>

<ul spacing="normal">
        <li>
          <t>ToBeUpdated(TBU) Open Issue for the IVY WG, to include:</t>
        </li>
      </ul>
      <t>&lt;&lt;Update Glossary under  Network Inventory draft, <xref target="BaseInventory"/>. We need at least formal definitions of "capability" and "entitlement".&gt;&gt;</t>
      <ul spacing="normal">
        <li>
          <t>Capability: A function or resource that a network element can support or execute.</t>
        </li>
        <li>
          <t>Entitlement: A right granted to a holder (organization or user) to access or activate specific capabilities under defined conditions.</t>
        </li>
      </ul>
    </section>
    <section anchor="modeling-capabilities-and-entitlements">
      <name>Modeling Capabilities and Entitlements</name>
      <t>The model describes how to represent capabilities and the entitlements that enable them across inventoried network elements. Capabilities describe what a device can do. Entitlements indicate whether those capabilities are allowed and under what conditions.</t>
      <t>In deployments where entitlements are directly associated with specific network elements, the devices themselves may expose entitlement information. Alternatively, some environments may rely on a centralized license server that maintains the entitlements of an organization. By querying the list of capabilities and entitlements, along with their associated metadata, a NETCONF or RESTCONF client can retrieve essential inventory details about what capabilities are available and which entitlements are currently in place.</t>
      <t>Note that the model uses lists based on classes on multiple parts to be able to extend functionality.</t>
      <t>(TBD: Provide examples of how this can be done in future releases of this document)</t>
      <t>Entitlements may be listed without explicitly identifying the assets (network elements or components) they apply to. Entitlements are defined directly under the network-inventory container for organizational management. Entitlements are linked to network-elements in multiple ways: (1) When entitlements are created for specific network-elements (i.e. they should only be installed on those), then those network elements are specified under the entitlement element's attachment section. (2) When an entitlement is installed in a network-element, it appears in the network-element's installed-entitlements list. (3) When an installed entitlement enables capabilities, the network-element's capabilities will reference the installed entitlement via the supporting-entitlements list.</t>
      <t>Capabilities, restrictions and the entitlements supporting them within a network element are defined under the network-element under the container "capabilities".</t>
      <section anchor="foundational-model-networkelement-entitlements-capabilities-and-restrictions">
        <name>Foundational model: NetworkElement-Entitlements-Capabilities and Restrictions</name>
        <t>To represent the complex relationships between network elements, capabilities, and entitlements, a foundational Network Inventory model should be built through a series of extensions. The following diagrams illustrate the progressive complexity of the approach, starting with simple network inventory extensions and culminating in a comprehensive model incorporating capabilities, entitlements, and restrictions.</t>
        <section anchor="progressive-model-complexity">
          <name>Progressive Model Complexity</name>
          <t><xref target="fig-extBaseNetworkInventory"/> depicts the initial step, highlighting the base network inventory and the areas to be extended: hardware, software, and entitlements. These extensions are necessary to properly model the relationships.</t>
          <figure anchor="fig-extBaseNetworkInventory">
            <name>Base Network Inventory Entitlement extension</name>
            <artset>
              <artwork type="svg"><svg xmlns="http://www.w3.org/2000/svg" version="1.1" height="176" width="464" viewBox="0 0 464 176" class="diagram" text-anchor="middle" font-family="monospace" font-size="13px" stroke-linecap="round">
                  <g class="text">
                    <text x="240" y="36">┌─────────────────┐</text>
                    <text x="184" y="52">│Base</text>
                    <text x="240" y="52">Network</text>
                    <text x="312" y="52">│</text>
                    <text x="204" y="68">│Inventory</text>
                    <text x="312" y="68">│</text>
                    <text x="240" y="84">└─────────┬───────┘</text>
                    <text x="248" y="100">┌─────────────────────┼─────────────────────┐</text>
                    <text x="72" y="116">▼</text>
                    <text x="248" y="116">▼</text>
                    <text x="424" y="116">▼</text>
                    <text x="64" y="132">┌─────────────┐</text>
                    <text x="232" y="132">┌─────────────────┐</text>
                    <text x="400" y="132">┌─────────────┐</text>
                    <text x="8" y="148">│</text>
                    <text x="60" y="148">Hardware</text>
                    <text x="120" y="148">│</text>
                    <text x="160" y="148">│</text>
                    <text x="228" y="148">Software</text>
                    <text x="304" y="148">│</text>
                    <text x="392" y="148">│Entitlements</text>
                    <text x="456" y="148">│</text>
                    <text x="64" y="164">└─────────────┘</text>
                    <text x="232" y="164">└─────────────────┘</text>
                    <text x="400" y="164">└─────────────┘</text>
                  </g>
                </svg>
              </artwork>
              <artwork type="ascii-art"><![CDATA[
                    ┌─────────────────┐
                    │Base Network     │
                    │Inventory        │
                    └─────────┬───────┘
        ┌─────────────────────┼─────────────────────┐
        ▼                     ▼                     ▼
┌─────────────┐    ┌─────────────────┐    ┌─────────────┐
│  Hardware   │    │    Software     │    │Entitlements │
└─────────────┘    └─────────────────┘    └─────────────┘
]]></artwork>
            </artset>
          </figure>
          <t><xref target="fig-ascii-art_baseInventory"/> illustrates the initial relationship between Network Elements and entitlements is two ways: entitlements MIGHT be attached to NE, and NE might have entitlements installed.</t>
          <figure anchor="fig-ascii-art_baseInventory">
            <name>Relationship between entitlements and Base Inventory</name>
            <artset>
              <artwork type="svg"><svg xmlns="http://www.w3.org/2000/svg" version="1.1" height="208" width="464" viewBox="0 0 464 208" class="diagram" text-anchor="middle" font-family="monospace" font-size="13px" stroke-linecap="round">
                  <g class="text">
                    <text x="248" y="36">┌─────────────────────────┐</text>
                    <text x="160" y="52">│Base</text>
                    <text x="216" y="52">Network</text>
                    <text x="288" y="52">Inventory</text>
                    <text x="352" y="52">│</text>
                    <text x="248" y="68">└─────────┬───────────────┘</text>
                    <text x="224" y="84">┌─────────────────────┼─────────────────────┐</text>
                    <text x="48" y="100">▼</text>
                    <text x="224" y="100">▼</text>
                    <text x="400" y="100">▼</text>
                    <text x="64" y="116">┌────┴────────┐</text>
                    <text x="232" y="116">┌───────┴─────────┐</text>
                    <text x="400" y="116">┌──────┴──────┐</text>
                    <text x="8" y="132">│</text>
                    <text x="60" y="132">Hardware</text>
                    <text x="120" y="132">│</text>
                    <text x="160" y="132">│</text>
                    <text x="228" y="132">Software</text>
                    <text x="304" y="132">│</text>
                    <text x="392" y="132">│Entitlements</text>
                    <text x="456" y="132">│</text>
                    <text x="64" y="148">└──────┬──────┘</text>
                    <text x="232" y="148">└───────┬─────────┘</text>
                    <text x="400" y="148">└───┬──┬──────┘</text>
                    <text x="64" y="164">│</text>
                    <text x="224" y="164">│</text>
                    <text x="376" y="164">│</text>
                    <text x="400" y="164">│</text>
                    <text x="64" y="180">│</text>
                    <text x="300" y="180">└───────&lt;──&gt;───────┘</text>
                    <text x="400" y="180">│</text>
                    <text x="232" y="196">└───────────────────&lt;──&gt;──────────────────┘</text>
                  </g>
                </svg>
              </artwork>
              <artwork type="ascii-art"><![CDATA[
                 ┌─────────────────────────┐
                 │Base Network Inventory   │
                 └─────────┬───────────────┘
     ┌─────────────────────┼─────────────────────┐
     ▼                     ▼                     ▼  
┌────┴────────┐    ┌───────┴─────────┐    ┌──────┴──────┐
│  Hardware   │    │    Software     │    │Entitlements │
└──────┬──────┘    └───────┬─────────┘    └───┬──┬──────┘
       │                   │                  │  │       
       │                   └───────<──>───────┘  │       
       └───────────────────<──>──────────────────┘       
]]></artwork>
            </artset>
          </figure>
          <t><xref target="fig-capabilities_baseinventory"/> depicts NE support capabilities thanks to entilements that entitle them of their use</t>
          <figure anchor="fig-capabilities_baseinventory">
            <name>Capabilities integration with the Base Inventory</name>
            <artset>
              <artwork type="svg"><svg xmlns="http://www.w3.org/2000/svg" version="1.1" height="256" width="456" viewBox="0 0 456 256" class="diagram" text-anchor="middle" font-family="monospace" font-size="13px" stroke-linecap="round">
                  <g class="text">
                    <text x="232" y="36">┌─────────────────────────┐</text>
                    <text x="144" y="52">│Base</text>
                    <text x="200" y="52">Network</text>
                    <text x="272" y="52">Inventory</text>
                    <text x="336" y="52">│</text>
                    <text x="232" y="68">└──────────┬──────────────┘</text>
                    <text x="216" y="84">┌────────────────────┼────────────────────┐</text>
                    <text x="48" y="100">▼</text>
                    <text x="216" y="100">▼</text>
                    <text x="384" y="100">▼</text>
                    <text x="60" y="116">┌────┴───────┐</text>
                    <text x="216" y="116">┌───────┴───────┐</text>
                    <text x="380" y="116">┌──────┴─────┐</text>
                    <text x="8" y="132">│</text>
                    <text x="60" y="132">Hardware</text>
                    <text x="112" y="132">│</text>
                    <text x="152" y="132">│</text>
                    <text x="220" y="132">Entitlements</text>
                    <text x="280" y="132">│</text>
                    <text x="328" y="132">│</text>
                    <text x="388" y="132">Software</text>
                    <text x="432" y="132">│</text>
                    <text x="60" y="148">└────┬───────┘</text>
                    <text x="216" y="148">└─────┬─────────┘</text>
                    <text x="380" y="148">└─────┬──────┘</text>
                    <text x="48" y="164">│</text>
                    <text x="200" y="164">│</text>
                    <text x="376" y="164">│</text>
                    <text x="48" y="180">│</text>
                    <text x="228" y="180">│enables</text>
                    <text x="376" y="180">│</text>
                    <text x="80" y="196">│supports</text>
                    <text x="212" y="196">┌──────V─────────┐</text>
                    <text x="344" y="196">supports│</text>
                    <text x="96" y="212">└──────────&gt;│</text>
                    <text x="212" y="212">Capabilities</text>
                    <text x="328" y="212">│&lt;──────────┘</text>
                    <text x="212" y="228">└────────────────┘</text>
                  </g>
                </svg>
              </artwork>
              <artwork type="ascii-art"><![CDATA[
                 ┌─────────────────────────┐
                 │Base Network Inventory   │
                 └──────────┬──────────────┘
       ┌────────────────────┼────────────────────┐
       ▼                    ▼                    ▼     
  ┌────┴───────┐    ┌───────┴───────┐     ┌──────┴─────┐
  │  Hardware  │    │  Entitlements │     │   Software │
  └────┬───────┘    └─────┬─────────┘     └─────┬──────┘
       │                  │                     │      
       │                  │enables              │      
       │supports   ┌──────V─────────┐   supports│      
       └──────────>│  Capabilities  │<──────────┘      
                   └────────────────┘                     
]]></artwork>
            </artset>
          </figure>
          <t>Finally, NE support capabilities thanks to entilements that entitle them of their use under certain constraints as shown in <xref target="fig-capabilities_restrictions"/>.</t>
          <figure anchor="fig-capabilities_restrictions">
            <name>Complete model with restrictions</name>
            <artset>
              <artwork type="svg"><svg xmlns="http://www.w3.org/2000/svg" version="1.1" height="336" width="568" viewBox="0 0 568 336" class="diagram" text-anchor="middle" font-family="monospace" font-size="13px" stroke-linecap="round">
                  <g class="text">
                    <text x="236" y="36">┌────────────────────────────┐</text>
                    <text x="120" y="52">│</text>
                    <text x="164" y="52">Base</text>
                    <text x="216" y="52">Network</text>
                    <text x="288" y="52">Inventory</text>
                    <text x="352" y="52">│</text>
                    <text x="236" y="68">└────────────┬───────────────┘</text>
                    <text x="224" y="84">│</text>
                    <text x="232" y="100">┌───────────────────┼─────────────────────┐</text>
                    <text x="64" y="116">▼</text>
                    <text x="224" y="116">▼</text>
                    <text x="400" y="116">▼</text>
                    <text x="60" y="132">┌──────┴─────┐</text>
                    <text x="224" y="132">┌───────┴───────┐</text>
                    <text x="396" y="132">┌──────┴─────┐</text>
                    <text x="8" y="148">│</text>
                    <text x="60" y="148">Hardware</text>
                    <text x="112" y="148">│</text>
                    <text x="160" y="148">│</text>
                    <text x="228" y="148">Entitlements</text>
                    <text x="288" y="148">│</text>
                    <text x="344" y="148">│</text>
                    <text x="404" y="148">Software</text>
                    <text x="448" y="148">│</text>
                    <text x="60" y="164">└──────┬─────┘</text>
                    <text x="224" y="164">└───────┬───────┘</text>
                    <text x="396" y="164">└──────┬─────┘</text>
                    <text x="64" y="180">│</text>
                    <text x="224" y="180">│</text>
                    <text x="400" y="180">│</text>
                    <text x="64" y="196">│</text>
                    <text x="252" y="196">│enables</text>
                    <text x="400" y="196">│</text>
                    <text x="96" y="212">│supports</text>
                    <text x="236" y="212">┌──────V─────────┐</text>
                    <text x="368" y="212">supports│</text>
                    <text x="116" y="228">└───────────&gt;│</text>
                    <text x="236" y="228">Capabilities</text>
                    <text x="352" y="228">│&lt;──────────┘</text>
                    <text x="236" y="244">└──────┬─────────┘</text>
                    <text x="224" y="260">│</text>
                    <text x="268" y="276">│constrained</text>
                    <text x="332" y="276">by</text>
                    <text x="236" y="292">┌──────V─────────┐</text>
                    <text x="168" y="308">│</text>
                    <text x="236" y="308">Restrictions</text>
                    <text x="304" y="308">│</text>
                    <text x="236" y="324">└────────────────┘</text>
                  </g>
                </svg>
              </artwork>
              <artwork type="ascii-art"><![CDATA[
              ┌────────────────────────────┐            
              │   Base Network Inventory   │            
              └────────────┬───────────────┘            
                           │                            
       ┌───────────────────┼─────────────────────┐      
       ▼                   ▼                     ▼  
┌──────┴─────┐     ┌───────┴───────┐      ┌──────┴─────┐
│  Hardware  │     │  Entitlements │      │   Software │
└──────┬─────┘     └───────┬───────┘      └──────┬─────┘
       │                   │                     │      
       │                   │enables              │      
       │supports    ┌──────V─────────┐   supports│      
       └───────────>│  Capabilities  │<──────────┘      
                    └──────┬─────────┘                  
                           │              
                           │constrained by                            
                    ┌──────V─────────┐                  
                    │  Restrictions  │                  
                    └────────────────┘                  
]]></artwork>
            </artset>
          </figure>
        </section>
      </section>
      <section anchor="capabilities">
        <name>Capabilities</name>
        <t>Capabilities are modeled by augmenting "network-element" in the "ietf-network-inventory" module in <xref target="BaseInventory"/> according to the following tree:</t>
        <artwork><![CDATA[
+--ro capabilities
   +--ro capability-class* [capability-class]
      +--ro capability-class                     identityref
      +--ro capability* [capability-id]
         +--ro capability-id                     string
         +--ro extended-capability-description?     string
         +--ro resource-description?             string
         +--ro resource-units?                   string
         +--ro resource-amount?                  int32
         +--ro supporting-entitlements
            +--ro entitlement* [entitlement-id]
            +--ro entitlement-id                 -> ../../../../../entitlements/entitlement/entitlement-id
            +--ro allowed?                       boolean
            +--ro in-use?                        boolean
            +--ro capability-restriction* [capability-restriction-id]
               +--ro capability-restriction-id   string
               +--ro component-id?               -> ../../../../../components/component/component-id
               +--ro description?                string
               +--ro resource-name?              string
               +--ro units?                      string
               +--ro max-value?                  int32
               +--ro current-value?              int32
]]></artwork>
        <t>For any given network element, the capabilities list <bcp14>MAY</bcp14> include all potential capabilities advertised by the vendor, and <bcp14>MUST</bcp14> include those for which the network operator holds a valid entitlement—whether active or not.</t>
        <t>The capabilities of an inventoried network element may be restricted based on the availability of proper entitlements. An entitlement manager might be interested in the capabilities available to be used on the network elements, and the capabilities that are currently available. The model includes this information by means of the "supporting entitlements" list, which references locally installed entitlements and includes potential restrictions related to the status of the entitlement. This allows organizations to monitor entitlement usage and avoid misconfigurations or exceeding permitted capability limits.</t>
      </section>
      <section anchor="entitlements">
        <name>Entitlements</name>
        <t>The entitlement modeling augments "network-inventory" in the ietf-network-inventory module in <xref target="BaseInventory"/> with a top-level entitlements container according to the following tree:</t>
        <t><xref target="fig-ModelRelationship"/> depicts the relationship between the Entitlement Inventory model and other models. The Entitlement Inventory model enhances the model defined in the base network inventory model with entitlement-specific attributes and centralized entitlement management capabilities.</t>
        <figure anchor="fig-ModelRelationship">
          <name>Relationship of Entitlement Inventory Model to Other Inventory Models</name>
          <artwork><![CDATA[
   +----------------------+
   |                      |
   |Base Network Inventory|
   |                      |
   +----------+-----------+
              ^
              |
   +----------+-----------+
   |                      |
   | Entitlement Inventory|
   |  e.g., licenses,     |
   |  capabilities,       |
   |  restrictions        |
   +----------------------+
]]></artwork>
        </figure>
        <artwork><![CDATA[
+--ro entitlements
   +--ro entitlement* [eid]
   +--ro eid                                  string
   +--ro product-id?                          string
   +--ro state?                               entitlement-state-t
   +--ro renewal-profile
   |  +--ro activation-date?                  yang:date-and-time
   |  +--ro start-date?                       yang:date-and-time
   |  +--ro expiration-date?                  yang:date-and-time
   +--ro restrictions
   |  +--ro restriction* [restriction-id]
   |  +--ro restriction-id                    string
   |  +--ro description?                      string
   |  +--ro units?                            string
   |  +--ro max-value?                        int32
   |  +--ro current-value?                    int32
   +--ro parent-entitlement-uid?              -> ../entitlement/eid
   +--ro entitlement-attachment
      +--ro universal-access?   boolean
      +--ro holders
      |  +--ro organizations_names
      |  |  +--ro organizations*           string
      |  +--ro users_names
      |     +--ro users*                   string
      +--ro assets
         +--ro elements
            +--ro network-elements*        -> /network-inventory/network-elements/network-element/ne-id
            +--ro components
               +--ro component* [network-element component-id]
                  +--ro network-element    -> /network-inventory/network-elements/network-element/ne-id
                  +--ro component-id       -> /network-inventory/network-elements/network-element/components/component/component-id
]]></artwork>
        <t>Entitlements and network elements are linked in the model in multiple ways. Entitlements at the network-inventory level might be attached to network elements through their attachment mechanism, representing organizational entitlements. Network elements have their own installed-entitlements that may be derived from the centralized entitlements or installed directly. The capabilities of network elements reference these locally installed entitlements through their supporting-entitlements lists. The former addresses the case of a centralized license server or inventory system, while the latter represents entitlements that are locally available and actively used by the network element's capabilities. An installed entitlement that is not referenced by any network element capability means that it is available locally but not currently in use.</t>
        <t>Entitlements are managed both centrally at the network-inventory level and locally within network elements through installed-entitlements. Network elements utilize locally installed entitlements and reference them through their capabilities' supporting-entitlements lists. For instance, a license server or inventory system might list an entitlement at the top level, which then gets installed on specific network elements where the capabilities reference the local copy. The "parent-entitlement-uid" field in installed entitlements provides traceability back to centralized entitlements when applicable. Proper identification of entitlements is imperative to ensure consistency across systems, enabling monitoring systems to recognize when multiple locations reference related entitlements. Furthermore, there are cases where an authorized network element might have locally installed entitlements without explicit knowledge of the covering organizational license. Consider the scenario of a site license, wherein any device under the site may utilize a feature through locally installed entitlements derived from the site-wide license. In such cases, the parent-entitlement-uid maintains the connection to the organizational entitlement policy.</t>
        <section anchor="reverse-mapping-from-entitlements-to-capabilities">
          <name>Reverse Mapping from Entitlements to Capabilities</name>
          <t>While the model includes links from capabilities to supporting entitlements, some inventory operators may need to evaluate entitlements independently and identify the capabilities they enable.</t>
          <t>To support this, implementers may use the "product-id" or "capability-class" metadata along with external references or catalogs. A reverse mapping structure may be introduced in a future version of the model, once a reliable binding syntax for entitlement to capability is standardized.</t>
        </section>
      </section>
      <section anchor="entitlement-attachment">
        <name>Entitlement Attachment</name>
        <t>The "entitlement" container holds a container called "entitlement-attachment" which relates how the entitlement is operationally linked to holders or network elements. Note that there is a difference between an entitlement being attached to a network element and an entitlement being installed in the network element. In the former, the license was explicitly associated with one or more network elements. Some licenses actually can be open but have a limited number of installation. Other licenses might be openly constrained to a geographic location. We are not dealing with these complex cases now, but the container can be expanded for this in the future.</t>
        <t>The model accommodates listing entitlements acquired by the organization but not yet applied or utilized by any actor/asset at the network-inventory level. For these pending entitlements, they can be managed centrally without requiring individual network elements to be aware of their existence.</t>
        <t>Some entitlements are inherently associated with a holder, such as organization or a user. For example, a software license might be directly attached to a user. Also, the use of a network device might come with a basic license provided solely to an organization. Some entitlements could be assigned to a more abstract description of holders, such as people under a jurisdiction or a geographical area. The model contains basic information about this, but it can be extended in the future to be more descriptive.</t>
        <t>While attachment is optional, the model should be capable of expressing attachment in various scenarios. The model can be expanded to list to which network elements an entitlement is aimed for, when this link is more vague, such as a site license (e.g., network elements located in a specific site), or more open licenses (e.g., free software for all users subscribed to a streaming platform).</t>
        <t>It is important to note that the current model does not provide information on whether an entitlement can be reassigned to other network elements. Such scenarios fall under the "what if" category, which is not covered by this model.</t>
      </section>
      <section anchor="installed-entitlements">
        <name>Installed Entitlements</name>
        <t>Since capabilities are optional in network elements, the model also provides an augmentation to track entitlements that are installed directly on network elements. This augmentation of "network-element" in the "ietf-network-inventory" module provides local entitlement storage according to the following tree:</t>
        <artwork><![CDATA[
+--ro installed-entitlements
   +--ro entitlement* [eid]
   +--ro eid                                  -> /network-inventory/entitlements/entitlement/eid
]]></artwork>
        <t>The installed entitlements represent references to entitlements that are locally present on the network element. The "eid" field provides a direct reference to the centralized entitlement at the network-inventory level.</t>
        <t>This structure allows network elements to operate independently of centralized entitlement management while maintaining the ability to track relationships to organization-wide entitlement policies.</t>
      </section>
      <section anchor="model-definition">
        <name>Model Definition</name>
        <t>TBP</t>
      </section>
    </section>
    <section anchor="use-cases-and-examples">
      <name>Use cases and Examples</name>
      <t>This section describes use cases, provide an example of how they could be modeled by the model, and show how each of the questions that we have explored in this draft can be answered by the model.</t>
      <section anchor="mpls-capability-license-on-a-network-os">
        <name>MPLS Capability License on a Network OS</name>
        <t>An operator installs a software license (entitlement) enabling MPLS routing on a NOS. The license is attached to a specific network element and activates the "mpls-routing" capability class.</t>
        <t>Complete example showing network inventory augmented with entitlements:</t>
        <artwork><![CDATA[
json
{
  "ietf-network-inventory:network-inventory": {
    "entitlements": {
      "entitlement": [
        {
          "eid": "mpls-license-001",
          "product-id": "mpls-software-lic-v2",
          "state": "active",
          "renewal-profile": {
            "activation-date": "2025-01-01T00:00:00Z",
            "expiration-date": "2026-01-01T00:00:00Z"
          },
          "entitlement-attachment": {
            "holders": {
              "organizations_names": {
                "organizations": ["ACME Corp"]
              }
            },
            "assets": {
              "elements": {
                "network-elements": ["router-5"]
              }
            }
          }
        }
      ]
    },
    "network-elements": {
      "network-element": [
        {
          "ne-id": "router-5",
          "ne-type": "ietf-network-inventory:router",
          "installed-entitlements": {
            "entitlement": [
              {
                "eid": "mpls-license-001"
              }
            ]
          },
          "capabilities": {
            "capability-class": [
              {
                "capability-class": "ietf-entitlement-inventory:routing",
                "capability": [
                  {
                    "capability-id": "mpls-routing",
                    "extended-capability-description": "MPLS Label Switching Protocol",
                    "supporting-entitlements": {
                      "entitlement": [
                        {
                          "entitlement-id": "mpls-license-001",
                          "allowed": true,
                          "in-use": true
                        }
                      ]
                    }
                  }
                ]
              }
            ]
          }
        }
      ]
    }
  }
}
]]></artwork>
      </section>
      <section anchor="bandwidth-upgrade-via-license">
        <name>Bandwidth Upgrade via License</name>
        <t>A vendor-N device uses a capacity license to expand throughput.</t>
        <t>Complete example showing network inventory augmented with bandwidth entitlements:</t>
        <artwork><![CDATA[
json
{
  "ietf-network-inventory:network-inventory": {
    "entitlements": {
      "entitlement": [
        {
          "eid": "vendorN-bw-10g",
          "product-id": "vendorN-bw-upgrade",
          "state": "active",
          "restrictions": {
            "restriction": [
              {
                "restriction-id": "global-cap",
                "description": "Organization bandwidth cap",
                "units": "Gbps",
                "max-value": 100,
                "current-value": 25
              }
            ]
          }
        }
      ]
    },
    "network-elements": {
      "network-element": [
        {
          "ne-id": "switch-10g-01",
          "ne-type": "ietf-network-inventory:switch",
          "installed-entitlements": {
            "entitlement": [
              {
                "eid": "vendorN-bw-10g"
              }
            ]
          },
          "capabilities": {
            "capability-class": [
              {
                "capability-class": "ietf-entitlement-inventory:bandwidth",
                "capability": [
                  {
                    "capability-id": "bw-capability",
                    "resource-description": "Licensed bandwidth",
                    "resource-units": "Gbps",
                    "resource-amount": 10,
                    "supporting-entitlements": {
                      "entitlement": [
                        {
                          "entitlement-id": "vendorN-bw-10g",
                          "allowed": true,
                          "in-use": true,
                          "capability-restriction": [
                            {
                              "capability-restriction-id": "bw-limit",
                              "description": "Current bandwidth usage",
                              "resource-name": "active-bandwidth",
                              "units": "Gbps",
                              "max-value": 10,
                              "current-value": 6
                            }
                          ]
                        }
                      ]
                    }
                  }
                ]
              }
            ]
          }
        }
      ]
    }
  }
}
]]></artwork>
      </section>
      <section anchor="floating-license-managed-by-license-server">
        <name>Floating License Managed by License Server</name>
        <t>A shared entitlement is held by a license server and consumed dynamically by multiple switches.</t>
        <t>Complete example showing floating license across multiple network elements:</t>
        <artwork><![CDATA[
json
{
  "ietf-network-inventory:network-inventory": {
    "entitlements": {
      "entitlement": [
        {
          "eid": "shared-switch-license-1",
          "product-id": "advanced-switching-features",
          "state": "active",
          "entitlement-attachment": {
            "universal-access": true,
            "holders": {
              "organizations_names": {
                "organizations": ["NTT"]
              }
            },
          },
          "restrictions": {
            "restriction": [
              {
                "restriction-id": "concurrent-users",
                "description": "Maximum concurrent feature usage",
                "units": "sessions",
                "max-value": 50,
                "current-value": 12
              }
            ]
          }
        }
      ]
    },
    "network-elements": {
      "network-element": [
        {
          "ne-id": "switch-1",
          "ne-type": "ietf-network-inventory:switch",
          "installed-entitlements": {
            "entitlement": [
              {
                "eid": "shared-switch-license-1"
              }
            ]
          },
          "capabilities": {
            "capability-class": [
              {
                "capability-class": "ietf-entitlement-inventory:switching",
                "capability": [
                  {
                    "capability-id": "advanced-vlan-features",
                    "extended-capability-description": "Advanced VLAN management features",
                    "supporting-entitlements": {
                      "entitlement": [
                        {
                          "entitlement-id": "shared-switch-license-1",
                          "allowed": true,
                          "in-use": false
                        }
                      ]
                    }
                  },
                  {
                    "capability-id": "qos-policies",
                    "extended-capability-description": "Quality of Service policies",
                    "supporting-entitlements": {
                      "entitlement": [
                        {
                          "entitlement-id": "shared-switch-license-1",
                          "allowed": true,
                          "in-use": true
                        }
                      ]
                    }
                  }
                ]
              }
            ]
          }
        },
        {
          "ne-id": "switch-2",
          "ne-type": "ietf-network-inventory:switch",
          "installed-entitlements": {
            "entitlement": [
              {
                "eid": "shared-switch-license-1"
              }
            ]
          },
          "capabilities": {
            "capability-class": [
              {
                "capability-class": "ietf-entitlement-inventory:switching",
                "capability": [
                  {
                    "capability-id": "advanced-vlan-features",
                    "extended-capability-description": "Advanced VLAN management features",
                    "supporting-entitlements": {
                      "entitlement": [
                        {
                          "entitlement-id": "shared-switch-license-1",
                          "allowed": true,
                          "in-use": true
                        }
                      ]
                    }
                  }
                ]
              }
            ]
          }
        }
      ]
    }
  }
}
]]></artwork>
        <t>This example demonstrates how a floating license can be managed centrally while being installed locally on multiple network elements. Each switch has its own local copy of the entitlement that traces back to the centralized policy. The centralized entitlement shows global restrictions (concurrent users), while individual switches show their local usage. This entitlement may be tracked across devices using a license server asset that records usage or seat count (future extension).</t>
      </section>
    </section>
    <section anchor="iana-considerations">
      <name>IANA Considerations</name>
      <t>(TBP)</t>
    </section>
    <section anchor="security-considerations">
      <name>Security Considerations</name>
      <t>(TBP)</t>
    </section>
  </middle>
  <back>
    <references anchor="sec-combined-references">
      <name>References</name>
      <references anchor="sec-normative-references">
        <name>Normative References</name>
        <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>
      </references>
      <references anchor="sec-informative-references">
        <name>Informative References</name>
        <reference anchor="BaseInventory">
          <front>
            <title>A Base YANG Data Model for Network Inventory</title>
            <author fullname="Chaode Yu" initials="C." surname="Yu">
              <organization>Huawei Technologies</organization>
            </author>
            <author fullname="Sergio Belotti" initials="S." surname="Belotti">
              <organization>Nokia</organization>
            </author>
            <author fullname="Jean-Francois Bouquier" initials="J." surname="Bouquier">
              <organization>Vodafone</organization>
            </author>
            <author fullname="Fabio Peruzzini" initials="F." surname="Peruzzini">
              <organization>FiberCop</organization>
            </author>
            <author fullname="Phil Bedard" initials="P." surname="Bedard">
              <organization>Cisco</organization>
            </author>
            <date day="14" month="October" year="2025"/>
            <abstract>
              <t>   This document defines a base YANG data model for reporting network
   inventory.  The scope of this base model is set to be application-
   and technology-agnostic.  The base data model can be augmented with
   application- and technology-specific details.

              </t>
            </abstract>
          </front>
          <seriesInfo name="Internet-Draft" value="draft-ietf-ivy-network-inventory-yang-11"/>
        </reference>
      </references>
    </references>
    <?line 667?>

<section numbered="false" anchor="acknowledgments">
      <name>Acknowledgments</name>
      <t>This document is based on work partially funded by the EU Horizon Europe projects ACROSS (grant 101097122), ROBUST-6G (grant 101139068), iTrust6G (grant 101139198), MARE (grant 101191436), and CYBERNEMO (grant 101168182).</t>
    </section>
  </back>
  <!-- ##markdown-source:
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
ODx2X/jk091PrwNJ/w8CFWTluY8AAA==

-->

</rfc>
