<?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.27 (Ruby 3.3.6) -->
<rfc xmlns:xi="http://www.w3.org/2001/XInclude" ipr="trust200902" docName="draft-ietf-ivy-network-inventory-location-01" category="std" consensus="true" submissionType="IETF" tocInclude="true" sortRefs="true" symRefs="true" version="3">
  <!-- xml2rfc v2v3 conversion 3.28.1 -->
  <front>
    <title abbrev="Network Inventory Location">A YANG Data Model for Network Inventory Location</title>
    <seriesInfo name="Internet-Draft" value="draft-ietf-ivy-network-inventory-location-01"/>
    <author initials="B." surname="Wu" fullname="Bo Wu">
      <organization>Huawei</organization>
      <address>
        <email>lana.wubo@huawei.com</email>
      </address>
    </author>
    <author initials="S." surname="Belotti" fullname="Sergio Belotti">
      <organization>Nokia</organization>
      <address>
        <email>sergio.belotti@nokia.com</email>
      </address>
    </author>
    <author initials="J.-F." surname="Bouquier" fullname="Jean-Francois Bouquier">
      <organization>Vodafone</organization>
      <address>
        <email>jeff.bouquier@vodafone.com</email>
      </address>
    </author>
    <author initials="F." surname="Peruzzini" fullname="Fabio Peruzzini">
      <organization>TIM</organization>
      <address>
        <email>fabio.peruzzini@telecomitalia.it</email>
      </address>
    </author>
    <author initials="P." surname="Bedard" fullname="Phil Bedard">
      <organization>Cisco</organization>
      <address>
        <email>phbedard@cisco.com</email>
      </address>
    </author>
    <date year="2025" month="April" day="17"/>
    <area>Operations and Management</area>
    <workgroup>Network Inventory YANG</workgroup>
    <keyword>Automation</keyword>
    <keyword>Network Inventory</keyword>
    <keyword>Network Operation</keyword>
    <keyword>Topology</keyword>
    <abstract>
      <?line 60?>

<t>This document defines a YANG data model for Network Inventory
location (e.g., site, room, rack, geo-location data), which provides
location information with different granularity levels for
inventoried network elements.</t>
      <t>Accurate location information is useful for network planning,
deployment, and maintenance. However, such information cannot be
obtained or verified from the Network Elements themselves. This
document defines a location model for network inventory that extends
the base inventory with comprehensive location data.</t>
    </abstract>
    <note removeInRFC="true">
      <name>Discussion Venues</name>
      <t>Discussion of this document takes place on the
    Network Inventory YANG Working Group mailing list (inventory-yang@ietf.org),
    which is archived at <eref target="https://mailarchive.ietf.org/arch/browse/inventory-yang/"/>.</t>
      <t>Source for this draft and an issue tracker can be found at
    <eref target="https://github.com/ietf-ivy-wg/network-inventory-location"/>.</t>
    </note>
  </front>
  <middle>
    <?line 73?>

<section anchor="introduction">
      <name>Introduction</name>
      <t>NEs can be grouped by location to provide more information for
network planning, deployment, and maintenance (e.g., easily locate
problematic NEs, optimize network resources, or help planning
forecasts). The location can reflect outdoor or indoor information.
An indoor location may be represented as a building, room, or other
similar organizational structures. Outdoor locations can be walls,
poles, or other mount places.</t>
      <t>The information about sites, equipment rooms, and other more precise
locations is critical, but it cannot be automatically populated and
retrieved from network elements (NEs). Instead, it is usually
configured manually.</t>
      <t>The Network Inventory location model is to record physical locations,
such as sites, building, equipment rooms, racks, and so on.
Additionally, it includes provisions for physical addresses or geo-
location data (geographic coordinates). The location model augments the base network inventory <xref target="I-D.ietf-ivy-network-inventory-yang"/> to enrich NEs with location information.</t>
      <t>The Network Inventory location model is classified as a network model (Section 3.5.1 of <xref target="I-D.ietf-netmod-rfc8407bis"/>).</t>
      <t>The YANG data model in this document conforms to the Network
Management Datastore Architecture (NMDA) defined in <xref target="RFC8342"/>.</t>
      <t>Note: The NMDA design needs to be revisited once the module is stable per (Section 4.23.2 of <xref target="I-D.ietf-netmod-rfc8407bis"/>).</t>
      <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.</t>
        <t>Please apply the following replacements:</t>
        <ul spacing="normal">
          <li>
            <t>XXXX --&gt; the assigned RFC number for this document</t>
          </li>
          <li>
            <t>AAAA --&gt; the assigned RFC number for <xref target="I-D.ietf-ivy-network-inventory-yang"/></t>
          </li>
        </ul>
      </section>
      <section anchor="terminology-and-notations">
        <name>Terminology and Notations</name>
        <t>The following terms are defined in <xref target="RFC7950"/> and are not
redefined here:</t>
        <ul spacing="normal">
          <li>
            <t>client</t>
          </li>
          <li>
            <t>server</t>
          </li>
          <li>
            <t>augment</t>
          </li>
          <li>
            <t>data model</t>
          </li>
          <li>
            <t>data node
The following terms are defined in <xref target="RFC6241"/> and are not redefined
here:</t>
          </li>
          <li>
            <t>configuration data</t>
          </li>
          <li>
            <t>state data
The tree diagram used in this document follows the notation defined
in <xref target="RFC8340"/>.</t>
          </li>
        </ul>
        <t>Also, this document uses terms defined in <xref target="I-D.ietf-ivy-network-inventory-yang"/>.</t>
      </section>
    </section>
    <section anchor="hierarchical-locations-of-network-inventory">
      <name>Hierarchical Locations of Network Inventory</name>
      <t>The "location" list is generalized to support a variety of geographic
location, such as sites, rooms, buildings.</t>
      <t>A site represents a general geographic location to group a set of NEs
and corresponding inventory components. NEs, racks, equipment rooms,
and buildings can be grouped within a site.</t>
      <t>A room is a facility, a space for network elements and other
equipment (such as servers, storage) with power supply systems, air
conditioning system, etc.</t>
      <t>Locations can be nested to form a hierarchy. For example, buildings
may be within a site, and a room may be within a building.</t>
      <t>The "location-type" is defined as a YANG identity to identify the
type of an inventory location, which may be site, equipment room,
building, etc.</t>
      <figure anchor="fig-ni-location-tree">
        <name>YANG Subtree of Location</name>
        <artwork type="ascii-art"><![CDATA[
     +--rw locations
        +--rw location* [id]
        |  +--rw id                  string
        |  +--ro uuid?               yang:uuid
        |  +--rw name?               string
        |  +--rw description?        string
        |  +--rw alias?              string
        |  +--rw type?               identityref
        |  +--rw parent?             -> ../../location/id
        |  +--rw child*              -> ../../location/id
        |  +--rw physical-address
        |  |     ...
        |  +--rw geo-location
        |        ...
]]></artwork>
      </figure>
    </section>
    <section anchor="rack">
      <name>Rack</name>
      <t>"racks" represent physical equipment racks in which NEs can be
installed, which facilitate device maintenance. Through "rack-
location", each rack can be assigned to a site or a specific location
within a site, such as an equipment room.</t>
      <t>Each rack is assigned a unique ID and a name in the context of a
facility, e.g. a site. A rack may have some specific attributes,
such as appearance-related attributes and electricity-related
attributes. The height, depth and width are described by Figure 2
(please consider that the door of the rack is facing the user).</t>
      <t>Note: Further discussion is needed to decide whether to separate
"racks" from the list of "location".</t>
      <figure anchor="fig-rack">
        <name>Height, Width and Depth of Rack</name>
        <artwork type="ascii-art" align="center"><![CDATA[
                          ----------------      ---
                          /|              /|      |
                         / |             / |      |
                        /  |            /  |      |
                       ----|-----------|   |      |
                       |   |           |   |      |
                       |   |           |   |      |
                       |   |           |   |      |
                       |   |           |   |      |
                       |   |           |   |      |
                       |   |           |   |    height
                       |   |           |   |      |
                       |   |           |   |      |
                       |   |           |   |      |
                       |   | Door    Q |   |      |
                       |   |         Q |   |      |
                       |   |           |   |      |
                       |   |           |   |      |
                       |   |           |   |      |
                       |   |           |   |      |
                       |   |           |   |      |
                       |   |           |   |      |
                       |   |           |   |      |
                       |   /-----------|----     ---
                       |  /            |   /      /
                       | /             |  /      depth
                       |/              | /      /
                       -----------------      ---
                       |______width____|
                       |               |
]]></artwork>
      </figure>
      <t>The rack attributes include:</t>
      <figure anchor="tree">
        <name>YANG Subtree of Rack</name>
        <artwork align="center"><![CDATA[
        +--rw racks
           +--rw rack* [id]
              +--rw id                     string
              |     ...
              +--rw height?                uint16
              +--rw width?                 uint16
              +--rw depth?                 uint16
              +--rw max-voltage?           uint16
              +--rw max-allocated-power?   uint16
              +--rw contained-chassis* [relative-position]
                    ...
]]></artwork>
      </figure>
      <t>Max-voltage: the maximum voltage supported by the rack.</t>
    </section>
    <section anchor="sec-module">
      <name>Network Inventory Location Tree</name>
      <t><xref target="full-tree"/> provides an overview of the data model for "ietf-ni-location" module.</t>
      <figure anchor="full-tree">
        <name>Network Inventory Location Tree Structure</name>
        <artwork align="center"><![CDATA[
module: ietf-ni-location
  augment /nwi:network-inventory:
    +--rw locations
       +--rw location* [id]
       |  +--rw id                    string
       |  +--ro uuid?                 yang:uuid
       |  +--rw name?                 string
       |  +--rw description?          string
       |  +--rw alias?                string
       |  +--ro hardware-rev?         string
       |  +--ro software-rev?         string
       |  +--ro software-patch-rev*   string
       |  +--ro mfg-name?             string
       |  +--ro mfg-date?             yang:date-and-time
       |  +--ro serial-number?        string
       |  +--ro product-name?         string
       |  +--rw type?                 string
       |  +--rw parent?               -> ../../location/id
       |  +--rw child*                -> ../../location/id
       |  +--rw timestamp?            yang:date-and-time
       |  +--rw valid-until?          yang:date-and-time
       |  +--rw physical-address
       |  |  +--rw address?        string
       |  |  +--rw postal-code?    string
       |  |  +--rw state?          string
       |  |  +--rw city?           string
       |  |  +--rw country-code?   string
       |  +--rw geo-location
       |     +--rw reference-frame
       |     |  +--rw alternate-system?    string
       |     |  |       {alternate-systems}?
       |     |  +--rw astronomical-body?   string
       |     |  +--rw geodetic-system
       |     |     +--rw geodetic-datum?    string
       |     |     +--rw coord-accuracy?    decimal64
       |     |     +--rw height-accuracy?   decimal64
       |     +--rw (location)?
       |     |  +--:(ellipsoid)
       |     |  |  +--rw latitude?    decimal64
       |     |  |  +--rw longitude?   decimal64
       |     |  |  +--rw height?      decimal64
       |     |  +--:(cartesian)
       |     |     +--rw x?           decimal64
       |     |     +--rw y?           decimal64
       |     |     +--rw z?           decimal64
       |     +--rw velocity
       |     |  +--rw v-north?   decimal64
       |     |  +--rw v-east?    decimal64
       |     |  +--rw v-up?      decimal64
       |     +--rw timestamp?         yang:date-and-time
       |     +--rw valid-until?       yang:date-and-time
       +--rw racks
          +--rw rack* [id]
             +--rw id                     string
             +--ro uuid?                  yang:uuid
             +--rw name?                  string
             +--rw description?           string
             +--rw alias?                 string
             +--ro hardware-rev?          string
             +--ro software-rev?          string
             +--ro software-patch-rev*    string
             +--ro mfg-name?              string
             +--ro mfg-date?              yang:date-and-time
             +--ro serial-number?         string
             +--ro product-name?          string
             +--rw rack-location
             |  +--rw location-ref?    ni-location-ref
             |  +--rw row-number?      uint32
             |  +--rw column-number?   uint32
             +--rw height?                uint16
             +--rw width?                 uint16
             +--rw depth?                 uint16
             +--rw max-voltage?           uint16
             +--rw max-allocated-power?   uint16
             +--rw contained-chassis* [relative-position]
             |  +--rw relative-position    uint8
             |  +--rw ne-ref?              leafref
             |  +--rw component-ref?       leafref
             +--rw timestamp?             yang:date-and-time
             +--rw valid-until?           yang:date-and-time
  augment /nwi:network-inventory/nwi:network-elements
            /nwi:network-element:
    +--rw locations
       +--rw location*   ni-location-ref
       +--rw rack?
               -> /nwi:network-inventory/nil:locations/racks/rack/id
]]></artwork>
      </figure>
    </section>
    <section anchor="yang-data-model-for-network-inventory-location">
      <name>YANG Data model for Network Inventory Location</name>
      <t>The "ietf-ni-location" module uses types defined in <xref target="RFC9179"/>, <xref target="I-D.ietf-ivy-network-inventory-yang"/>.</t>
      <sourcecode markers="true" name="ietf-ni-location@2025-04-17.yang"><![CDATA[
=============== NOTE: '\' line wrapping per RFC 8792 ================

module ietf-ni-location {
  yang-version 1.1;
  namespace "urn:ietf:params:xml:ns:yang:ietf-ni-location";
  prefix nil;

  import ietf-yang-types {
    prefix yang;
    reference
      "RFC 6991: Common YANG Data Types";
  }
  import ietf-network-inventory {
    prefix nwi;
    reference
      "RFCAAAA: A YANG Data Model for Network Inventory";
  }
  import ietf-geo-location {
    prefix geo;
    reference
      "RFC 9179: A YANG Grouping for Geographic Locations";
  }

  organization
    "IETF Network Inventory YANG (ivy) Working Group";
  contact
    "WG Web:   <https://datatracker.ietf.org/wg/ivy>
     WG List:  <mailto:inventory-yang@ietf.org>

     Editor: Bo Wu
          <lana.wubo@huawei.com>
     Editor: Sergio Belotti
          <sergio.belotti@nokia.com>
     Editor: Jean-Francois Bouquier
          <jeff.bouquier@vodafone.com>
     Editor: Fabio Peruzzini
          <fabio.peruzzini@telecomitalia.it>
     Editor: Phil Bedard
          <phbedard@cisco.com>";
  description
    "This YANG module defines a model for Network Inventory
     location.

     Copyright (c) 2025 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; see
     the RFC itself for full legal notices.";

  revision 2025-04-17 {
    description
      "Initial version";
    reference
      "RFC XXXX: A YANG Data Model for Network Inventory location.";
    //RFC Editor: Please replace XXXX with actual RFC number,
    //update date information and remove this note
  }

  /* Identities */
  /* Typedef */

  typedef ni-location-ref {
    type leafref {
      path
        "/nwi:network-inventory/nil:locations/nil:location/nil:id";
    }
    description
      "This type is used by data models that need to reference
       network inventory location.";
  }

  /* Grouping */

  grouping physical-address {
    description
      "The grouping of the physical address.";
    container physical-address {
      description
        "Top level container for the physical address.";
      leaf address {
        type string;
        description
          "Specifies an address (number and street).";
      }
      leaf postal-code {
        type string;
        description
          "Specifies a postal code.";
      }
      leaf state {
        type string;
        description
          "Specifies a state. This leaf can also be
           used to describe a region for a country that
           does not have states.";
      }
      leaf city {
        type string;
        description
          "Specifies a city.";
      }
      leaf country-code {
        type string {
          pattern '[A-Z]{2}';
        }
        description
          "Specifies a country.
           Expressed as ISO ALPHA-2 code.";
      }
    }
  }

  grouping locations {
    description
      "The grouping of the locations.";
    container locations {
      description
        "The container for the NE location information.";
      list location {
        key "id";
        description
          "The list of locations within the network.";
        leaf id {
          type string;
          description
            "An identifier of the location.";
        }
        uses nwi:common-entity-attributes;
        leaf type {
          type string;
          description
            "The type of network inventory location, e.g.
             equipment room, building, or site.

             This allows operators to flexibly define custom location
             types (e.g., 'pole', 'roof', 'floor') based on their
             specific network scenarios without requiring model
             extensions. String-based types enable dynamic adaptation
             to heterogeneous organizational naming conventions.";
        }
        leaf parent {
          type leafref {
            path "../../location/id";
          }
          description
            "The name of the location that physically contains this
             location.";
        }
        leaf-list child {
          type leafref {
            path "../../location/id";
          }
          description
            "The name of the contained child locations.";
        }
        leaf timestamp {
          type yang:date-and-time;
          description
            "Reference time when location was recorded.";
        }
        leaf valid-until {
          type yang:date-and-time;
          description
            "The timestamp for which this location is valid until.
             If unspecified, the location has no specific
             expiration time.";
        }
        uses physical-address;
        uses geo:geo-location;
      }
      uses racks;
    }
  }

  grouping racks {
    description
      "The attributes of the rack.";
    container racks {
      description
        "Top level container for the list of racks.";
      list rack {
        key "id";
        description
          "The list of racks within a location,
           e.g. equipment room.";
        leaf id {
          type string;
          description
            "An identifier that uniquely identifies the rack
             within a location, e.g. equipment room.";
        }
        uses nwi:common-entity-attributes;
        container rack-location {
          description
            "The location information of the rack, which
             comprises the name of the location, row number, and
             column number.";
          leaf location-ref {
            type ni-location-ref;
            description
              "Name of location where this rack is located.";
          }
          leaf row-number {
            type uint32;
            description
              "Identifies the row within the equipment room where
               the rack is located.";
          }
          leaf column-number {
            type uint32;
            description
              "Identifies the physical location of the rack within
               the column.";
          }
        }
        leaf height {
          type uint16;
          units "millimeter";
          description
            "Rack height.";
        }
        leaf width {
          type uint16;
          units "millimeter";
          description
            "Rack width.";
        }
        leaf depth {
          type uint16;
          units "millimeter";
          description
            "Rack depth.";
        }
        leaf max-voltage {
          type uint16;
          units "volt";
          description
            "The maximum voltage could be supported by the rack.";
        }
        leaf max-allocated-power {
          type uint16;
          units "watts";
          description
            "The maximum allocated power to the rack.";
        }
        list contained-chassis {
          key "relative-position";
          description
            "The list of chassis within a rack.";
          leaf relative-position {
            type uint8;
            description
              "A relative position of chassis within
               the rack";
          }
          leaf ne-ref {
            type leafref {
              path "/nwi:network-inventory/nwi:network-elements"
                 + "/nwi:network-element/nwi:ne-id";
            }
            description
              "The reference to the network element containing
               the chassis component.";
          }
          leaf component-ref {
            type leafref {
              path "/nwi:network-inventory/nwi:network-elements"
                 + "/nwi:network-element[nwi:ne-id=current()/.."
                 + "/ne-ref]/nwi:components/nwi:component"
                 + "/nwi:component-id";
            }
            description
              "The reference to the chassis component within
               the network element and contained by the rack.";
          }
        }
        leaf timestamp {
          type yang:date-and-time;
          description
            "Reference time when location was recorded.";
        }
        leaf valid-until {
          type yang:date-and-time;
          description
            "The timestamp for which this location is valid until.
             If unspecified, the location has no specific
             expiration time.";
        }
      }
    }
  }

  grouping locations-ref {
    description
      "The attributes of the locations.";
    container locations {
      description
        "The container for the location.";
      leaf-list location {
        type ni-location-ref;
        description
          "The reference of the location.";
      }
      leaf rack {
        type leafref {
          path "/nwi:network-inventory/nil:locations/nil:racks"
             + "/nil:rack/nil:id";
        }
        description
          "The reference to the rack.";
      }
    }
  }

  augment "/nwi:network-inventory" {
    description
      "Provides location information for network inventory.";
    uses locations;
  }

  augment
    "/nwi:network-inventory/nwi:network-elements/nwi:network-element\
                                                                  " {
      description
        "Augment network element with location information.";
      uses locations-ref;
  }
}
]]></sourcecode>
    </section>
    <section anchor="security-considerations">
      <name>Security Considerations</name>
      <t>This section uses the template described in <xref section="3.7" sectionFormat="of" target="I-D.ietf-netmod-rfc8407bis"/>.</t>
      <t>The "ietf-ni-location" YANG module defines a data model that is
designed to be accessed via YANG-based management protocols, such as
NETCONF <xref target="RFC6241"/> or RESTCONF <xref target="RFC8040"/>. These protocols have to
use a secure transport layer (e.g., SSH <xref target="RFC6242"/>, TLS <xref target="RFC8446"/>, and
QUIC <xref target="RFC9000"/>) and 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>There are a number of data nodes defined in this YANG module that are
writable/creatable/deletable (i.e., config true, which is the
default). All writable data nodes are likely to be reasonably sensitive or vulnerable
in some network environments. Write operations (e.g., edit-config)
and delete operations to these data nodes without proper protection
or authentication can have a negative effect on network operations.
The following subtrees and data nodes have particular
sensitivities/vulnerabilities:</t>
      <t>'locations': The list may be used to track the set of network elements.</t>
      <t>Some of the readable data nodes in this YANG module may be considered
sensitive or vulnerable in some network environments. It is thus
important to control read access (e.g., via get, get-config, or
notification) to these data nodes. Specifically, the following
subtrees and data nodes have particular sensitivities/vulnerabilities:</t>
      <t>Since this module identifies locations, authors using this module
SHOULD consider any privacy issues that may arise when the data
is readable (e.g., customer device locations, etc).</t>
    </section>
    <section anchor="iana-considerations">
      <name>IANA Considerations</name>
      <t>IANA is requested to register the following URI in the "ns" subregistry within
the "IETF XML Registry" <xref target="RFC3688"/>:</t>
      <artwork><![CDATA[
URI:  urn:ietf:params:xml:ns:yang:ietf-ni-location
Registrant Contact:  The IESG.
XML:  N/A; the requested URI is an XML namespace.
]]></artwork>
      <t>IANA is requested to register the following YANG module in the "YANG Module
Names" subregistry <xref target="RFC6020"/> within the "YANG Parameters" registry.</t>
      <artwork><![CDATA[
Name:  ietf-ni-location
Maintained by IANA?  N
Namespace:  urn:ietf:params:xml:ns:yang:ietf-ni-location
Prefix:  nil
Reference:  RFC XXXX
]]></artwork>
    </section>
  </middle>
  <back>
    <references anchor="sec-combined-references">
      <name>References</name>
      <references anchor="sec-normative-references">
        <name>Normative References</name>
        <reference anchor="I-D.ietf-ivy-network-inventory-yang">
          <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>TIM</organization>
            </author>
            <author fullname="Phil Bedard" initials="P." surname="Bedard">
              <organization>Cisco</organization>
            </author>
            <date day="28" month="February" year="2025"/>
            <abstract>
              <t>   This document defines a base YANG data model for network inventory.
   The scope of this base model is set to be application- and
   technology-agnostic.  However, the data model is designed with
   appropriate provisions to ease future augmentations with application-
   and technology-specific details.

              </t>
            </abstract>
          </front>
          <seriesInfo name="Internet-Draft" value="draft-ietf-ivy-network-inventory-yang-05"/>
        </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="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="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="RFC9179">
          <front>
            <title>A YANG Grouping for Geographic Locations</title>
            <author fullname="C. Hopps" initials="C." surname="Hopps"/>
            <date month="February" year="2022"/>
            <abstract>
              <t>This document defines a generic geographical location YANG grouping. The geographical location grouping is intended to be used in YANG data models for specifying a location on or in reference to Earth or any other astronomical object.</t>
            </abstract>
          </front>
          <seriesInfo name="RFC" value="9179"/>
          <seriesInfo name="DOI" value="10.17487/RFC9179"/>
        </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="RFC6242">
          <front>
            <title>Using the NETCONF Protocol over Secure Shell (SSH)</title>
            <author fullname="M. Wasserman" initials="M." surname="Wasserman"/>
            <date month="June" year="2011"/>
            <abstract>
              <t>This document describes a method for invoking and running the Network Configuration Protocol (NETCONF) within a Secure Shell (SSH) session as an SSH subsystem. This document obsoletes RFC 4742. [STANDARDS-TRACK]</t>
            </abstract>
          </front>
          <seriesInfo name="RFC" value="6242"/>
          <seriesInfo name="DOI" value="10.17487/RFC6242"/>
        </reference>
        <reference anchor="RFC8446">
          <front>
            <title>The Transport Layer Security (TLS) Protocol Version 1.3</title>
            <author fullname="E. Rescorla" initials="E." surname="Rescorla"/>
            <date month="August" year="2018"/>
            <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.</t>
              <t>This document updates RFCs 5705 and 6066, and obsoletes RFCs 5077, 5246, and 6961. This document also specifies new requirements for TLS 1.2 implementations.</t>
            </abstract>
          </front>
          <seriesInfo name="RFC" value="8446"/>
          <seriesInfo name="DOI" value="10.17487/RFC8446"/>
        </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="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="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="I-D.ietf-netmod-rfc8407bis">
          <front>
            <title>Guidelines for Authors and Reviewers of Documents Containing YANG Data Models</title>
            <author fullname="Andy Bierman" initials="A." surname="Bierman">
              <organization>YumaWorks</organization>
            </author>
            <author fullname="Mohamed Boucadair" initials="M." surname="Boucadair">
              <organization>Orange</organization>
            </author>
            <author fullname="Qin Wu" initials="Q." surname="Wu">
              <organization>Huawei</organization>
            </author>
            <date day="15" month="April" year="2025"/>
            <abstract>
              <t>   This memo provides guidelines for authors and reviewers of
   specifications containing YANG modules, including IANA-maintained
   modules.  Recommendations and procedures are defined, which are
   intended to increase interoperability and usability of Network
   Configuration Protocol (NETCONF) and RESTCONF protocol
   implementations that utilize YANG modules.  This document obsoletes
   RFC 8407.

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

              </t>
            </abstract>
          </front>
          <seriesInfo name="Internet-Draft" value="draft-ietf-netmod-rfc8407bis-23"/>
        </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="I-D.ietf-ccamp-network-inventory-yang">
          <front>
            <title>A YANG Data Model for Network Hardware 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>TIM</organization>
            </author>
            <author fullname="Phil Bedard" initials="P." surname="Bedard">
              <organization>Cisco</organization>
            </author>
            <date day="9" month="July" year="2023"/>
            <abstract>
              <t>   This document defines a YANG data model for network hardware
   inventory data information.

   The YANG data model presented in this document is intended to be used
   as the basis toward a generic YANG data model for network hardware
   inventory data information which can be augmented, when required,
   with technology-specific (e.g., optical) inventory data, to be
   defined either in a future version of this document or in another
   document.

   The YANG data model defined in this document conforms to the Network
   Management Datastore Architecture (NMDA).

              </t>
            </abstract>
          </front>
          <seriesInfo name="Internet-Draft" value="draft-ietf-ccamp-network-inventory-yang-02"/>
        </reference>
      </references>
    </references>
    <?line 737?>

<section numbered="false" anchor="acknowledgments">
      <name>Acknowledgments</name>
      <t>The authors would like to thank the authors and contributors of
<xref target="I-D.ietf-ccamp-network-inventory-yang"/> to trigger this work.
During the discussion of base Network Inventory (NI) model, it is agreed
that the definition of the equipment room and rack can be a separate
location model and support manual configuration, while the NI model
aggregates the inventory data of the Network Elements (NEs) on the
network. Usually the information about sites or equipment rooms is
not detectable by network controller and configured manually.</t>
      <t>The authors wish to thank Mohamed Boucadair and many others for their helpful comments and suggestions.</t>
    </section>
    <section anchor="contributors" numbered="false" toc="include" removeInRFC="false">
      <name>Contributors</name>
      <contact initials="I." surname="Busi" fullname="Italo Busi">
        <organization>Huawei Technologies</organization>
        <address>
          <email>italo.busi@huawei.com</email>
        </address>
      </contact>
      <contact fullname="Chaode Yu">
        <organization>Huawei</organization>
        <address>
          <email>yuchaode@huawei.com</email>
        </address>
      </contact>
    </section>
  </back>
  <!-- ##markdown-source:
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

-->

</rfc>
