<?xml version='1.0' encoding='utf-8'?>
<!DOCTYPE rfc [
  <!ENTITY nbsp    "&#160;">
  <!ENTITY zwsp   "&#8203;">
  <!ENTITY nbhy   "&#8209;">
  <!ENTITY wj     "&#8288;">
]>
<?xml-stylesheet type="text/xsl" href="rfc2629.xslt" ?>
<!-- generated by https://github.com/cabo/kramdown-rfc version 1.7.39 (Ruby 3.4.9) -->
<rfc xmlns:xi="http://www.w3.org/2001/XInclude" ipr="trust200902" docName="draft-ietf-ccamp-otn-topo-yang-21" category="std" consensus="true" submissionType="IETF" tocInclude="true" sortRefs="true" symRefs="true" version="3">
  <!-- xml2rfc v2v3 conversion 3.33.0 -->
  <front>
    <title abbrev="OTN Topology YANG Model">A YANG Data Model for Optical Transport Network Topology</title>
    <seriesInfo name="Internet-Draft" value="draft-ietf-ccamp-otn-topo-yang-21"/>
    <author initials="H." surname="Zheng" fullname="Haomian Zheng">
      <organization>Huawei Technologies</organization>
      <address>
        <postal>
          <street>H1, Huawei Xiliu Beipo Village, Songshan Lake</street>
          <city>Dongguan</city>
          <region>Guangdong</region>
          <code>523808</code>
          <country>China</country>
        </postal>
        <email>zhenghaomian@huawei.com</email>
      </address>
    </author>
    <author initials="I." surname="Busi" fullname="Italo Busi">
      <organization>Huawei Technologies</organization>
      <address>
        <email>italo.busi@huawei.com</email>
      </address>
    </author>
    <author initials="X." surname="Liu" fullname="Xufeng Liu">
      <organization>Individual</organization>
      <address>
        <email>xufeng.liu.ietf@gmail.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="O." surname="Gonzalez de Dios" fullname="Oscar Gonzalez de Dios">
      <organization>Telefonica</organization>
      <address>
        <email>oscar.gonzalezdedios@telefonica.com</email>
      </address>
    </author>
    <date year="2026" month="June" day="16"/>
    <area>Routing</area>
    <workgroup>CCAMP Working Group</workgroup>
    <abstract>
      <?line 110?>

<t>This document defines a YANG data model for representing, retrieving,
and manipulating Optical Transport Network (OTN) topologies.  It is
independent of control plane protocols and captures topological and
resource-related information pertaining to OTN.</t>
    </abstract>
    <note removeInRFC="true">
      <name>About This Document</name>
      <t>
        The latest revision of this draft can be found at <eref target="https://haomianzheng.github.io/IETF-ACTN-YANG-Model/draft-ietf-ccamp-otn-topo-yang.html"/>.
        Status information for this document may be found at <eref target="https://datatracker.ietf.org/doc/draft-ietf-ccamp-otn-topo-yang/"/>.
      </t>
      <t>
        Discussion of this document takes place on the
        CCAMP Working Group Working Group mailing list (<eref target="mailto:ccamp@ietf.org"/>),
        which is archived at <eref target="https://mailarchive.ietf.org/arch/browse/ccamp/"/>.
        Subscribe at <eref target="https://www.ietf.org/mailman/listinfo/ccamp/"/>.
      </t>
      <t>Source for this draft and an issue tracker can be found at
        <eref target="https://github.com/haomianzheng/IETF-ACTN-YANG-Model"/>.</t>
    </note>
  </front>
  <middle>
    <?line 117?>

<section anchor="introduction">
      <name>Introduction</name>
      <t>A transport network is a server-layer network designed to provide
connectivity services for a client-layer network to carry the client
traffic transparently across the server-layer network resources.  A
transport network typically utilizes several different transport
technologies such as the Optical Transport Networks (OTN) or packet
transport such as provided by the MPLS-Transport Profile (MPLS-TP).</t>
      <t>This document defines a data model of an OTN topology, using YANG version 1.1
<xref target="RFC7950"/>.  The model can be used by an application communicating
with a transport controller.  Furthermore, it can be used by an
application for the following purposes (but not limited to):</t>
      <ul spacing="normal">
        <li>
          <t>To obtain a whole view of the network topology information of its
interest;</t>
        </li>
        <li>
          <t>To receive notifications with regard to the information change of
the OTN topology;</t>
        </li>
        <li>
          <t>To enforce the establishment and update to the network topology
with the characteristics specified in the data model;</t>
        </li>
      </ul>
      <t>The YANG model defined in this document is independent of control
plane protocols and captures topology-related information pertaining
to OTN electrical layer, as the scope specified by <xref target="RFC7062"/> .
Furthermore, it is not a stand-alone model, but augments from the TE
topology YANG model defined in <xref target="RFC8795"/>, and importing from the
generic Layer 1 types defined in <xref target="I-D.ietf-ccamp-layer1-types"/>.
Following TE topology YANG model, the YANG model defined in this
document is interface independent.  The model is included in
<xref target="I-D.ietf-teas-actn-yang"/>, which indicates the typical usage of IETF
YANG models in ACTN architecture specified by <xref target="RFC8453"/>.  More
specifically, the usage of this model between controllers is
described in <xref target="I-D.ietf-ccamp-transport-nbi-app-statement"/>.</t>
      <t>This model supports both client-configured and system-controlled OTN
topologies, as described <xref target="RFC8345"/>.
These OTN topologies can be used as overlay or underlay topologies, using the mechanisms defined in <xref target="RFC8345"/> and <xref target="RFC8795"/>.</t>
      <t>The reader of this document is assumed to be familiar with the OTN
technology, as specified in <xref target="ITU-T_G.709"/> and with the TE topology
YANG data model, as defined in <xref target="RFC8795"/>.</t>
      <t><xref target="RFC7062"/> also provides a framework to allow the development of
protocol extensions to support GMPLS and Path Computation Element
(PCE) control of OTN.</t>
      <t><xref section="6" sectionFormat="of" target="RFC8795"/> provides guidelines for writing technology-
specific TE topology augmentations.</t>
      <section anchor="terminology-and-notations">
        <name>Terminology and Notations</name>
        <t>Some of the key terms used in this document are listed as follows.</t>
        <dl>
          <dt>TS:</dt>
          <dd>
            <t>Tributary Slot.</t>
          </dd>
          <dt>TSG:</dt>
          <dd>
            <t>Tributary Slot Granularity.</t>
          </dd>
          <dt>TPN:</dt>
          <dd>
            <t>Tributary Port Number.</t>
          </dd>
        </dl>
        <t>Refer to <xref target="RFC7062"/> for the key terms used in this document.</t>
        <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</t>
          </li>
        </ul>
        <t>The following terms are defined in <xref target="RFC6241"/> and are not redefined
here:</t>
        <ul spacing="normal">
          <li>
            <t>configuration data</t>
          </li>
          <li>
            <t>state data</t>
          </li>
        </ul>
        <t>The terminology for describing YANG data models is found in
<xref target="RFC7950"/>.</t>
      </section>
      <section anchor="requirements-language">
        <name>Requirements Language</name>
        <t>The key words "MUST", "MUST NOT", "REQUIRED", "SHALL", "SHALL
NOT", "SHOULD", "SHOULD NOT", "RECOMMENDED", "NOT RECOMMENDED",
"MAY", and "OPTIONAL" 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.
<?line -6?>
        </t>
      </section>
      <section anchor="tree-diagram">
        <name>Tree Diagram</name>
        <t>A simplified graphical representation of the data model is used in
<xref target="yang-tree"/> of this this document.  The meaning of the symbols in these
diagrams is defined in <xref target="RFC8340"/>.</t>
      </section>
      <section anchor="prefix-in-data-node-names">
        <name>Prefix in Data Node Names</name>
        <t>In this document, the names of data nodes and other data model
objects are prefixed using the standard prefix associated with the
corresponding YANG imported modules, as shown in <xref target="tab-prefixes"/>.</t>
        <table anchor="tab-prefixes">
          <name>Prefixes and corresponding YANG modules</name>
          <thead>
            <tr>
              <th align="left">Prefix</th>
              <th align="left">YANG module</th>
              <th align="left">Reference</th>
            </tr>
          </thead>
          <tbody>
            <tr>
              <td align="left">l1-types</td>
              <td align="left">ietf-layer1-types</td>
              <td align="left">[RFCYYYY]</td>
            </tr>
            <tr>
              <td align="left">otnt</td>
              <td align="left">ietf-otn-topology</td>
              <td align="left">RFC XXXX</td>
            </tr>
            <tr>
              <td align="left">nw</td>
              <td align="left">ietf-network</td>
              <td align="left">
                <xref target="RFC8345"/></td>
            </tr>
            <tr>
              <td align="left">nt</td>
              <td align="left">ietf-network-topology</td>
              <td align="left">
                <xref target="RFC8345"/></td>
            </tr>
            <tr>
              <td align="left">tet</td>
              <td align="left">ietf-te-topology</td>
              <td align="left">
                <xref target="RFC8795"/></td>
            </tr>
          </tbody>
        </table>
        <ul empty="true">
          <li>
            <t>RFC Editor Note:
Please replace XXXX with the number assigned to the
RFC once this draft becomes an RFC.
Please replace YYYY with the RFC
numbers assigned to <xref target="I-D.ietf-ccamp-layer1-types"/>.</t>
          </li>
        </ul>
      </section>
    </section>
    <section anchor="yang-data-model-for-otn-topology">
      <name>YANG Data Model for OTN Topology</name>
      <section anchor="otn-topology-data-model-overview">
        <name>OTN Topology Data Model Overview</name>
        <t>This document aims to describe the data model for OTN topology.  As a
classic Traffic-engineering (TE) technology, OTN provides TDM
switching in transport network <xref target="ITU-T_G.709"/>.  Therefore, the YANG
module presented in this document augments from a more generic
Traffic Engineered (TE) network topology data model, i.e., the ietf-
te-topology, as specified in <xref target="RFC8795"/>.  In <xref section="6" sectionFormat="of" target="RFC8795"/>,
the guideline for augmenting TE topology model was provided, and in
this draft, we augment the TE topology model to describe the topology
in OTN.  Common types, identities and groupings defined in
<xref target="I-D.ietf-ccamp-layer1-types"/> is reused in this document.  <xref target="RFC8345"/>
describes a network topology model and provides the fundamental model
for <xref target="RFC8795"/>.  However, this work is not directly augmenting
<xref target="RFC8345"/>.  <xref target="fig-overview"/> shows the augmentation relationship.</t>
        <figure anchor="fig-overview">
          <name>Relationship between OTN and TE topology models</name>
          <artwork type="ascii-art"><![CDATA[
                        +------------------+
           TE generic   | ietf-te-topology |
                        +------------------+
                                  ^
                                  |
                                  | Augments
                                  |
                        +---------+---------+
           OTN          | ietf-otn-topology |
                        +-------------------+
]]></artwork>
        </figure>
        <t>The entities and TE attributes, such as node, termination points and
links, are still applicable for describing an OTN topology and the
model presented in this document only specifies technology-specific
attributes/information.  The OTN-specific attributes in <xref target="RFC7139"/>,
including the TPN, TS and TSG, can be used to represent the bandwidth
and label information.  These attributes have been specified in
<xref target="I-D.ietf-ccamp-layer1-types"/>, and used in this document for
augmentation of the generic TE topology model.</t>
      </section>
      <section anchor="sec-attributes">
        <name>Attributes Augmentation</name>
        <t>There are a few characteristics augmenting the generic TE topology.</t>
        <t>Following the guidelines described in <xref target="RFC8795"/>, an otn-topology
network-type is specified as the indicator of OTN in the topology.</t>
        <artwork type="ascii-art"><![CDATA[
      augment /nw:networks/nw:network/nw:network-types/tet:te-topology:
        +--rw otn-topology!
]]></artwork>
        <t>Three OTN technology-specific parameters that augment the generic TE
link attributes are specified.</t>
        <artwork type="ascii-art"><![CDATA[
      augment /nw:networks/nw:network/nt:link/tet:te
                /tet:te-link-attributes:
        +--rw otn-link
          +--rw odtu-flex-type?   l1-types:odtu-flex-type
          +--rw tsg?              identityref
          +--rw distance?         uint32
]]></artwork>
        <t>In OTN the resources is measured by the tributary slots (TS), as
specified in <xref target="RFC7139"/>.  The tributary slot granularity (TSG)
attribute defines the granularity, such as 1.25G, 2.5G and 5G, used
by the TSs of a given OTN link.  The distance attribute describes the
geographical distance between a pair of OTN link termination points.
This is usually measured by the length of the fibre.</t>
        <t>The OTN topology model also includes information about the access
links that support the transparent client signals, defined in
<xref target="I-D.ietf-ccamp-layer1-types"/>.  These links can also be multi-
function access links that can support one or more transparent client
signals and OTN.</t>
        <t>A client-svc presence container is specified to augment the generic
TE link termination point to describe if the point is capable of
carrying a client signal and what kind of signal can be carried as
follows.  The same presence container is also specified for the TE
link.</t>
        <artwork type="ascii-art"><![CDATA[
      augment /nw:networks/nw:network/nw:node/nt:termination-point
                /tet:te:
        +--rw client-svc!
            +--rw supported-client-signal*   identityref
]]></artwork>
        <t>The list of supported-client-signal is used to provide the
capabilities of the client signal specified in
<xref target="I-D.ietf-ccamp-layer1-types"/>.</t>
      </section>
      <section anchor="sec-bandwidth">
        <name>Bandwidth Augmentation</name>
        <t>Following the guidelines in <xref target="RFC8795"/>, the model augments all the
occurrences of the te-bandwidth container with the OTN technology-
specific attributes using the otn-link-bandwidth and otn-path-
bandwidth groupings defined in <xref target="I-D.ietf-ccamp-layer1-types"/>.</t>
        <t>The odtu-flex-type attribute of a given OTN Link (or Link Termination Point - LTP), shown in <xref target="sec-attributes"/>, is used, together with the OTN technology-specific attributes defined in the otn-link-bandwidth and otn-path-bandwidth groupings, to compute the number of Tributary Slots (TS) required by the ODUflex LSPs set up on that OTN Link (or LTP).</t>
        <t>In order to compute the number of Tributary Slots (TS) required by the ODUflex LSPs set up on an underlay path (e.g., the underlay path of a connectivity matrix entry), the odtu-flex-type attribute is added to the OTN technology-specific attributes defined in the otn-link-bandwidth and otn-path-bandwidth groupings.</t>
      </section>
      <section anchor="label-augmentation">
        <name>Label Augmentation</name>
        <t>The model augments all the occurrences of the label-restriction list
with OTN technology specific attributes using the otn-label-range-
info grouping defined in <xref target="I-D.ietf-ccamp-layer1-types"/>.</t>
        <t>Moreover, following the guidelines in <xref target="RFC8795"/>, the model augments
all the occurrences of the te-label container with the OTN technology
specific attributes using the otn-label-start-end, otn-label-hop and
otn-label-step groupings defined in <xref target="I-D.ietf-ccamp-layer1-types"/>.</t>
      </section>
    </section>
    <section anchor="yang-code">
      <name>The YANG Model</name>
      <t>This YANG module references <xref target="RFC8345"/>, <xref target="RFC8795"/>,
<xref target="I-D.ietf-ccamp-layer1-types"/> and <xref target="ITU-T_G.709"/>.</t>
      <sourcecode type="yang" markers="true" name="ietf-otn-topology@2026-06-12.yang"><![CDATA[
module ietf-otn-topology {
  yang-version 1.1;
  namespace "urn:ietf:params:xml:ns:yang:ietf-otn-topology";
  prefix otnt;

  import ietf-network {
    prefix nw;
    reference
      "RFC 8345: A YANG Data Model for Network Topologies";
  }
  import ietf-network-topology {
    prefix nt;
    reference
      "RFC 8345: A YANG Data Model for Network Topologies";
  }
  import ietf-te-topology {
    prefix tet;
    reference
      "RFC 8795: YANG Data Model for Traffic Engineering
                 (TE) Topologies";
  }
  import ietf-layer1-types {
    prefix l1-types;
    reference
      "RFC YYYY: A YANG Data Model for Layer 1 Types";
  }
  // RFC Editor: replace YYYY with actual RFC number assigned to 
  // [I-D.ietf-ccamp-layer1-types] and remove this note

  organization
    "IETF CCAMP Working Group";
  contact
    "WG Web: <https://datatracker.ietf.org/wg/ccamp/>
     WG List: <mailto:ccamp@ietf.org>

     Editor: Haomian Zheng
             <mailto:zhenghaomian@huawei.com>

     Editor: Italo Busi
             <mailto:italo.busi@huawei.com>

     Editor: Xufeng Liu
             <mailto:xufeng.liu.ietf@gmail.com>

     Editor: Sergio Belotti
             <mailto:sergio.belotti@nokia.com>

     Editor: Oscar Gonzalez de Dios
             <mailto:oscar.gonzalezdedios@telefonica.com>";
  description
    "This module defines a protocol independent Layer 1/ODU topology
     data model.

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

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

     This version of this YANG module is part of RFC XXXX; see
     the RFC itself for full legal notices.

     The key words 'MUST', 'MUST NOT', 'REQUIRED', 'SHALL', 'SHALL
     NOT', 'SHOULD', 'SHOULD NOT', 'RECOMMENDED', 'NOT RECOMMENDED',
     'MAY', and 'OPTIONAL' in this document are to be interpreted as
     described in BCP 14 (RFC 2119) (RFC 8174) when, and only when,
     they appear in all capitals, as shown here.";

  revision 2026-06-12 {
    description
      "Initial Revision";
    reference
      "RFC XXXX: A YANG Data Model for Optical Transport Network
                 Topology";
  }
  // RFC Editor: replace XXXX with actual RFC number, update date
  // information and remove this note

  /*
   * Groupings
   */

  grouping label-range-info {
    description
      "OTN technology-specific label range related information with
       a presence container indicating that the label range is an
       OTN technology-specific label range.

       This grouping SHOULD be used together with the
       otn-label-start-end and otn-label-step groupings to provide
       OTN technology-specific label information to the models which
       use the label-restriction-info grouping defined in the module
       ietf-te-types.";
    uses l1-types:otn-label-range-info {
      refine "otn-label-range" {
        presence
          "Indicates the label range is an OTN label range.

           This container MUST NOT be present if there are other
           presence containers or attributes indicating another type
           of label range.";
      }
    }
  }

  /*
   * Data nodes
   */

  augment "/nw:networks/nw:network/nw:network-types/"
        + "tet:te-topology" {
    description
      "augment network types to include OTN.";
    container otn-topology {
      presence "indicates a topology type of Optical Transport
                Network (OTN)-electrical layer.";
      description
        "OTN topology type";
    }
  }

  augment "/nw:networks/nw:network/nw:node/tet:te"
        + "/tet:te-node-attributes" {
    when "../../../nw:network-types/tet:te-topology/
          otnt:otn-topology" {
      description
        "Augment only for OTN.";
    }
    description
      "Augment TE node attributes.";
    container otn-node {
      presence "The TE node is an OTN node.";
      description
        "Introduce new TE node type for OTN node.";
    }
  }

  augment "/nw:networks/nw:network/nt:link/tet:te/"
        + "tet:te-link-attributes" {
    when "../../../nw:network-types/tet:te-topology/
          otnt:otn-topology" {
      description
        "Augment only for OTN.";
    }
    description
      "Augment link configuration";
    container otn-link {
      description
        "Attributes of the OTN Link.";
      leaf odtu-flex-type {
        type l1-types:odtu-flex-type;
        description
          "The type of Optical Data Tributary Unit (ODTU)
           whose nominal bitrate is used to compute the number of
           Tributary Slots (TS) required by the ODUflex LSPs set up
           on this OTN Link.";
      }
      leaf tsg {
        type identityref {
          base l1-types:tributary-slot-granularity;
        }
        description
          "Tributary slot granularity.";
        reference
          "ITU-T G.709 v6.0 (06/2020): Interfaces for the Optical
                     Transport Network (OTN)";
      }
      leaf distance {
        type uint32;
        description
          "distance in the unit of kilometers";
      }
    }
    container client-svc {
      presence
        "When present, indicates that the Link supports Constant
         Bit Rate (CBR) client signals.";
      description
        "Attributes of the Link supporting CBR client signals.";
      leaf-list supported-client-signal {
        type identityref {
          base l1-types:client-signal;
        }
        min-elements 1;
        description
          "List of client signal types supported by the Link.";
      }
    }
  }

  augment "/nw:networks/nw:network/nw:node/nt:termination-point/"
        + "tet:te" {
    when "../../../nw:network-types/tet:te-topology/
          otnt:otn-topology" {
      description
        "Augment only for OTN.";
    }
    description
      "Augment link termination point (LTP) configuration.";
    container otn-link-tp {
      description
        "Attributes of the OTN Link Termination Point (LTP).";
      leaf odtu-flex-type {
        type l1-types:odtu-flex-type;
        description
          "The type of Optical Data Tributary Unit (ODTU)
           whose nominal bitrate is used to compute the number of
           Tributary Slots (TS) required by the ODUflex LSPs set up
           on this OTN Link Termination Point (LTP).";
      }
    }
    container client-svc {
      presence
        "When present, indicates that the Link Termination Point
         (LTP) supports Constant Bit Rate (CBR) client signals.";
      description
        "OTN LTP Service attributes.";
      leaf-list supported-client-signal {
        type identityref {
          base l1-types:client-signal;
        }
        description
          "List of client signal types supported by the LTP.";
      }
    }
  }

  /*
   * Augment TE bandwidth
   */

  augment "/nw:networks/nw:network/nw:node/nt:termination-point/"
        + "tet:te/"
        + "tet:interface-switching-capability/"
        + "tet:max-lsp-bandwidth/tet:te-bandwidth/tet:technology" {
    when "../../../../../../nw:network-types/tet:te-topology/
          otnt:otn-topology" {
      description
        "Augmentation parameters apply only for networks with
         OTN topology type.";
    }
    description
      "Augment maximum LSP TE bandwidth for the link termination
       point (LTP).";
    case otn {
      uses l1-types:otn-max-path-bandwidth {
        description
          "The odtu-flex-type attribute of the OTN Link Termination
           Point (LTP) is used to compute the number of Tributary
           Slots (TS) required by the ODUflex LSPs set up on this
           OTN LTP.";
      }
    }
  }

  augment "/nw:networks/nw:network/nw:node/tet:te/"
        + "tet:te-node-attributes/tet:connectivity-matrices/"
        + "tet:path-constraints/tet:te-bandwidth/tet:technology" {
    when "../../../../../../nw:network-types/tet:te-topology/
          otnt:otn-topology" {
      description
        "Augmentation parameters apply only for networks with
         OTN topology type.";
    }
    description
      "Augment TE bandwidth path constraints of the TE node
       connectivity matrices.";
    case otn {
      uses l1-types:otn-link-bandwidth {
        augment "otn-bandwidth" {
          description
            "Augment OTN link bandwidth information.";
          leaf odtu-flex-type {
            type l1-types:odtu-flex-type;
            description
              "The type of Optical Data Tributary Unit (ODTU)
               whose nominal bitrate is used to compute the number of
               Tributary Slots (TS) required by the ODUflex LSPs
               set up along the underlay paths of these OTN
               connectivity matrices.";
          }
        }
      }
    }
  }

  augment "/nw:networks/nw:network/nw:node/tet:te/"
        + "tet:te-node-attributes/tet:connectivity-matrices/"
        + "tet:connectivity-matrix/"
        + "tet:path-constraints/tet:te-bandwidth/tet:technology" {
    when "../../../../../../../nw:network-types/tet:te-topology/
          otnt:otn-topology" {
      description
        "Augmentation parameters apply only for networks with
         OTN topology type.";
    }
    description
      "Augment TE bandwidth path constraints of the
       connectivity matrix entry.";
    case otn {
      uses l1-types:otn-link-bandwidth {
        augment "otn-bandwidth" {
          description
            "Augment OTN link bandwidth information.";
          leaf odtu-flex-type {
            type l1-types:odtu-flex-type;
            description
              "The type of Optical Data Tributary Unit (ODTU)
               whose nominal bitrate is used to compute the number of
               Tributary Slots (TS) required by the ODUflex LSPs
               set up along the underlay path of this OTN
               connectivity matrix entry.";
          }
        }
      }
    }
  }

  augment "/nw:networks/nw:network/nw:node/tet:te/"
        + "tet:information-source-entry/tet:connectivity-matrices/"
        + "tet:path-constraints/tet:te-bandwidth/tet:technology" {
    when "../../../../../../nw:network-types/tet:te-topology/
          otnt:otn-topology" {
      description
        "Augmentation parameters apply only for networks with
         OTN topology type.";
    }
    description
      "Augment TE bandwidth path constraints of the TE node
       connectivity matrices information source.";
    case otn {
      uses l1-types:otn-link-bandwidth {
        augment "otn-bandwidth" {
          description
            "Augment OTN link bandwidth information.";
          leaf odtu-flex-type {
            type l1-types:odtu-flex-type;
            description
              "The type of Optical Data Tributary Unit (ODTU)
               whose nominal bitrate is used to compute the number of
               Tributary Slots (TS) required by the ODUflex LSPs
               set up along the underlay paths of these OTN
               connectivity matrices.";
          }
        }
      }
    }
  }

  augment "/nw:networks/nw:network/nw:node/tet:te/"
        + "tet:information-source-entry/tet:connectivity-matrices/"
        + "tet:connectivity-matrix/"
        + "tet:path-constraints/tet:te-bandwidth/tet:technology" {
    when "../../../../../../../nw:network-types/tet:te-topology/
          otnt:otn-topology" {
      description
        "Augmentation parameters apply only for networks with
         OTN topology type.";
    }
    description
      "Augment TE bandwidth path constraints of the
       connectivity matrix entry information source";
    case otn {
      uses l1-types:otn-link-bandwidth {
        augment "otn-bandwidth" {
          description
            "Augment OTN link bandwidth information.";
          leaf odtu-flex-type {
            type l1-types:odtu-flex-type;
            description
              "The type of Optical Data Tributary Unit (ODTU)
               whose nominal bitrate is used to compute the number of
               Tributary Slots (TS) required by the ODUflex LSPs
               set up along the underlay path of this OTN
               connectivity matrix entry.";
          }
        }
      }
    }
  }

  augment "/nw:networks/nw:network/nw:node/tet:te/"
        + "tet:tunnel-termination-point/"
        + "tet:client-layer-adaptation/tet:switching-capability/"
        + "tet:te-bandwidth/tet:technology" {
    when "../../../../../../nw:network-types/tet:te-topology/
          otnt:otn-topology" {
      description
        "Augmentation parameters apply only for networks with
         OTN topology type.";
    }
    description
      "Augment client TE bandwidth of the tunnel termination point
       (TTP)";
    case otn {
      uses l1-types:otn-link-bandwidth {
        augment "otn-bandwidth" {
          description
            "Augment OTN link bandwidth information.";
          leaf odtu-flex-type {
            type l1-types:odtu-flex-type;
            description
              "The type of Optical Data Tributary Unit (ODTU)
               whose nominal bitrate is used to compute the number of
               Tributary Slots (TS) required by the ODUflex LSPs
               terminated on this OTN Tunnel Termination Point
               (TTP).";
          }
        }
      }
    }
  }

  augment "/nw:networks/nw:network/nw:node/tet:te/"
        + "tet:tunnel-termination-point/"
        + "tet:local-link-connectivities/tet:path-constraints/"
        + "tet:te-bandwidth/tet:technology" {
    when "../../../../../../nw:network-types/tet:te-topology/
          otnt:otn-topology" {
      description
        "Augmentation parameters apply only for networks with
         OTN topology type.";
    }
    description
      "Augment TE bandwidth path constraints for the TTP
       Local Link Connectivities.";
    case otn {
      uses l1-types:otn-link-bandwidth {
        augment "otn-bandwidth" {
          description
            "Augment OTN link bandwidth information.";
          leaf odtu-flex-type {
            type l1-types:odtu-flex-type;
            description
              "The type of Optical Data Tributary Unit (ODTU)
               whose nominal bitrate is used to compute the number of
               Tributary Slots (TS) required by the ODUflex LSPs
               set up along the underlay paths of these OTN Local
               Link Connectivities.";
          }
        }
      }
    }
  }

  augment "/nw:networks/nw:network/nw:node/tet:te/"
        + "tet:tunnel-termination-point/"
        + "tet:local-link-connectivities/"
        + "tet:local-link-connectivity/tet:path-constraints/"
        + "tet:te-bandwidth/tet:technology" {
    when "../../../../../../../nw:network-types/tet:te-topology/
          otnt:otn-topology" {
      description
        "Augmentation parameters apply only for networks with
         OTN topology type.";
    }
    description
      "Augment TE bandwidth path constraints for the TTP
       Local Link Connectivity entry.";
    case otn {
      uses l1-types:otn-link-bandwidth {
        augment "otn-bandwidth" {
          description
            "Augment OTN link bandwidth information.";
          leaf odtu-flex-type {
            type l1-types:odtu-flex-type;
            description
              "The type of Optical Data Tributary Unit (ODTU)
               whose nominal bitrate is used to compute the number of
               Tributary Slots (TS) required by the ODUflex LSPs
               set up along the underlay path of this OTN Local
               Link Connectivity entry.";
          }
        }
      }
    }
  }

  augment "/nw:networks/nw:network/nt:link/tet:te/"
        + "tet:te-link-attributes/"
        + "tet:interface-switching-capability/"
        + "tet:max-lsp-bandwidth/tet:te-bandwidth/tet:technology" {
    when "../../../../../../nw:network-types/tet:te-topology/
          otnt:otn-topology" {
      description
        "Augmentation parameters apply only for networks with
         OTN topology type.";
    }
    description
      "Augment maximum LSP TE bandwidth for the TE link.";
    case otn {
      uses l1-types:otn-max-path-bandwidth {
        description
          "The odtu-flex-type attribute of the OTN Link is used
           to compute the number of Tributary Slots (TS) required
           by the ODUflex LSPs set up on this OTN Link.";
      }
    }
  }

  augment "/nw:networks/nw:network/nt:link/tet:te/"
        + "tet:te-link-attributes/"
        + "tet:max-link-bandwidth/"
        + "tet:te-bandwidth" {
    when "../../../../../nw:network-types/tet:te-topology/
          otnt:otn-topology" {
      description
        "Augmentation parameters apply only for networks with
         OTN topology type.";
    }
    description
      "Augment maximum TE bandwidth for the TE link";
    uses l1-types:otn-link-bandwidth {
      description
        "The odtu-flex-type attribute of the OTN Link is used
         to compute the number of Tributary Slots (TS) required
         by the ODUflex LSPs set up on this OTN Link.";
    }
  }

  augment "/nw:networks/nw:network/nt:link/tet:te/"
        + "tet:te-link-attributes/"
        + "tet:max-resv-link-bandwidth/"
        + "tet:te-bandwidth" {
    when "../../../../../nw:network-types/tet:te-topology/
          otnt:otn-topology" {
      description
        "Augmentation parameters apply only for networks with
         OTN topology type.";
    }
    description
      "Augment maximum reservable TE bandwidth for the TE link";
    uses l1-types:otn-link-bandwidth {
      description
        "The odtu-flex-type attribute of the OTN Link is used
         to compute the number of Tributary Slots (TS) required
         by the ODUflex LSPs set up on this OTN Link.";
    }
  }

  augment "/nw:networks/nw:network/nt:link/tet:te/"
        + "tet:te-link-attributes/"
        + "tet:unreserved-bandwidth/"
        + "tet:te-bandwidth" {
    when "../../../../../nw:network-types/tet:te-topology/
          otnt:otn-topology" {
      description
        "Augmentation parameters apply only for networks with
         OTN topology type.";
    }
    description
      "Augment unreserved TE bandwidth for the TE Link";
    uses l1-types:otn-link-bandwidth {
      description
        "The odtu-flex-type attribute of the OTN Link is used
         to compute the number of Tributary Slots (TS) required
         by the ODUflex LSPs set up on this OTN Link.";
    }
  }

  augment "/nw:networks/nw:network/nt:link/tet:te/"
        + "tet:information-source-entry/"
        + "tet:interface-switching-capability/"
        + "tet:max-lsp-bandwidth/"
        + "tet:te-bandwidth/tet:technology" {
    when "../../../../../../nw:network-types/tet:te-topology/
          otnt:otn-topology" {
      description
        "Augmentation parameters apply only for networks with
         OTN topology type.";
    }
    description
      "Augment maximum LSP TE bandwidth for the TE link
       information source";
    case otn {
      uses l1-types:otn-max-path-bandwidth {
        description
          "The odtu-flex-type attribute of the OTN Link is used
           to compute the number of Tributary Slots (TS) required
           by the ODUflex LSPs set up on this OTN Link.";
      }
    }
  }

  augment "/nw:networks/nw:network/nt:link/tet:te/"
        + "tet:information-source-entry/"
        + "tet:max-link-bandwidth/"
        + "tet:te-bandwidth" {
    when "../../../../../nw:network-types/tet:te-topology/
          otnt:otn-topology" {
      description
        "Augmentation parameters apply only for networks with
         OTN topology type.";
    }
    description
      "Augment maximum TE bandwidth for the TE link
       information source";
    uses l1-types:otn-link-bandwidth {
      description
        "The odtu-flex-type attribute of the OTN Link is used
         to compute the number of Tributary Slots (TS) required
         by the ODUflex LSPs set up on this OTN Link.";
    }
  }

  augment "/nw:networks/nw:network/nt:link/tet:te/"
        + "tet:information-source-entry/"
        + "tet:max-resv-link-bandwidth/"
        + "tet:te-bandwidth" {
    when "../../../../../nw:network-types/tet:te-topology/
          otnt:otn-topology" {
      description
        "Augmentation parameters apply only for networks with
         OTN topology type.";
    }
    description
      "Augment maximum reservable TE bandwidth for the TE link
       information-source";
    uses l1-types:otn-link-bandwidth {
      description
        "The odtu-flex-type attribute of the OTN Link is used
         to compute the number of Tributary Slots (TS) required
         by the ODUflex LSPs set up on this OTN Link.";
    }
  }

  augment "/nw:networks/nw:network/nt:link/tet:te/"
        + "tet:information-source-entry/"
        + "tet:unreserved-bandwidth/"
        + "tet:te-bandwidth" {
    when "../../../../../nw:network-types/tet:te-topology/
          otnt:otn-topology" {
      description
        "Augmentation parameters apply only for networks with
         OTN topology type.";
    }
    description
      "Augment unreserved TE bandwidth of the TE link
       information source";
    uses l1-types:otn-link-bandwidth {
      description
        "The odtu-flex-type attribute of the OTN Link is used
         to compute the number of Tributary Slots (TS) required
         by the ODUflex LSPs set up on this OTN Link.";
    }
  }

  augment "/nw:networks/tet:te/tet:templates/"
        + "tet:link-template/tet:te-link-attributes/"
        + "tet:interface-switching-capability/"
        + "tet:max-lsp-bandwidth/"
        + "tet:te-bandwidth/tet:technology" {
    description
      "Augment maximum LSP TE bandwidth of the TE link
       template";
    case otn {
      uses l1-types:otn-max-path-bandwidth {
        description
          "The odtu-flex-type attribute of the OTN Link is used
           to compute the number of Tributary Slots (TS) required
           by the ODUflex LSPs set up on the OTN Link that uses this
           Link Template.";
      }
    }
  }

  augment "/nw:networks/tet:te/tet:templates/"
        + "tet:link-template/tet:te-link-attributes/"
        + "tet:max-link-bandwidth/"
        + "tet:te-bandwidth" {
    description
      "Augment maximum TE bandwidth the TE link template";
    uses l1-types:otn-link-bandwidth {
      description
        "The odtu-flex-type attribute of the OTN Link is used
         to compute the number of Tributary Slots (TS) required
         by the ODUflex LSPs set up on the OTN Link that uses this
         Link Template.";
    }
  }

  augment "/nw:networks/tet:te/tet:templates/"
        + "tet:link-template/tet:te-link-attributes/"
        + "tet:max-resv-link-bandwidth/"
        + "tet:te-bandwidth" {
    description
      "Augment maximum reservable TE bandwidth for the TE link
       template.";
    uses l1-types:otn-link-bandwidth {
      description
        "The odtu-flex-type attribute of the OTN Link is used
         to compute the number of Tributary Slots (TS) required
         by the ODUflex LSPs set up on the OTN Link that uses this
         Link Template.";
    }
  }

  augment "/nw:networks/tet:te/tet:templates/"
        + "tet:link-template/tet:te-link-attributes/"
        + "tet:unreserved-bandwidth/"
        + "tet:te-bandwidth" {
    description
      "Augment unreserved TE bandwidth the TE link template";
    uses l1-types:otn-link-bandwidth {
      description
        "The odtu-flex-type attribute of the OTN Link is used
         to compute the number of Tributary Slots (TS) required
         by the ODUflex LSPs set up on the OTN Link that uses this
         Link Template.";
    }
  }

  /*
   * Augment TE label range information
   */

  augment "/nw:networks/nw:network/nw:node/tet:te/"
        + "tet:te-node-attributes/tet:connectivity-matrices/"
        + "tet:label-restrictions/tet:label-restriction" {
    when "../../../../../../nw:network-types/tet:te-topology/
          otnt:otn-topology" {
      description
        "Augmentation parameters apply only for networks with
         OTN topology type.";
    }
    description
      "Augment TE label range information for the TE node
       connectivity matrices.";
    uses label-range-info;
  }

  augment "/nw:networks/nw:network/nw:node/tet:te/"
        + "tet:te-node-attributes/tet:connectivity-matrices/"
        + "tet:connectivity-matrix/tet:from/"
        + "tet:label-restrictions/tet:label-restriction" {
    when "../../../../../../../../nw:network-types/
          tet:te-topology/otnt:otn-topology" {
      description
        "Augmentation parameters apply only for networks with
         OTN topology type.";
    }
    description
      "Augment TE label range information for the source LTP
       of the connectivity matrix entry.";
    uses label-range-info;
  }

  augment "/nw:networks/nw:network/nw:node/tet:te/"
        + "tet:te-node-attributes/tet:connectivity-matrices/"
        + "tet:connectivity-matrix/tet:to/"
        + "tet:label-restrictions/tet:label-restriction" {
    when "../../../../../../../../nw:network-types/
          tet:te-topology/otnt:otn-topology" {
      description
        "Augmentation parameters apply only for networks with
         OTN topology type.";
    }
    description
      "Augment TE label range information for the destination LTP
       of the connectivity matrix entry.";
    uses label-range-info;
  }

  augment "/nw:networks/nw:network/nw:node/tet:te/"
        + "tet:information-source-entry/"
        + "tet:connectivity-matrices/tet:label-restrictions/"
        + "tet:label-restriction" {
    when "../../../../../../nw:network-types/tet:te-topology/
          otnt:otn-topology" {
      description
        "Augmentation parameters apply only for networks with
         OTN topology type.";
    }
    description
      "Augment TE label range information for the TE node
       connectivity matrices information source.";
    uses label-range-info;
  }

  augment "/nw:networks/nw:network/nw:node/tet:te/"
        + "tet:information-source-entry/tet:connectivity-matrices/"
        + "tet:connectivity-matrix/"
        + "tet:from/tet:label-restrictions/tet:label-restriction" {
    when "../../../../../../../../nw:network-types/
          tet:te-topology/otnt:otn-topology" {
      description
        "Augmentation parameters apply only for networks with
         OTN topology type.";
    }
    description
      "Augment TE label range information for the source LTP
       of the connectivity matrix entry information source.";
    uses label-range-info;
  }

  augment "/nw:networks/nw:network/nw:node/tet:te/"
        + "tet:information-source-entry/tet:connectivity-matrices/"
        + "tet:connectivity-matrix/"
        + "tet:to/tet:label-restrictions/tet:label-restriction" {
    when "../../../../../../../../nw:network-types/
          tet:te-topology/otnt:otn-topology" {
      description
        "Augmentation parameters apply only for networks with
         OTN topology type.";
    }
    description
      "Augment TE label range information for the destination LTP
       of the connectivity matrix entry information source.";
    uses label-range-info;
  }

  augment "/nw:networks/nw:network/nw:node/tet:te/"
        + "tet:tunnel-termination-point/"
        + "tet:local-link-connectivities/"
        + "tet:label-restrictions/tet:label-restriction" {
    when "../../../../../../nw:network-types/tet:te-topology/
          otnt:otn-topology" {
      description
        "Augmentation parameters apply only for networks with
         OTN topology type.";
    }
    description
      "Augment TE label range information for the TTP
       Local Link Connectivities.";
    uses label-range-info;
  }

  augment "/nw:networks/nw:network/nw:node/tet:te/"
        + "tet:tunnel-termination-point/"
        + "tet:local-link-connectivities/"
        + "tet:local-link-connectivity/"
        + "tet:label-restrictions/tet:label-restriction" {
    when "../../../../../../../nw:network-types/tet:te-topology/
          otnt:otn-topology" {
      description
        "Augmentation parameters apply only for networks with
         OTN topology type.";
    }
    description
      "Augment TE label range information for the TTP
       Local Link Connectivity entry.";
    uses label-range-info;
  }

  augment "/nw:networks/nw:network/nt:link/tet:te/"
        + "tet:te-link-attributes/"
        + "tet:label-restrictions/tet:label-restriction" {
    when "../../../../../nw:network-types/tet:te-topology/
          otnt:otn-topology" {
      description
        "Augmentation parameters apply only for networks with
         OTN topology type.";
    }
    description
      "Augment TE label range information for the TE link.";
    uses label-range-info;
  }

  augment "/nw:networks/nw:network/nt:link/tet:te/"
        + "tet:information-source-entry/"
        + "tet:label-restrictions/tet:label-restriction" {
    when "../../../../../nw:network-types/tet:te-topology/
          otnt:otn-topology" {
      description
        "Augmentation parameters apply only for networks with
         OTN topology type.";
    }
    description
      "Augment TE label range information for the TE link
       information source.";
    uses label-range-info;
  }

  augment "/nw:networks/tet:te/tet:templates/"
        + "tet:link-template/tet:te-link-attributes/"
        + "tet:label-restrictions/tet:label-restriction" {
    description
      "Augment TE label range information for the TE link template.";
    uses label-range-info;
  }

  /*
   * Augment TE label
   */

  augment "/nw:networks/nw:network/nw:node/tet:te/"
        + "tet:te-node-attributes/tet:connectivity-matrices/"
        + "tet:label-restrictions/tet:label-restriction/"
        + "tet:label-start/"
        + "tet:te-label/tet:technology" {
    when "../../../../../../../../nw:network-types/
          tet:te-topology/otnt:otn-topology" {
      description
        "Augmentation parameters apply only for networks with
         OTN topology type.";
    }
    description
      "Augment TE label range start for the TE node
       connectivity matrices";
    case otn {
      uses l1-types:otn-label-start-end;
    }
  }

  augment "/nw:networks/nw:network/nw:node/tet:te/"
        + "tet:te-node-attributes/tet:connectivity-matrices/"
        + "tet:label-restrictions/"
        + "tet:label-restriction/tet:label-end/"
        + "tet:te-label/tet:technology" {
    when "../../../../../../../../nw:network-types/
          tet:te-topology/otnt:otn-topology" {
      description
        "Augmentation parameters apply only for networks with
         OTN topology type.";
    }
    description
      "Augment TE label range end for the TE node
       connectivity matrices";
    case otn {
      uses l1-types:otn-label-start-end;
    }
  }

  augment "/nw:networks/nw:network/nw:node/tet:te/"
        + "tet:te-node-attributes/tet:connectivity-matrices/"
        + "tet:label-restrictions/"
        + "tet:label-restriction/tet:label-step/"
        + "tet:technology" {
    when "../../../../../../../nw:network-types/tet:te-topology/
          otnt:otn-topology" {
      description
        "Augmentation parameters apply only for networks with
         OTN topology type.";
    }
    description
      "Augment TE label range step for the TE node
       connectivity matrices";
    case otn {
      uses l1-types:otn-label-step;
    }
  }

  augment "/nw:networks/nw:network/nw:node/tet:te/"
        + "tet:te-node-attributes/tet:connectivity-matrices/"
        + "tet:underlay/tet:primary-path/tet:path-element/"
        + "tet:type/tet:label/tet:label-hop/"
        + "tet:te-label/tet:technology" {
    when "../../../../../../../../../
          nw:network-types/tet:te-topology/
          otnt:otn-topology" {
      description
        "Augmentation parameters apply only for networks with
         OTN topology type.";
    }
    description
      "Augment TE label hop for the underlay primary path of the
       TE node connectivity matrices";
    case otn {
      uses l1-types:otn-label-hop;
    }
  }

  augment "/nw:networks/nw:network/nw:node/tet:te/"
        + "tet:te-node-attributes/tet:connectivity-matrices/"
        + "tet:underlay/tet:backup-path/tet:path-element/"
        + "tet:type/tet:label/tet:label-hop/"
        + "tet:te-label/tet:technology" {
    when "../../../../../../../../../
          nw:network-types/tet:te-topology/
          otnt:otn-topology" {
      description
        "Augmentation parameters apply only for networks with
         OTN topology type.";
    }
    description
      "Augment TE label hop for the underlay backup path of the
       TE node connectivity matrices";
    case otn {
      uses l1-types:otn-label-hop;
    }
  }

  augment "/nw:networks/nw:network/nw:node/tet:te/"
        + "tet:te-node-attributes/tet:connectivity-matrices/"
        + "tet:optimizations/tet:algorithm/tet:metric/"
        + "tet:optimization-metric/"
        + "tet:explicit-route-exclude-objects/"
        + "tet:route-object-exclude-object/"
        + "tet:type/tet:label/tet:label-hop/"
        + "tet:te-label/tet:technology" {
    when "../../../../../../../../../../
          nw:network-types/tet:te-topology/
          otnt:otn-topology" {
      description
        "Augmentation parameters apply only for networks with
         OTN topology type.";
    }
    description
      "Augment TE label hop for the explicit route objects excluded
       by the path computation of the TE node connectivity
       matrices";
    case otn {
      uses l1-types:otn-label-hop;
    }
  }

  augment "/nw:networks/nw:network/nw:node/tet:te/"
        + "tet:te-node-attributes/tet:connectivity-matrices/"
        + "tet:optimizations/tet:algorithm/tet:metric/"
        + "tet:optimization-metric/"
        + "tet:explicit-route-include-objects/"
        + "tet:route-object-include-object/"
        + "tet:type/tet:label/tet:label-hop/"
        + "tet:te-label/tet:technology" {
    when "../../../../../../../../../../
          nw:network-types/tet:te-topology/
          otnt:otn-topology" {
      description
        "Augmentation parameters apply only for networks with
         OTN topology type.";
    }
    description
      "Augment TE label hop for the explicit route objects included
       by the path computation of the TE node connectivity
       matrices";
    case otn {
      uses l1-types:otn-label-hop;
    }
  }

  augment "/nw:networks/nw:network/nw:node/tet:te/"
        + "tet:te-node-attributes/tet:connectivity-matrices/"
        + "tet:path-properties/tet:path-route-objects/"
        + "tet:path-route-object/tet:type/tet:label/tet:label-hop/"
        + "tet:te-label/tet:technology" {
    when "../../../../../../../../../
          nw:network-types/tet:te-topology/
          otnt:otn-topology" {
      description
        "Augmentation parameters apply only for networks with
         OTN topology type.";
    }
    description
      "Augment TE label hop for the computed path route objects
       of the TE node connectivity matrices";
    case otn {
      uses l1-types:otn-label-hop;
    }
  }

  augment "/nw:networks/nw:network/nw:node/tet:te/"
        + "tet:te-node-attributes/tet:connectivity-matrices/"
        + "tet:connectivity-matrix/tet:from/"
        + "tet:label-restrictions/tet:label-restriction/"
        + "tet:label-start/"
        + "tet:te-label/tet:technology" {
    when "../../../../../../../../../../
          nw:network-types/tet:te-topology/
          otnt:otn-topology" {
      description
        "Augmentation parameters apply only for networks with
         OTN topology type.";
    }
    description
      "Augment TE label range start for the source LTP
       of the connectivity matrix entry.";
    case otn {
      uses l1-types:otn-label-start-end;
    }
  }

  augment "/nw:networks/nw:network/nw:node/tet:te/"
        + "tet:te-node-attributes/tet:connectivity-matrices/"
        + "tet:connectivity-matrix/tet:from/"
        + "tet:label-restrictions/tet:label-restriction/"
        + "tet:label-end/"
        + "tet:te-label/tet:technology" {
    when "../../../../../../../../../../
          nw:network-types/tet:te-topology/
          otnt:otn-topology" {
      description
        "Augmentation parameters apply only for networks with
         OTN topology type.";
    }
    description
      "Augment TE label range end for the source LTP
       of the connectivity matrix entry.";
    case otn {
      uses l1-types:otn-label-start-end;
    }
  }

  augment "/nw:networks/nw:network/nw:node/tet:te/"
        + "tet:te-node-attributes/tet:connectivity-matrices/"
        + "tet:connectivity-matrix/tet:from/"
        + "tet:label-restrictions/tet:label-restriction/"
        + "tet:label-step/"
        + "tet:technology" {
    when "../../../../../../../../../
          nw:network-types/tet:te-topology/
          otnt:otn-topology" {
      description
        "Augmentation parameters apply only for networks with
         OTN topology type.";
    }
    description
      "Augment TE label range step for the source LTP
       of the connectivity matrix entry.";
    case otn {
      uses l1-types:otn-label-step;
    }
  }

  augment "/nw:networks/nw:network/nw:node/tet:te/"
        + "tet:te-node-attributes/tet:connectivity-matrices/"
        + "tet:connectivity-matrix/tet:to/"
        + "tet:label-restrictions/tet:label-restriction/"
        + "tet:label-start/"
        + "tet:te-label/tet:technology" {
    when "../../../../../../../../../../
          nw:network-types/tet:te-topology/
          otnt:otn-topology" {
      description
        "Augmentation parameters apply only for networks with
         OTN topology type.";
    }
    description
      "Augment TE label range start for the destination LTP
       of the connectivity matrix entry.";
    case otn {
      uses l1-types:otn-label-start-end;
    }
  }

  augment "/nw:networks/nw:network/nw:node/tet:te/"
        + "tet:te-node-attributes/tet:connectivity-matrices/"
        + "tet:connectivity-matrix/tet:to/"
        + "tet:label-restrictions/tet:label-restriction/"
        + "tet:label-end/"
        + "tet:te-label/tet:technology" {
    when "../../../../../../../../../../
          nw:network-types/tet:te-topology/
          otnt:otn-topology" {
      description
        "Augmentation parameters apply only for networks with
         OTN topology type.";
    }
    description
      "Augment TE label range end for the destination LTP
       of the connectivity matrix entry.";
    case otn {
      uses l1-types:otn-label-start-end;
    }
  }

  augment "/nw:networks/nw:network/nw:node/tet:te/"
        + "tet:te-node-attributes/tet:connectivity-matrices/"
        + "tet:connectivity-matrix/tet:to/"
        + "tet:label-restrictions/tet:label-restriction/"
        + "tet:label-step/"
        + "tet:technology" {
    when "../../../../../../../../../
          nw:network-types/tet:te-topology/
          otnt:otn-topology" {
      description
        "Augmentation parameters apply only for networks with
         OTN topology type.";
    }
    description
      "Augment TE label range step for the destination LTP
       of the connectivity matrix entry.";
    case otn {
      uses l1-types:otn-label-step;
    }
  }

  augment "/nw:networks/nw:network/nw:node/tet:te/"
        + "tet:te-node-attributes/tet:connectivity-matrices/"
        + "tet:connectivity-matrix/"
        + "tet:underlay/tet:primary-path/tet:path-element/"
        + "tet:type/tet:label/tet:label-hop/"
        + "tet:te-label/tet:technology" {
    when "../../../../../../../../../../
          nw:network-types/tet:te-topology/
          otnt:otn-topology" {
      description
        "Augmentation parameters apply only for networks with
         OTN topology type.";
    }
    description
      "Augment TE label hop for the underlay primary path
       of the connectivity matrix entry.";
    case otn {
      uses l1-types:otn-label-hop;
    }
  }

  augment "/nw:networks/nw:network/nw:node/tet:te/"
        + "tet:te-node-attributes/tet:connectivity-matrices/"
        + "tet:connectivity-matrix/"
        + "tet:underlay/tet:backup-path/tet:path-element/"
        + "tet:type/tet:label/tet:label-hop/"
        + "tet:te-label/tet:technology" {
    when "../../../../../../../../../../
          nw:network-types/tet:te-topology/
          otnt:otn-topology" {
      description
        "Augmentation parameters apply only for networks with
         OTN topology type.";
    }
    description
      "Augment TE label hop for the underlay backup path
       of the connectivity matrix entry.";
    case otn {
      uses l1-types:otn-label-hop;
    }
  }

  augment "/nw:networks/nw:network/nw:node/tet:te/"
        + "tet:te-node-attributes/tet:connectivity-matrices/"
        + "tet:connectivity-matrix/tet:optimizations/"
        + "tet:algorithm/tet:metric/tet:optimization-metric/"
        + "tet:explicit-route-exclude-objects/"
        + "tet:route-object-exclude-object/tet:type/"
        + "tet:label/tet:label-hop/tet:te-label/tet:technology" {
    when "../../../../../../../../../../../
          nw:network-types/tet:te-topology/
          otnt:otn-topology" {
      description
        "Augmentation parameters apply only for networks with
         OTN topology type.";
    }
    description
      "Augment TE label hop for the explicit route objects excluded
       by the path computation of the connectivity matrix entry.";
    case otn {
      uses l1-types:otn-label-hop;
    }
  }

  augment "/nw:networks/nw:network/nw:node/tet:te/"
        + "tet:te-node-attributes/tet:connectivity-matrices/"
        + "tet:connectivity-matrix/tet:optimizations/"
        + "tet:algorithm/tet:metric/tet:optimization-metric/"
        + "tet:explicit-route-include-objects/"
        + "tet:route-object-include-object/tet:type/"
        + "tet:label/tet:label-hop/tet:te-label/tet:technology" {
    when "../../../../../../../../../../../
          nw:network-types/tet:te-topology/
          otnt:otn-topology" {
      description
        "Augmentation parameters apply only for networks with
         OTN topology type.";
    }
    description
      "Augment TE label hop for the explicit route objects included
       by the path computation of the connectivity matrix entry.";
    case otn {
      uses l1-types:otn-label-hop;
    }
  }

  augment "/nw:networks/nw:network/nw:node/tet:te/"
        + "tet:te-node-attributes/tet:connectivity-matrices/"
        + "tet:connectivity-matrix/"
        + "tet:path-properties/tet:path-route-objects/"
        + "tet:path-route-object/tet:type/"
        + "tet:label/tet:label-hop/tet:te-label/tet:technology" {
    when "../../../../../../../../../../
          nw:network-types/tet:te-topology/
          otnt:otn-topology" {
      description
        "Augmentation parameters apply only for networks with
         OTN topology type.";
    }
    description
      "Augment TE label hop for the computed path route objects
       of the connectivity matrix entry.";
    case otn {
      uses l1-types:otn-label-hop;
    }
  }

  augment "/nw:networks/nw:network/nw:node/tet:te/"
        + "tet:information-source-entry/"
        + "tet:connectivity-matrices/tet:label-restrictions/"
        + "tet:label-restriction/"
        + "tet:label-start/tet:te-label/tet:technology" {
    when "../../../../../../../../
          nw:network-types/tet:te-topology/
          otnt:otn-topology" {
      description
        "Augmentation parameters apply only for networks with
         OTN topology type.";
    }
    description
      "Augment TE label range start for the TE node connectivity
       matrices information source.";
    case otn {
      uses l1-types:otn-label-start-end;
    }
  }

  augment "/nw:networks/nw:network/nw:node/tet:te/"
        + "tet:information-source-entry/"
        + "tet:connectivity-matrices/tet:label-restrictions/"
        + "tet:label-restriction/"
        + "tet:label-end/tet:te-label/tet:technology" {
    when "../../../../../../../../
          nw:network-types/tet:te-topology/
          otnt:otn-topology" {
      description
        "Augmentation parameters apply only for networks with
         OTN topology type.";
    }
    description
      "Augment TE label range end for the TE node connectivity
       matrices information source.";
    case otn {
      uses l1-types:otn-label-start-end;
    }
  }

  augment "/nw:networks/nw:network/nw:node/tet:te/"
        + "tet:information-source-entry/"
        + "tet:connectivity-matrices/tet:label-restrictions/"
        + "tet:label-restriction/"
        + "tet:label-step/tet:technology" {
    when "../../../../../../../
          nw:network-types/tet:te-topology/
          otnt:otn-topology" {
      description
        "Augmentation parameters apply only for networks with
         OTN topology type.";
    }
    description
      "Augment TE label range step for the TE node connectivity
       matrices information source.";
    case otn {
      uses l1-types:otn-label-step;
    }
  }

  augment "/nw:networks/nw:network/nw:node/tet:te/"
        + "tet:information-source-entry/tet:connectivity-matrices/"
        + "tet:underlay/tet:primary-path/tet:path-element/"
        + "tet:type/tet:label/tet:label-hop/tet:te-label/"
        + "tet:technology" {
    when "../../../../../../../../../
          nw:network-types/tet:te-topology/
          otnt:otn-topology" {
      description
        "Augmentation parameters apply only for networks with
         OTN topology type.";
    }
    description
      "Augment TE label hop for the underlay primary path
       of the TE node connectivity matrices of the information
       source entry.";
    case otn {
      uses l1-types:otn-label-hop;
    }
  }

  augment "/nw:networks/nw:network/nw:node/tet:te/"
        + "tet:information-source-entry/tet:connectivity-matrices/"
        + "tet:underlay/tet:backup-path/tet:path-element/tet:type/"
        + "tet:label/tet:label-hop/tet:te-label/tet:technology" {
    when "../../../../../../../../../
          nw:network-types/tet:te-topology/
          otnt:otn-topology" {
      description
        "Augmentation parameters apply only for networks with
         OTN topology type.";
    }
    description
      "Augment TE label hop for the underlay backup path
       of the TE node connectivity matrices of the information
       source entry.";
    case otn {
      uses l1-types:otn-label-hop;
    }
  }

  augment "/nw:networks/nw:network/nw:node/tet:te/"
        + "tet:information-source-entry/tet:connectivity-matrices/"
        + "tet:optimizations/tet:algorithm/tet:metric/"
        + "tet:optimization-metric/"
        + "tet:explicit-route-exclude-objects/"
        + "tet:route-object-exclude-object/tet:type/"
        + "tet:label/tet:label-hop/tet:te-label/tet:technology" {
    when "../../../../../../../../../../
          nw:network-types/tet:te-topology/
          otnt:otn-topology" {
      description
        "Augmentation parameters apply only for networks with
         OTN topology type.";
    }
    description
      "Augment TE label hop for the explicit route objects excluded
       by the path computation of the TE node connectivity matrices
       information source.";
    case otn {
      uses l1-types:otn-label-hop;
    }
  }

  augment "/nw:networks/nw:network/nw:node/tet:te/"
        + "tet:information-source-entry/tet:connectivity-matrices/"
        + "tet:optimizations/tet:algorithm/tet:metric/"
        + "tet:optimization-metric/"
        + "tet:explicit-route-include-objects/"
        + "tet:route-object-include-object/tet:type/"
        + "tet:label/tet:label-hop/tet:te-label/tet:technology" {
    when "../../../../../../../../../../
          nw:network-types/tet:te-topology/
          otnt:otn-topology" {
      description
        "Augmentation parameters apply only for networks with
         OTN topology type.";
    }
    description
      "Augment TE label hop for the explicit route objects included
       by the path computation of the TE node connectivity matrices
       information source.";
    case otn {
      uses l1-types:otn-label-hop;
    }
  }

  augment "/nw:networks/nw:network/nw:node/tet:te/"
        + "tet:information-source-entry/tet:connectivity-matrices/"
        + "tet:path-properties/tet:path-route-objects/"
        + "tet:path-route-object/tet:type/"
        + "tet:label/tet:label-hop/tet:te-label/tet:technology" {
    when "../../../../../../../../../
          nw:network-types/tet:te-topology/
          otnt:otn-topology" {
      description
        "Augmentation parameters apply only for networks with
         OTN topology type.";
    }
    description
      "Augment TE label hop for the computed path route objects
       of the TE node connectivity matrices information source.";
    case otn {
      uses l1-types:otn-label-hop;
    }
  }

  augment "/nw:networks/nw:network/nw:node/tet:te/"
        + "tet:information-source-entry/tet:connectivity-matrices/"
        + "tet:connectivity-matrix/"
        + "tet:from/tet:label-restrictions/"
        + "tet:label-restriction/"
        + "tet:label-start/tet:te-label/tet:technology" {
    when "../../../../../../../../../../
          nw:network-types/tet:te-topology/
          otnt:otn-topology" {
      description
        "Augmentation parameters apply only for networks with
         OTN topology type.";
    }
    description
      "Augment TE label range start for the source LTP
       of the connectivity matrix entry information source.";
    case otn {
      uses l1-types:otn-label-start-end;
    }
  }

  augment "/nw:networks/nw:network/nw:node/tet:te/"
        + "tet:information-source-entry/tet:connectivity-matrices/"
        + "tet:connectivity-matrix/"
        + "tet:from/tet:label-restrictions/"
        + "tet:label-restriction/"
        + "tet:label-end/tet:te-label/tet:technology" {
    when "../../../../../../../../../../
          nw:network-types/tet:te-topology/
          otnt:otn-topology" {
      description
        "Augmentation parameters apply only for networks with
         OTN topology type.";
    }
    description
      "Augment TE label range end for the source LTP
       of the connectivity matrix entry information source.";
    case otn {
      uses l1-types:otn-label-start-end;
    }
  }

  augment "/nw:networks/nw:network/nw:node/tet:te/"
        + "tet:information-source-entry/tet:connectivity-matrices/"
        + "tet:connectivity-matrix/"
        + "tet:from/tet:label-restrictions/"
        + "tet:label-restriction/"
        + "tet:label-step/tet:technology" {
    when "../../../../../../../../../
          nw:network-types/tet:te-topology/
          otnt:otn-topology" {
      description
        "Augmentation parameters apply only for networks with
         OTN topology type.";
    }
    description
      "Augment TE label range step for the source LTP
       of the connectivity matrix entry information source.";
    case otn {
      uses l1-types:otn-label-step;
    }
  }

  augment "/nw:networks/nw:network/nw:node/tet:te/"
        + "tet:information-source-entry/tet:connectivity-matrices/"
        + "tet:connectivity-matrix/"
        + "tet:to/tet:label-restrictions/tet:label-restriction/"
        + "tet:label-start/tet:te-label/tet:technology" {
    when "../../../../../../../../../../
          nw:network-types/tet:te-topology/
          otnt:otn-topology" {
      description
        "Augmentation parameters apply only for networks with
         OTN topology type.";
    }
    description
      "Augment TE label range start for the destination LTP
       of the connectivity matrix entry information source.";
    case otn {
      uses l1-types:otn-label-start-end;
    }
  }

  augment "/nw:networks/nw:network/nw:node/tet:te/"
        + "tet:information-source-entry/tet:connectivity-matrices/"
        + "tet:connectivity-matrix/"
        + "tet:to/tet:label-restrictions/tet:label-restriction/"
        + "tet:label-end/tet:te-label/tet:technology" {
    when "../../../../../../../../../../
          nw:network-types/tet:te-topology/
          otnt:otn-topology" {
      description
        "Augmentation parameters apply only for networks with
         OTN topology type.";
    }
    description
      "Augment TE label range end for the destination LTP
       of the connectivity matrix entry information source.";
    case otn {
      uses l1-types:otn-label-start-end;
    }
  }

  augment "/nw:networks/nw:network/nw:node/tet:te/"
        + "tet:information-source-entry/tet:connectivity-matrices/"
        + "tet:connectivity-matrix/"
        + "tet:to/tet:label-restrictions/tet:label-restriction/"
        + "tet:label-step/tet:technology" {
    when "../../../../../../../../../
          nw:network-types/tet:te-topology/
          otnt:otn-topology" {
      description
        "Augmentation parameters apply only for networks with
         OTN topology type.";
    }
    description
      "Augment TE label range step for the destination LTP
       of the connectivity matrix entry information source.";
    case otn {
      uses l1-types:otn-label-step;
    }
  }

  augment "/nw:networks/nw:network/nw:node/tet:te/"
        + "tet:information-source-entry/tet:connectivity-matrices/"
        + "tet:connectivity-matrix/"
        + "tet:underlay/tet:primary-path/tet:path-element/"
        + "tet:type/tet:label/tet:label-hop/tet:te-label/"
        + "tet:technology" {
    when "../../../../../../../../../../
          nw:network-types/tet:te-topology/
          otnt:otn-topology" {
      description
        "Augmentation parameters apply only for networks with
         OTN topology type.";
    }
    description
      "Augment TE label hop for the underlay primary path
       of the connectivity matrix entry information source.";
    case otn {
      uses l1-types:otn-label-hop;
    }
  }

  augment "/nw:networks/nw:network/nw:node/tet:te/"
        + "tet:information-source-entry/tet:connectivity-matrices/"
        + "tet:connectivity-matrix/"
        + "tet:underlay/tet:backup-path/tet:path-element/tet:type/"
        + "tet:label/tet:label-hop/tet:te-label/tet:technology" {
    when "../../../../../../../../../../
          nw:network-types/tet:te-topology/
          otnt:otn-topology" {
      description
        "Augmentation parameters apply only for networks with
         OTN topology type.";
    }
    description
      "Augment TE label hop for the underlay backup path
       of the connectivity matrix entry information source.";
    case otn {
      uses l1-types:otn-label-hop;
    }
  }

  augment "/nw:networks/nw:network/nw:node/tet:te/"
        + "tet:information-source-entry/tet:connectivity-matrices/"
        + "tet:connectivity-matrix/"
        + "tet:optimizations/tet:algorithm/tet:metric/"
        + "tet:optimization-metric/"
        + "tet:explicit-route-exclude-objects/"
        + "tet:route-object-exclude-object/tet:type/"
        + "tet:label/tet:label-hop/tet:te-label/tet:technology" {
    when "../../../../../../../../../../../
          nw:network-types/tet:te-topology/
          otnt:otn-topology" {
      description
        "Augmentation parameters apply only for networks with
         OTN topology type.";
    }
    description
      "Augment TE label hop for the explicit route objects excluded
       by the path computation of the connectivity matrix entry
       information source.";
    case otn {
      uses l1-types:otn-label-hop;
    }
  }

  augment "/nw:networks/nw:network/nw:node/tet:te/"
        + "tet:information-source-entry/tet:connectivity-matrices/"
        + "tet:connectivity-matrix/"
        + "tet:optimizations/tet:algorithm/tet:metric/"
        + "tet:optimization-metric/"
        + "tet:explicit-route-include-objects/"
        + "tet:route-object-include-object/tet:type/"
        + "tet:label/tet:label-hop/tet:te-label/tet:technology" {
    when "../../../../../../../../../../../
          nw:network-types/tet:te-topology/
          otnt:otn-topology" {
      description
        "Augmentation parameters apply only for networks with
         OTN topology type.";
    }
    description
      "Augment TE label hop for the explicit route objects included
       by the path computation of the connectivity matrix entry
       information source.";
    case otn {
      uses l1-types:otn-label-hop;
    }
  }

  augment "/nw:networks/nw:network/nw:node/tet:te/"
        + "tet:information-source-entry/tet:connectivity-matrices/"
        + "tet:connectivity-matrix/"
        + "tet:path-properties/tet:path-route-objects/"
        + "tet:path-route-object/tet:type/"
        + "tet:label/tet:label-hop/tet:te-label/tet:technology" {
    when "../../../../../../../../../../
          nw:network-types/tet:te-topology/
          otnt:otn-topology" {
      description
        "Augmentation parameters apply only for networks with
         OTN topology type.";
    }
    description
      "Augment TE label hop for the computed path route objects
       of the connectivity matrix entry information source.";
    case otn {
      uses l1-types:otn-label-hop;
    }
  }

  augment "/nw:networks/nw:network/nw:node/tet:te/"
        + "tet:tunnel-termination-point/"
        + "tet:local-link-connectivities/"
        + "tet:label-restrictions/tet:label-restriction/"
        + "tet:label-start/"
        + "tet:te-label/tet:technology" {
    when "../../../../../../../../
          nw:network-types/tet:te-topology/
          otnt:otn-topology" {
      description
        "Augmentation parameters apply only for networks with
         OTN topology type.";
    }
    description
      "Augment TE label range start for the TTP
       Local Link Connectivities.";
    case otn {
      uses l1-types:otn-label-start-end;
    }
  }

  augment "/nw:networks/nw:network/nw:node/tet:te/"
        + "tet:tunnel-termination-point/"
        + "tet:local-link-connectivities/"
        + "tet:label-restrictions/tet:label-restriction/"
        + "tet:label-end/"
        + "tet:te-label/tet:technology" {
    when "../../../../../../../../
          nw:network-types/tet:te-topology/
          otnt:otn-topology" {
      description
        "Augmentation parameters apply only for networks with
         OTN topology type.";
    }
    description
      "Augment TE label range end for the TTP
       Local Link Connectivities.";
    case otn {
      uses l1-types:otn-label-start-end;
    }
  }

  augment "/nw:networks/nw:network/nw:node/tet:te/"
        + "tet:tunnel-termination-point/"
        + "tet:local-link-connectivities/"
        + "tet:label-restrictions/tet:label-restriction/"
        + "tet:label-step/"
        + "tet:technology" {
    when "../../../../../../../
          nw:network-types/tet:te-topology/
          otnt:otn-topology" {
      description
        "Augmentation parameters apply only for networks with
         OTN topology type.";
    }
    description
      "Augment TE label range step for the TTP
       Local Link Connectivities.";
    case otn {
      uses l1-types:otn-label-step;
    }
  }

  augment "/nw:networks/nw:network/nw:node/tet:te/"
        + "tet:tunnel-termination-point/"
        + "tet:local-link-connectivities/"
        + "tet:underlay/tet:primary-path/tet:path-element/"
        + "tet:type/tet:label/tet:label-hop/tet:te-label/"
        + "tet:technology" {
    when "../../../../../../../../../
          nw:network-types/tet:te-topology/
          otnt:otn-topology" {
      description
        "Augmentation parameters apply only for networks with
         OTN topology type.";
    }
    description
      "Augment TE label hop for the underlay primary path
       of the TTP Local Link Connectivities.";
    case otn {
      uses l1-types:otn-label-hop;
    }
  }

  augment "/nw:networks/nw:network/nw:node/tet:te/"
        + "tet:tunnel-termination-point/"
        + "tet:local-link-connectivities/"
        + "tet:underlay/tet:backup-path/tet:path-element/tet:type/"
        + "tet:label/tet:label-hop/tet:te-label/tet:technology" {
    when "../../../../../../../../../
          nw:network-types/tet:te-topology/
          otnt:otn-topology" {
      description
        "Augmentation parameters apply only for networks with
         OTN topology type.";
    }
    description
      "Augment TE label hop for the underlay backup path
       of the TTP Local Link Connectivities.";
    case otn {
      uses l1-types:otn-label-hop;
    }
  }

  augment "/nw:networks/nw:network/nw:node/tet:te/"
        + "tet:tunnel-termination-point/"
        + "tet:local-link-connectivities/"
        + "tet:optimizations/tet:algorithm/tet:metric/"
        + "tet:optimization-metric/"
        + "tet:explicit-route-exclude-objects/"
        + "tet:route-object-exclude-object/tet:type/"
        + "tet:label/tet:label-hop/tet:te-label/tet:technology" {
    when "../../../../../../../../../../
          nw:network-types/tet:te-topology/
          otnt:otn-topology" {
      description
        "Augmentation parameters apply only for networks with
         OTN topology type.";
    }
    description
      "Augment TE label hop for the explicit route objects excluded
       by the path computation of the TTP Local Link
       Connectivities.";
    case otn {
      uses l1-types:otn-label-hop;
    }
  }

  augment "/nw:networks/nw:network/nw:node/tet:te/"
        + "tet:tunnel-termination-point/"
        + "tet:local-link-connectivities/"
        + "tet:optimizations/tet:algorithm/tet:metric/"
        + "tet:optimization-metric/"
        + "tet:explicit-route-include-objects/"
        + "tet:route-object-include-object/tet:type/"
        + "tet:label/tet:label-hop/tet:te-label/tet:technology" {
    when "../../../../../../../../../../
          nw:network-types/tet:te-topology/
          otnt:otn-topology" {
      description
        "Augmentation parameters apply only for networks with
         OTN topology type.";
    }
    description
      "Augment TE label hop for the explicit route objects included
       by the path computation of the TTP Local Link
       Connectivities.";
    case otn {
      uses l1-types:otn-label-hop;
    }
  }

  augment "/nw:networks/nw:network/nw:node/tet:te/"
        + "tet:tunnel-termination-point/"
        + "tet:local-link-connectivities/"
        + "tet:path-properties/tet:path-route-objects/"
        + "tet:path-route-object/tet:type/"
        + "tet:label/tet:label-hop/tet:te-label/tet:technology" {
    when "../../../../../../../../../
          nw:network-types/tet:te-topology/
          otnt:otn-topology" {
      description
        "Augmentation parameters apply only for networks with
         OTN topology type.";
    }
    description
      "Augment TE label hop for the computed path route objects
       of the TTP Local Link Connectivities.";
    case otn {
      uses l1-types:otn-label-hop;
    }
  }

  augment "/nw:networks/nw:network/nw:node/tet:te/"
        + "tet:tunnel-termination-point/"
        + "tet:local-link-connectivities/"
        + "tet:local-link-connectivity/"
        + "tet:label-restrictions/tet:label-restriction/"
        + "tet:label-start/tet:te-label/tet:technology" {
    when "../../../../../../../../../
          nw:network-types/tet:te-topology/
          otnt:otn-topology" {
      description
        "Augmentation parameters apply only for networks with
         OTN topology type.";
    }
    description
      "Augment TE label range start for the TTP
       Local Link Connectivity entry.";
    case otn {
      uses l1-types:otn-label-start-end;
    }
  }

  augment "/nw:networks/nw:network/nw:node/tet:te/"
        + "tet:tunnel-termination-point/"
        + "tet:local-link-connectivities/"
        + "tet:local-link-connectivity/"
        + "tet:label-restrictions/tet:label-restriction/"
        + "tet:label-end/tet:te-label/tet:technology" {
    when "../../../../../../../../../
          nw:network-types/tet:te-topology/
          otnt:otn-topology" {
      description
        "Augmentation parameters apply only for networks with
         OTN topology type.";
    }
    description
      "Augment TE label range end for the TTP
       Local Link Connectivity entry.";
    case otn {
      uses l1-types:otn-label-start-end;
    }
  }

  augment "/nw:networks/nw:network/nw:node/tet:te/"
        + "tet:tunnel-termination-point/"
        + "tet:local-link-connectivities/"
        + "tet:local-link-connectivity/"
        + "tet:label-restrictions/tet:label-restriction/"
        + "tet:label-step/tet:technology" {
    when "../../../../../../../../
          nw:network-types/tet:te-topology/
          otnt:otn-topology" {
      description
        "Augmentation parameters apply only for networks with
         OTN topology type.";
    }
    description
      "Augment TE label range step for the TTP
       Local Link Connectivity entry.";
    case otn {
      uses l1-types:otn-label-step;
    }
  }

  augment "/nw:networks/nw:network/nw:node/tet:te/"
        + "tet:tunnel-termination-point/"
        + "tet:local-link-connectivities/"
        + "tet:local-link-connectivity/"
        + "tet:underlay/tet:primary-path/tet:path-element/"
        + "tet:type/tet:label/tet:label-hop/tet:te-label/"
        + "tet:technology" {
    when "../../../../../../../../../../
          nw:network-types/tet:te-topology/
          otnt:otn-topology" {
      description
        "Augmentation parameters apply only for networks with
         OTN topology type.";
    }
    description
      "Augment TE label hop for the underlay primary path
       of the TTP Local Link Connectivity entry.";
    case otn {
      uses l1-types:otn-label-hop;
    }
  }

  augment "/nw:networks/nw:network/nw:node/tet:te/"
        + "tet:tunnel-termination-point/"
        + "tet:local-link-connectivities/"
        + "tet:local-link-connectivity/"
        + "tet:underlay/tet:backup-path/tet:path-element/tet:type/"
        + "tet:label/tet:label-hop/tet:te-label/tet:technology" {
    when "../../../../../../../../../../
          nw:network-types/tet:te-topology/
          otnt:otn-topology" {
      description
        "Augmentation parameters apply only for networks with
         OTN topology type.";
    }
    description
      "Augment TE label hop for the underlay backup path
       of the TTP Local Link Connectivity entry.";
    case otn {
      uses l1-types:otn-label-hop;
    }
  }

  augment "/nw:networks/nw:network/nw:node/tet:te/"
        + "tet:tunnel-termination-point/"
        + "tet:local-link-connectivities/"
        + "tet:local-link-connectivity/"
        + "tet:optimizations/tet:algorithm/tet:metric/"
        + "tet:optimization-metric/"
        + "tet:explicit-route-exclude-objects/"
        + "tet:route-object-exclude-object/tet:type/"
        + "tet:label/tet:label-hop/tet:te-label/tet:technology" {
    when "../../../../../../../../../../../
          nw:network-types/tet:te-topology/
          otnt:otn-topology" {
      description
        "Augmentation parameters apply only for networks with
         OTN topology type.";
    }
    description
      "Augment TE label hop for the explicit route objects excluded
       by the path computation of the TTP Local Link
       Connectivity entry.";
    case otn {
      uses l1-types:otn-label-hop;
    }
  }

  augment "/nw:networks/nw:network/nw:node/tet:te/"
        + "tet:tunnel-termination-point/"
        + "tet:local-link-connectivities/"
        + "tet:local-link-connectivity/"
        + "tet:optimizations/tet:algorithm/tet:metric/"
        + "tet:optimization-metric/"
        + "tet:explicit-route-include-objects/"
        + "tet:route-object-include-object/tet:type/"
        + "tet:label/tet:label-hop/tet:te-label/tet:technology" {
    when "../../../../../../../../../../../
          nw:network-types/tet:te-topology/
          otnt:otn-topology" {
      description
        "Augmentation parameters apply only for networks with
         OTN topology type.";
    }
    description
      "Augment TE label hop for the explicit route objects included
       by the path computation of the TTP Local Link
       Connectivity entry.";
    case otn {
      uses l1-types:otn-label-hop;
    }
  }

  augment "/nw:networks/nw:network/nw:node/tet:te/"
        + "tet:tunnel-termination-point/"
        + "tet:local-link-connectivities/"
        + "tet:local-link-connectivity/"
        + "tet:path-properties/tet:path-route-objects/"
        + "tet:path-route-object/tet:type/"
        + "tet:label/tet:label-hop/tet:te-label/tet:technology" {
    when "../../../../../../../../../../
          nw:network-types/tet:te-topology/
          otnt:otn-topology" {
      description
        "Augmentation parameters apply only for networks with
         OTN topology type.";
    }
    description
      "Augment TE label hop for the computed path route objects
       of the TTP Local Link Connectivity entry.";
    case otn {
      uses l1-types:otn-label-hop;
    }
  }

  augment "/nw:networks/nw:network/nt:link/tet:te/"
        + "tet:te-link-attributes/"
        + "tet:underlay/tet:primary-path/tet:path-element/"
        + "tet:type/tet:label/tet:label-hop/tet:te-label/"
        + "tet:technology" {
    when "../../../../../../../../
          nw:network-types/tet:te-topology/
          otnt:otn-topology" {
      description
        "Augmentation parameters apply only for networks with
         OTN topology type.";
    }
    description
      "Augment TE label hop for the underlay primary path
       of the TE link.";
    case otn {
      uses l1-types:otn-label-hop;
    }
  }

  augment "/nw:networks/nw:network/nt:link/tet:te/"
        + "tet:te-link-attributes/"
        + "tet:underlay/tet:backup-path/tet:path-element/tet:type/"
        + "tet:label/tet:label-hop/tet:te-label/tet:technology" {
    when "../../../../../../../../
          nw:network-types/tet:te-topology/
          otnt:otn-topology" {
      description
        "Augmentation parameters apply only for networks with
         OTN topology type.";
    }
    description
      "Augment TE label hop for the underlay backup path
       of the TE link.";
    case otn {
      uses l1-types:otn-label-hop;
    }
  }

  augment "/nw:networks/nw:network/nt:link/tet:te/"
        + "tet:te-link-attributes/"
        + "tet:label-restrictions/tet:label-restriction/"
        + "tet:label-start/tet:te-label/tet:technology" {
    when "../../../../../../../nw:network-types/tet:te-topology/
          otnt:otn-topology" {
      description
        "Augmentation parameters apply only for networks with
         OTN topology type.";
    }
    description
      "Augment TE label range start for the TE link.";
    case otn {
      uses l1-types:otn-label-start-end;
    }
  }

  augment "/nw:networks/nw:network/nt:link/tet:te/"
        + "tet:te-link-attributes/"
        + "tet:label-restrictions/tet:label-restriction/"
        + "tet:label-end/tet:te-label/tet:technology" {
    when "../../../../../../../nw:network-types/tet:te-topology/
          otnt:otn-topology" {
      description
        "Augmentation parameters apply only for networks with
         OTN topology type.";
    }
    description
      "Augment TE label range end for the TE link.";
    case otn {
      uses l1-types:otn-label-start-end;
    }
  }

  augment "/nw:networks/nw:network/nt:link/tet:te/"
        + "tet:te-link-attributes/"
        + "tet:label-restrictions/tet:label-restriction/"
        + "tet:label-step/tet:technology" {
    when "../../../../../../nw:network-types/tet:te-topology/
          otnt:otn-topology" {
      description
        "Augmentation parameters apply only for networks with
         OTN topology type.";
    }
    description
      "Augment TE label range step for the TE link.";
    case otn {
      uses l1-types:otn-label-step;
    }
  }

  augment "/nw:networks/nw:network/nt:link/tet:te/"
        + "tet:information-source-entry/"
        + "tet:label-restrictions/tet:label-restriction/"
        + "tet:label-start/tet:te-label/tet:technology" {
    when "../../../../../../../nw:network-types/tet:te-topology/
          otnt:otn-topology" {
      description
        "Augmentation parameters apply only for networks with
         OTN topology type.";
    }
    description
      "Augment TE label range start for the TE link
       information source.";
    case otn {
      uses l1-types:otn-label-start-end;
    }
  }

  augment "/nw:networks/nw:network/nt:link/tet:te/"
        + "tet:information-source-entry/"
        + "tet:label-restrictions/tet:label-restriction/"
        + "tet:label-end/tet:te-label/tet:technology" {
    when "../../../../../../../nw:network-types/tet:te-topology/
          otnt:otn-topology" {
      description
        "Augmentation parameters apply only for networks with
         OTN topology type.";
    }
    description
      "Augment TE label range end for the TE link
       information source.";
    case otn {
      uses l1-types:otn-label-start-end;
    }
  }

  augment "/nw:networks/nw:network/nt:link/tet:te/"
        + "tet:information-source-entry/"
        + "tet:label-restrictions/tet:label-restriction/"
        + "tet:label-step/tet:technology" {
    when "../../../../../../nw:network-types/tet:te-topology/
          otnt:otn-topology" {
      description
        "Augmentation parameters apply only for networks with
         OTN topology type.";
    }
    description
      "Augment TE label range step for the TE link
       information source.";
    case otn {
      uses l1-types:otn-label-step;
    }
  }

  augment "/nw:networks/tet:te/tet:templates/"
        + "tet:link-template/tet:te-link-attributes/"
        + "tet:underlay/tet:primary-path/tet:path-element/"
        + "tet:type/tet:label/tet:label-hop/tet:te-label/"
        + "tet:technology" {
    description
      "Augment TE label hop for the underlay primary path
       of the TE link template.";
    case otn {
      uses l1-types:otn-label-hop;
    }
  }

  augment "/nw:networks/tet:te/tet:templates/"
        + "tet:link-template/tet:te-link-attributes/"
        + "tet:underlay/tet:backup-path/tet:path-element/tet:type/"
        + "tet:label/tet:label-hop/tet:te-label/tet:technology" {
    description
      "Augment TE label hop for the underlay backup path
       of the TE link template.";
    case otn {
      uses l1-types:otn-label-hop;
    }
  }

  augment "/nw:networks/tet:te/tet:templates/"
        + "tet:link-template/tet:te-link-attributes/"
        + "tet:label-restrictions/tet:label-restriction/"
        + "tet:label-start/tet:te-label/tet:technology" {
    description
      "Augment TE label range start for the TE link template.";
    case otn {
      uses l1-types:otn-label-start-end;
    }
  }

  augment "/nw:networks/tet:te/tet:templates/"
        + "tet:link-template/tet:te-link-attributes/"
        + "tet:label-restrictions/tet:label-restriction/"
        + "tet:label-end/tet:te-label/tet:technology" {
    description
      "Augment TE label range end for the TE link template.";
    case otn {
      uses l1-types:otn-label-start-end;
    }
  }

  augment "/nw:networks/tet:te/tet:templates/"
        + "tet:link-template/tet:te-link-attributes/"
        + "tet:label-restrictions/tet:label-restriction/"
        + "tet:label-step/tet:technology" {
    description
      "Augment TE label range step for the TE link template.";
    case otn {
      uses l1-types:otn-label-step;
    }
  }
}
]]></sourcecode>
    </section>
    <section anchor="iana-considerations">
      <name>IANA Considerations</name>
      <t>It is proposed to IANA to assign new URIs from the "IETF XML
Registry" <xref target="RFC3688"/> as follows:</t>
      <artwork><![CDATA[
      URI: urn:ietf:params:xml:ns:yang:ietf-otn-topology
      Registrant Contact: The IESG
      XML: N/A; the requested URI is an XML namespace.
]]></artwork>
      <t>This document registers a YANG module in the YANG Module Names
registry <xref target="RFC7950"/>.</t>
      <artwork><![CDATA[
      name:         ietf-otn-topology
      namespace:    urn:ietf:params:xml:ns:yang:ietf-otn-topology
      prefix:       otnt
      reference:    RFC XXXX
]]></artwork>
      <ul empty="true">
        <li>
          <t>RFC Editor Note: Please replace XXXX with the number assigned to the
RFC once this draft becomes an RFC.</t>
        </li>
      </ul>
    </section>
    <section anchor="security-considerations">
      <name>Security Considerations</name>
      <t>This section is modeled after the template described in Section 3.7
of <xref target="RFC9907"/>.</t>
      <t>The "ietf-te-types" and the "ietf-te-packet-types" YANG modules define data models that are
designed to be accessed via YANG-based management protocols, such as
NETCONF <xref target="RFC6241"/> and RESTCONF <xref target="RFC8040"/>. These protocols have to
use a secure transport layer (e.g., SSH <xref target="RFC4252"/>, 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).
These data nodes can be considered sensitive or vulnerable in some network environments.
Write operations (e.g., edit-config) to these data nodes without proper protection can have a negative effect on network operations.
Specifically, the following subtrees and data nodes have particular sensitivities/vulnerabilities:</t>
      <ul spacing="normal">
        <li>
          <t>"/nw:networks/nw:network/nw:network-types/tet:te-topology/otnt:otn-topology"</t>
        </li>
      </ul>
      <ul empty="true">
        <li>
          <t>This subtree specifies the OTN topology type. Modifying the configurations can render the OTN topology type invalid. By making such modifications, a malicious attacker may disable the OTN capabilities on the related networks and cause traffic to be disrupted or misrouted.</t>
        </li>
      </ul>
      <ul spacing="normal">
        <li>
          <t>"/nw:networks/nw:network/nw:node/tet:te/tet:te-node-attributes/otnt:otn-node"</t>
        </li>
      </ul>
      <ul empty="true">
        <li>
          <t>This subtree specifies the OTN node type. By configuring the OTN node type, an attacker may create an unauthorized OTN traffic path. By removing it, a malicious attacker may cause OTN traffic to be disabled or misrouted. Such traffic changes may also affect the traffic on the surrounding OTN nodes and OTN links in this OTN topology and the connected OTN topologies.</t>
        </li>
      </ul>
      <ul spacing="normal">
        <li>
          <t>"/nw:networks/nw:network/nt:link/tet:te/tet:te-link-attributes/otnt:otn-link/otnt:odtu-flex-type"</t>
        </li>
      </ul>
      <ul empty="true">
        <li>
          <t>This node is used, together with the other attributes in the otn-bandwidth container, to compute the OTN bandwidth information for an OTN link, as described in <xref target="sec-bandwidth"/>. By configuring, modifying or removing this data node, a malicious attacker may modify the OTN bandwidth. The consequences of modifying the OTN bandwidth are reported below for the otn-bandwidth container.</t>
        </li>
      </ul>
      <ul spacing="normal">
        <li>
          <t>"/nw:networks/nw:network/nt:link/tet:te/tet:te-link-attributes/otnt:otn-link/otnt:tsg"</t>
        </li>
      </ul>
      <ul empty="true">
        <li>
          <t>This node represents the TSG of the OTN link, as described in <xref target="sec-attributes"/>. By configuring, modifying or removing this data node, a malicious attacker may modify the resouces assigned to the OTN LSPs setup over that OTN link. The consequences of modifying the TSG would be to disrupt the traffic carried by the OTN LSPs setup over that OTN link.</t>
        </li>
      </ul>
      <ul spacing="normal">
        <li>
          <t>"/nw:networks/nw:network/nt:link/tet:te/tet:te-link-attributes/otnt:otn-link/otnt:distance"</t>
        </li>
      </ul>
      <ul empty="true">
        <li>
          <t>This node is describes the geographical distance between a pair of OTN link termination points. By configuring, modifying or removing the distance, an attacker may cause OTN traffic to be misrouted. Such traffic changes may also affect the traffic on the surrounding OTN nodes and OTN links in this OTN topology and the connected OTN topologies.</t>
        </li>
      </ul>
      <ul spacing="normal">
        <li>
          <t>"/nw:networks/nw:network/nt:link/tet:te/tet:te-link-attributes/otnt:client-svc"</t>
        </li>
      </ul>
      <ul empty="true">
        <li>
          <t>This subtree specifies the client traffic type supported by a link. By configuring it, an attacker may create an unauthorized client traffic path. By removing it, a malicious attacker may cause client traffic to be disabled or misrouted. Such traffic changes may also affect the traffic on the surrounding OTN nodes and OTN links in this OTN topology and the connected OTN topologies.</t>
        </li>
      </ul>
      <ul spacing="normal">
        <li>
          <t>"/nw:networks/nw:network/nw:node/nt:termination-point/tet:te/otnt:otn-link-tp/otnt:odtu-flex-type"</t>
        </li>
      </ul>
      <ul empty="true">
        <li>
          <t>This node is used, together with the other attributes in the otn-bandwidth container, to compute the OTN bandwidth information for an OTN link termination point, as described in <xref target="sec-bandwidth"/>. By configuring, modifying or removing this data node, a malicious attacker may modify the OTN bandwidth. The consequences of modifying the OTN bandwidth are reported below for the otn-bandwidth container.</t>
        </li>
      </ul>
      <ul spacing="normal">
        <li>
          <t>"/nw:networks/nw:network/nw:node/nt:termination-point/tet:te/otnt:client-svc"</t>
        </li>
      </ul>
      <ul empty="true">
        <li>
          <t>This subtree specifies the client traffic type supported by a link termination point. By configuring it, an attacker may create an unauthorized client traffic path. By removing it, a malicious attacker may cause client traffic to be disabled or misrouted. Such traffic changes may also affect the traffic on the surrounding OTN nodes and OTN links in this OTN topology and the connected topologies.</t>
        </li>
      </ul>
      <ul spacing="normal">
        <li>
          <t>"otnt:otn-bandwidth"</t>
        </li>
      </ul>
      <ul empty="true">
        <li>
          <t>This subtree specifies the configurations of OTN technology-specific information under any occurrence of the tet:te-bandwidth container, as defined in <xref target="RFC8795"/> (e.g., "/nw:networks/nw:network/nt:link/tet:te/tet:te-link-attributes/tet:max-resv-link-bandwidth/tet:te-bandwidth/otnt:otn-bandwidth"). By configuring the OTN bandwidth attributes, an attacker may create an unauthorized OTN traffic path. By removing or modifying it, a malicious attacker may cause OTN traffic to be disabled or misrouted. Such traffic changes may also affect the traffic on the surrounding OTN nodes and OTN links in this OTN topology and the connected OTN topologies.</t>
        </li>
      </ul>
      <ul spacing="normal">
        <li>
          <t>"otnt:otn-label-range"</t>
        </li>
      </ul>
      <ul empty="true">
        <li>
          <t>This subtree specifies the configurations of OTN technology-specific label range information under any occurrence of the tet:te-label-restriction container, as defined in <xref target="RFC8795"/> (e.g., "/nw:networks/nw:network/nt:link/tet:te/tet:te-link-attributes/tet:label-restrictions/tet:label-restriction\otnt:otn-label-range"). By configuring the OTN label range attributes, an attacker may create an unauthorized OTN traffic path. By removing or modifying, a malicious attacker may cause OTN traffic to be disabled or misrouted. Such traffic changes may also affect the traffic on the surrounding OTN nodes and OTN links in this OTN topology and the connected OTN topologies.</t>
        </li>
      </ul>
      <ul spacing="normal">
        <li>
          <t>"otnt:otn-label"</t>
        </li>
      </ul>
      <ul empty="true">
        <li>
          <t>This subtree specifies the configurations of OTN technology-specific label information under any occurrence of the tet:te-label container, as defined in <xref target="RFC8795"/> (e.g., "/nw:networks/nw:network/nt:link/tet:te/tet:te-link-attributes/tet:label-restrictions/tet:label-restriction/tet:label-start/tet:te-label/tet:technology/otnt:otn-label"). By configuring, removing or modifying the OTN label attributes, a malicious attacker may cause OTN traffic to be disabled or misrouted. Such traffic changes may also affect the traffic on the surrounding OTN nodes and OTN links in this OTN topology and the connected OTN topologies.</t>
        </li>
      </ul>
      <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>
      <ul spacing="normal">
        <li>
          <t>"/nw:networks/nw:network/nw:network-types/tet:te-topology/otnt:otn-topology"</t>
        </li>
      </ul>
      <ul empty="true">
        <li>
          <t>Unauthorized access to this subtree can disclose the OTN topology type.</t>
        </li>
      </ul>
      <ul spacing="normal">
        <li>
          <t>"/nw:networks/nw:network/nw:node/tet:te/tet:te-node-attributes/otnt:otn-node"</t>
        </li>
      </ul>
      <ul empty="true">
        <li>
          <t>Unauthorized access to this subtree can disclose the OTN nodes.</t>
        </li>
      </ul>
      <ul spacing="normal">
        <li>
          <t>"/nw:networks/nw:network/nt:link/tet:te/tet:te-link-attributes/otnt:otn-link/otnt:odtu-flex-type"</t>
        </li>
      </ul>
      <ul empty="true">
        <li>
          <t>This node is used, together with the other attributes in the otn-bandwidth container, to compute the OTN bandwidth information for an OTN link, as described in <xref target="sec-bandwidth"/>. Unauthorized access to this data node can disclose the OTN bandwidth information of OTN links.</t>
        </li>
      </ul>
      <ul spacing="normal">
        <li>
          <t>"/nw:networks/nw:network/nt:link/tet:te/tet:te-link-attributes/otnt:otn-link/otnt:tsg"</t>
        </li>
      </ul>
      <ul empty="true">
        <li>
          <t>Unauthorized access to this data node can disclose configuration information of OTN links.</t>
        </li>
      </ul>
      <ul spacing="normal">
        <li>
          <t>"/nw:networks/nw:network/nt:link/tet:te/tet:te-link-attributes/otnt:otn-link/otnt:distance"</t>
        </li>
      </ul>
      <ul empty="true">
        <li>
          <t>Unauthorized access to this data node can disclose state information of OTN links.</t>
        </li>
      </ul>
      <ul spacing="normal">
        <li>
          <t>"/nw:networks/nw:network/nt:link/tet:te/tet:te-link-attributes/otnt:client-svc"</t>
        </li>
      </ul>
      <ul empty="true">
        <li>
          <t>Unauthorized access to this data node can disclose capabilities of OTN links.</t>
        </li>
      </ul>
      <ul spacing="normal">
        <li>
          <t>"/nw:networks/nw:network/nw:node/nt:termination-point/tet:te/otnt:otn-link-tp/otnt:odtu-flex-type"</t>
        </li>
      </ul>
      <ul empty="true">
        <li>
          <t>This node is used, together with the other attributes in the otn-bandwidth container, to compute the OTN bandwidth information for an OTN link termination point, as described in <xref target="sec-bandwidth"/>. Unauthorized access to this data node can disclose the OTN bandwidth information of OTN link termination points.</t>
        </li>
      </ul>
      <ul spacing="normal">
        <li>
          <t>"/nw:networks/nw:network/nw:node/nt:termination-point/tet:te/otnt:client-svc"</t>
        </li>
      </ul>
      <ul empty="true">
        <li>
          <t>Unauthorized access to this data node can disclose capabilities of OTN link termination points.</t>
        </li>
      </ul>
      <ul spacing="normal">
        <li>
          <t>"otnt:otn-bandwidth"</t>
        </li>
      </ul>
      <ul empty="true">
        <li>
          <t>This subtree specifies the configurations of OTN technology-specific information under any occurrence of the tet:te-bandwidth container, as defined in <xref target="RFC8795"/> (e.g., "/nw:networks/nw:network/nt:link/tet:te/tet:te-link-attributes/tet:max-resv-link-bandwidth/tet:te-bandwidth/otnt:otn-bandwidth"). Unauthorized access to this data node can disclose the OTN bandwidth information of OTN links and link termination points.</t>
        </li>
      </ul>
      <ul spacing="normal">
        <li>
          <t>"otnt:otn-label-range"</t>
        </li>
      </ul>
      <ul empty="true">
        <li>
          <t>This subtree specifies the configurations of OTN technology-specific label range information under any occurrence of the tet:te-label-restriction container, as defined in <xref target="RFC8795"/> (e.g., "/nw:networks/nw:network/nt:link/tet:te/tet:te-link-attributes/tet:label-restrictions/tet:label-restriction\otnt:otn-label-range"). Unauthorized access to this data node can disclose the state information of OTN links and link termination points.</t>
        </li>
      </ul>
      <ul spacing="normal">
        <li>
          <t>"otnt:otn-label"</t>
        </li>
      </ul>
      <ul empty="true">
        <li>
          <t>This subtree specifies the configurations of OTN technology-specific label information under any occurrence of the tet:te-label container, as defined in <xref target="RFC8795"/> (e.g., "/nw:networks/nw:network/nt:link/tet:te/tet:te-link-attributes/tet:label-restrictions/tet:label-restriction/tet:label-start/tet:te-label/tet:technology/otnt:otn-label"). Unauthorized access to this data node can disclose the state information of OTN links and link termination points.</t>
        </li>
      </ul>
      <t>This YANG module does not define RPC operations.</t>
      <t>This YANG module uses groupings from other YANG modules that
define nodes that may be considered sensitive or vulnerable
in network environments. Refer to the Security Considerations
of <xref target="I-D.ietf-ccamp-layer1-types"/> for information as to which nodes may
be considered sensitive or vulnerable in network environments.</t>
      <t>Finally, the YANG module described in this document augments the "ietf-network" YANG module <xref target="RFC8345"/> and the "ietf-te-topology" YANG module <xref target="RFC8795"/> by adding data nodes. The security considerations for the subtrees described in those RFCs apply equally to the new data nodes that this module adds.</t>
    </section>
  </middle>
  <back>
    <references anchor="sec-combined-references">
      <name>References</name>
      <references anchor="sec-normative-references">
        <name>Normative References</name>
        <reference anchor="ITU-T_G.709" target="https://www.itu.int/rec/T-REC-G.709">
          <front>
            <title>Interfaces for the optical transport network</title>
            <author>
              <organization>International Telecommunication Union</organization>
            </author>
            <date year="2020" month="June"/>
          </front>
          <seriesInfo name="ITU-T" value="G.709/Y.1331 (2020)"/>
        </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="RFC8795">
          <front>
            <title>YANG Data Model for Traffic Engineering (TE) Topologies</title>
            <author fullname="X. Liu" initials="X." surname="Liu"/>
            <author fullname="I. Bryskin" initials="I." surname="Bryskin"/>
            <author fullname="V. Beeram" initials="V." surname="Beeram"/>
            <author fullname="T. Saad" initials="T." surname="Saad"/>
            <author fullname="H. Shah" initials="H." surname="Shah"/>
            <author fullname="O. Gonzalez de Dios" initials="O." surname="Gonzalez de Dios"/>
            <date month="August" year="2020"/>
            <abstract>
              <t>This document defines a YANG data model for representing, retrieving, and manipulating Traffic Engineering (TE) Topologies. The model serves as a base model that other technology-specific TE topology models can augment.</t>
            </abstract>
          </front>
          <seriesInfo name="RFC" value="8795"/>
          <seriesInfo name="DOI" value="10.17487/RFC8795"/>
        </reference>
        <reference anchor="I-D.ietf-ccamp-layer1-types">
          <front>
            <title>Common YANG Data Types for Layer 1 Networks</title>
            <author fullname="Haomian Zheng" initials="H." surname="Zheng">
              <organization>Huawei Technologies</organization>
            </author>
            <author fullname="Italo Busi" initials="I." surname="Busi">
              <organization>Huawei Technologies</organization>
            </author>
            <date day="16" month="June" year="2026"/>
            <abstract>
              <t>   This document defines a collection of common data types, identities,
   and groupings in the YANG data modeling language.  These derived
   common data types, identities, and groupings are intended to be
   imported by modules that model Layer 1 configuration and state
   capabilities.  The Layer 1 types are representative of Layer 1 client
   signals applicable to transport networks, such as Optical Transport
   Networks (OTN).  The Optical Transport Network (OTN) data structures
   are included in this document as Layer 1 types.

              </t>
            </abstract>
          </front>
          <seriesInfo name="Internet-Draft" value="draft-ietf-ccamp-layer1-types-19"/>
        </reference>
        <reference anchor="RFC8345">
          <front>
            <title>A YANG Data Model for Network Topologies</title>
            <author fullname="A. Clemm" initials="A." surname="Clemm"/>
            <author fullname="J. Medved" initials="J." surname="Medved"/>
            <author fullname="R. Varga" initials="R." surname="Varga"/>
            <author fullname="N. Bahadur" initials="N." surname="Bahadur"/>
            <author fullname="H. Ananthakrishnan" initials="H." surname="Ananthakrishnan"/>
            <author fullname="X. Liu" initials="X." surname="Liu"/>
            <date month="March" year="2018"/>
            <abstract>
              <t>This document defines an abstract (generic, or base) YANG data model for network/service topologies and inventories. The data model serves as a base model that is augmented with technology-specific details in other, more specific topology and inventory data models.</t>
            </abstract>
          </front>
          <seriesInfo name="RFC" value="8345"/>
          <seriesInfo name="DOI" value="10.17487/RFC8345"/>
        </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="RFC2119">
          <front>
            <title>Key words for use in RFCs to Indicate Requirement Levels</title>
            <author fullname="S. Bradner" initials="S." surname="Bradner"/>
            <date month="March" year="1997"/>
            <abstract>
              <t>In many standards track documents several words are used to signify the requirements in the specification. These words are often capitalized. This document defines these words as they should be interpreted in IETF documents. This document specifies an Internet Best Current Practices for the Internet Community, and requests discussion and suggestions for improvements.</t>
            </abstract>
          </front>
          <seriesInfo name="BCP" value="14"/>
          <seriesInfo name="RFC" value="2119"/>
          <seriesInfo name="DOI" value="10.17487/RFC2119"/>
        </reference>
        <reference anchor="RFC8174">
          <front>
            <title>Ambiguity of Uppercase vs Lowercase in RFC 2119 Key Words</title>
            <author fullname="B. Leiba" initials="B." surname="Leiba"/>
            <date month="May" year="2017"/>
            <abstract>
              <t>RFC 2119 specifies common key words that may be used in protocol specifications. This document aims to reduce the ambiguity by clarifying that only UPPERCASE usage of the key words have the defined special meanings.</t>
            </abstract>
          </front>
          <seriesInfo name="BCP" value="14"/>
          <seriesInfo name="RFC" value="8174"/>
          <seriesInfo name="DOI" value="10.17487/RFC8174"/>
        </reference>
        <reference anchor="RFC7139">
          <front>
            <title>GMPLS Signaling Extensions for Control of Evolving G.709 Optical Transport Networks</title>
            <author fullname="F. Zhang" initials="F." role="editor" surname="Zhang"/>
            <author fullname="G. Zhang" initials="G." surname="Zhang"/>
            <author fullname="S. Belotti" initials="S." surname="Belotti"/>
            <author fullname="D. Ceccarelli" initials="D." surname="Ceccarelli"/>
            <author fullname="K. Pithewan" initials="K." surname="Pithewan"/>
            <date month="March" year="2014"/>
            <abstract>
              <t>ITU-T Recommendation G.709 [G709-2012] introduced new Optical channel Data Unit (ODU) containers (ODU0, ODU4, ODU2e, and ODUflex) and enhanced Optical Transport Network (OTN) flexibility.</t>
              <t>This document updates the ODU-related portions of RFC 4328 to provide extensions to GMPLS signaling to control the full set of OTN features, including ODU0, ODU4, ODU2e, and ODUflex.</t>
            </abstract>
          </front>
          <seriesInfo name="RFC" value="7139"/>
          <seriesInfo name="DOI" value="10.17487/RFC7139"/>
        </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="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>
      </references>
      <references anchor="sec-informative-references">
        <name>Informative References</name>
        <reference anchor="RFC7062">
          <front>
            <title>Framework for GMPLS and PCE Control of G.709 Optical Transport Networks</title>
            <author fullname="F. Zhang" initials="F." role="editor" surname="Zhang"/>
            <author fullname="D. Li" initials="D." surname="Li"/>
            <author fullname="H. Li" initials="H." surname="Li"/>
            <author fullname="S. Belotti" initials="S." surname="Belotti"/>
            <author fullname="D. Ceccarelli" initials="D." surname="Ceccarelli"/>
            <date month="November" year="2013"/>
            <abstract>
              <t>This document provides a framework to allow the development of protocol extensions to support Generalized Multi-Protocol Label Switching (GMPLS) and Path Computation Element (PCE) control of Optical Transport Networks (OTNs) as specified in ITU-T Recommendation G.709 as published in 2012.</t>
            </abstract>
          </front>
          <seriesInfo name="RFC" value="7062"/>
          <seriesInfo name="DOI" value="10.17487/RFC7062"/>
        </reference>
        <reference anchor="I-D.ietf-teas-actn-yang">
          <front>
            <title>Applicability of YANG models for Abstraction and Control of Traffic Engineered Networks</title>
            <author fullname="Young Lee" initials="Y." surname="Lee">
              <organization>Samsung</organization>
            </author>
            <author fullname="Haomian Zheng" initials="H." surname="Zheng">
              <organization>Huawei</organization>
            </author>
            <author fullname="Daniele Ceccarelli" initials="D." surname="Ceccarelli">
              <organization>Cisco</organization>
            </author>
            <author fullname="Bin Yeong Yoon" initials="B. Y." surname="Yoon">
              <organization>ETRI</organization>
            </author>
            <author fullname="Sergio Belotti" initials="S." surname="Belotti">
              <organization>Nokia</organization>
            </author>
            <date day="7" month="March" year="2023"/>
            <abstract>
              <t>   Abstraction and Control of TE Networks (ACTN) refers to the set of
   virtual network operations needed to orchestrate, control and manage
   large-scale multi-domain TE networks, so as to facilitate network
   programmability, automation, efficient resource sharing, and end-to-
   end virtual service aware connectivity and network function
   virtualization services.

   This document explains how the different types of YANG models
   defined in the Operations and Management Area and in the Routing
   Area are applicable to the ACTN framework. This document also shows
   how the ACTN architecture can be satisfied using classes of data
   model that have already been defined, and discusses the
   applicability of specific data models that are under development. It
   also highlights where new data models may need to be developed.

              </t>
            </abstract>
          </front>
          <seriesInfo name="Internet-Draft" value="draft-ietf-teas-actn-yang-11"/>
        </reference>
        <reference anchor="RFC8453">
          <front>
            <title>Framework for Abstraction and Control of TE Networks (ACTN)</title>
            <author fullname="D. Ceccarelli" initials="D." role="editor" surname="Ceccarelli"/>
            <author fullname="Y. Lee" initials="Y." role="editor" surname="Lee"/>
            <date month="August" year="2018"/>
            <abstract>
              <t>Traffic Engineered (TE) networks have a variety of mechanisms to facilitate the separation of the data plane and control plane. They also have a range of management and provisioning protocols to configure and activate network resources. These mechanisms represent key technologies for enabling flexible and dynamic networking. The term "Traffic Engineered network" refers to a network that uses any connection-oriented technology under the control of a distributed or centralized control plane to support dynamic provisioning of end-to- end connectivity.</t>
              <t>Abstraction of network resources is a technique that can be applied to a single network domain or across multiple domains to create a single virtualized network that is under the control of a network operator or the customer of the operator that actually owns the network resources.</t>
              <t>This document provides a framework for Abstraction and Control of TE Networks (ACTN) to support virtual network services and connectivity services.</t>
            </abstract>
          </front>
          <seriesInfo name="RFC" value="8453"/>
          <seriesInfo name="DOI" value="10.17487/RFC8453"/>
        </reference>
        <reference anchor="I-D.ietf-ccamp-transport-nbi-app-statement">
          <front>
            <title>Transport Northbound Interface Applicability Statement</title>
            <author fullname="Italo Busi" initials="I." surname="Busi">
              <organization>Huawei</organization>
            </author>
            <author fullname="Daniel King" initials="D." surname="King">
              <organization>Old Dog Consulting</organization>
            </author>
            <author fullname="Haomian Zheng" initials="H." surname="Zheng">
              <organization>Huawei</organization>
            </author>
            <author fullname="Yunbin Xu" initials="Y." surname="Xu">
              <organization>CAICT</organization>
            </author>
            <date day="10" month="July" year="2023"/>
            <abstract>
              <t>   This document provides an analysis of the applicability of the YANG
   models defined by the IETF (in particular in the Traffic Engineering
   Architecture and Signaling (TEAS) and Common Control and Measurement
   Plane (CCAMP) working groups) to support ODU transit services,
   transparent client services, and Ethernet Private Line/Ethernet
   Virtual Private Line (EPL/EVPL) services over Optical Transport
   Network (OTN) in single and multi-domain network scenarios.

   This document also describes how existing YANG models can be used
   through several worked examples and JSON fragments.

              </t>
            </abstract>
          </front>
          <seriesInfo name="Internet-Draft" value="draft-ietf-ccamp-transport-nbi-app-statement-17"/>
        </reference>
        <reference anchor="RFC8340">
          <front>
            <title>YANG Tree Diagrams</title>
            <author fullname="M. Bjorklund" initials="M." surname="Bjorklund"/>
            <author fullname="L. Berger" initials="L." role="editor" surname="Berger"/>
            <date month="March" year="2018"/>
            <abstract>
              <t>This document captures the current syntax used in YANG module tree diagrams. The purpose of this document is to provide a single location for this definition. This syntax may be updated from time to time based on the evolution of the YANG language.</t>
            </abstract>
          </front>
          <seriesInfo name="BCP" value="215"/>
          <seriesInfo name="RFC" value="8340"/>
          <seriesInfo name="DOI" value="10.17487/RFC8340"/>
        </reference>
        <reference anchor="RFC9907">
          <front>
            <title>Guidelines for Authors and Reviewers of Documents Containing YANG Data Models</title>
            <author fullname="A. Bierman" initials="A." surname="Bierman"/>
            <author fullname="M. Boucadair" initials="M." role="editor" surname="Boucadair"/>
            <author fullname="Q. Wu" initials="Q." surname="Wu"/>
            <date month="March" year="2026"/>
            <abstract>
              <t>This document provides guidelines for authors and reviewers of specifications containing YANG data models, including IANA-maintained YANG modules. Recommendations and procedures are defined, which are intended to increase interoperability and usability of Network Configuration Protocol (NETCONF) and RESTCONF protocol implementations that utilize YANG modules.</t>
              <t>This document obsoletes RFC 8407; it also updates RFC 8126 by providing additional guidelines for writing the IANA considerations for RFCs that specify IANA-maintained YANG modules.</t>
            </abstract>
          </front>
          <seriesInfo name="BCP" value="216"/>
          <seriesInfo name="RFC" value="9907"/>
          <seriesInfo name="DOI" value="10.17487/RFC9907"/>
        </reference>
        <reference anchor="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="RFC4252">
          <front>
            <title>The Secure Shell (SSH) Authentication Protocol</title>
            <author fullname="T. Ylonen" initials="T." surname="Ylonen"/>
            <author fullname="C. Lonvick" initials="C." role="editor" surname="Lonvick"/>
            <date month="January" year="2006"/>
            <abstract>
              <t>The Secure Shell Protocol (SSH) is a protocol for secure remote login and other secure network services over an insecure network. This document describes the SSH authentication protocol framework and public key, password, and host-based client authentication methods. Additional authentication methods are described in separate documents. The SSH authentication protocol runs on top of the SSH transport layer protocol and provides a single authenticated tunnel for the SSH connection protocol. [STANDARDS-TRACK]</t>
            </abstract>
          </front>
          <seriesInfo name="RFC" value="4252"/>
          <seriesInfo name="DOI" value="10.17487/RFC4252"/>
        </reference>
        <reference anchor="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="RFC7951">
          <front>
            <title>JSON Encoding of Data Modeled with YANG</title>
            <author fullname="L. Lhotka" initials="L." surname="Lhotka"/>
            <date month="August" year="2016"/>
            <abstract>
              <t>This document defines encoding rules for representing configuration data, state data, parameters of Remote Procedure Call (RPC) operations or actions, and notifications defined using YANG as JavaScript Object Notation (JSON) text.</t>
            </abstract>
          </front>
          <seriesInfo name="RFC" value="7951"/>
          <seriesInfo name="DOI" value="10.17487/RFC7951"/>
        </reference>
      </references>
    </references>
    <?line 2759?>

<section anchor="yang-tree">
      <name>YANG Tree</name>
      <t>This section provides the YANG Tree of the OTN topology data model.</t>
      <artwork type="ascii-art"><![CDATA[
module: ietf-otn-topology

  augment /nw:networks/nw:network/nw:network-types/tet:te-topology:
    +--rw otn-topology!
  augment /nw:networks/nw:network/nw:node/tet:te
            /tet:te-node-attributes:
    +--rw otn-node!
  augment /nw:networks/nw:network/nt:link/tet:te
            /tet:te-link-attributes:
    +--rw otn-link
    |  +--rw odtu-flex-type?   l1-types:odtu-flex-type
    |  +--rw tsg?              identityref
    |  +--rw distance?         uint32
    +--rw client-svc!
       +--rw supported-client-signal*   identityref
  augment /nw:networks/nw:network/nw:node/nt:termination-point
            /tet:te:
    +--rw otn-link-tp
    |  +--rw odtu-flex-type?   l1-types:odtu-flex-type
    +--rw client-svc!
       +--rw supported-client-signal*   identityref
  augment /nw:networks/nw:network/nw:node/nt:termination-point/tet:te
            /tet:interface-switching-capability/tet:max-lsp-bandwidth
            /tet:te-bandwidth/tet:technology:
    +--:(otn)
       +--rw otn-bandwidth
          +--rw odu-type?        identityref
          +--rw max-ts-number?   uint16
  augment /nw:networks/nw:network/nw:node/tet:te
            /tet:te-node-attributes/tet:connectivity-matrices
            /tet:path-constraints/tet:te-bandwidth/tet:technology:
    +--:(otn)
       +--rw otn-bandwidth
          +--rw odulist* [odu-type]
          |  +--rw odu-type     identityref
          |  +--rw number?      uint16
          |  +--rw ts-number?   uint16
          +--rw odtu-flex-type?   l1-types:odtu-flex-type
  augment /nw:networks/nw:network/nw:node/tet:te
            /tet:te-node-attributes/tet:connectivity-matrices
            /tet:connectivity-matrix/tet:path-constraints
            /tet:te-bandwidth/tet:technology:
    +--:(otn)
       +--rw otn-bandwidth
          +--rw odulist* [odu-type]
          |  +--rw odu-type     identityref
          |  +--rw number?      uint16
          |  +--rw ts-number?   uint16
          +--rw odtu-flex-type?   l1-types:odtu-flex-type
  augment /nw:networks/nw:network/nw:node/tet:te
            /tet:information-source-entry/tet:connectivity-matrices
            /tet:path-constraints/tet:te-bandwidth/tet:technology:
    +--:(otn)
       +--ro otn-bandwidth
          +--ro odulist* [odu-type]
          |  +--ro odu-type     identityref
          |  +--ro number?      uint16
          |  +--ro ts-number?   uint16
          +--ro odtu-flex-type?   l1-types:odtu-flex-type
  augment /nw:networks/nw:network/nw:node/tet:te
            /tet:information-source-entry/tet:connectivity-matrices
            /tet:connectivity-matrix/tet:path-constraints
            /tet:te-bandwidth/tet:technology:
    +--:(otn)
       +--ro otn-bandwidth
          +--ro odulist* [odu-type]
          |  +--ro odu-type     identityref
          |  +--ro number?      uint16
          |  +--ro ts-number?   uint16
          +--ro odtu-flex-type?   l1-types:odtu-flex-type
  augment /nw:networks/nw:network/nw:node/tet:te
            /tet:tunnel-termination-point/tet:client-layer-adaptation
            /tet:switching-capability/tet:te-bandwidth
            /tet:technology:
    +--:(otn)
       +--rw otn-bandwidth
          +--rw odulist* [odu-type]
          |  +--rw odu-type     identityref
          |  +--rw number?      uint16
          |  +--rw ts-number?   uint16
          +--rw odtu-flex-type?   l1-types:odtu-flex-type
  augment /nw:networks/nw:network/nw:node/tet:te
            /tet:tunnel-termination-point
            /tet:local-link-connectivities/tet:path-constraints
            /tet:te-bandwidth/tet:technology:
    +--:(otn)
       +--rw otn-bandwidth
          +--rw odulist* [odu-type]
          |  +--rw odu-type     identityref
          |  +--rw number?      uint16
          |  +--rw ts-number?   uint16
          +--rw odtu-flex-type?   l1-types:odtu-flex-type
  augment /nw:networks/nw:network/nw:node/tet:te
            /tet:tunnel-termination-point
            /tet:local-link-connectivities
            /tet:local-link-connectivity/tet:path-constraints
            /tet:te-bandwidth/tet:technology:
    +--:(otn)
       +--rw otn-bandwidth
          +--rw odulist* [odu-type]
          |  +--rw odu-type     identityref
          |  +--rw number?      uint16
          |  +--rw ts-number?   uint16
          +--rw odtu-flex-type?   l1-types:odtu-flex-type
  augment /nw:networks/nw:network/nt:link/tet:te
            /tet:te-link-attributes
            /tet:interface-switching-capability/tet:max-lsp-bandwidth
            /tet:te-bandwidth/tet:technology:
    +--:(otn)
       +--rw otn-bandwidth
          +--rw odu-type?        identityref
          +--rw max-ts-number?   uint16
  augment /nw:networks/nw:network/nt:link/tet:te
            /tet:te-link-attributes/tet:max-link-bandwidth
            /tet:te-bandwidth:
    +--rw otn-bandwidth
       +--rw odulist* [odu-type]
          +--rw odu-type     identityref
          +--rw number?      uint16
          +--rw ts-number?   uint16
  augment /nw:networks/nw:network/nt:link/tet:te
            /tet:te-link-attributes/tet:max-resv-link-bandwidth
            /tet:te-bandwidth:
    +--rw otn-bandwidth
       +--rw odulist* [odu-type]
          +--rw odu-type     identityref
          +--rw number?      uint16
          +--rw ts-number?   uint16
  augment /nw:networks/nw:network/nt:link/tet:te
            /tet:te-link-attributes/tet:unreserved-bandwidth
            /tet:te-bandwidth:
    +--rw otn-bandwidth
       +--rw odulist* [odu-type]
          +--rw odu-type     identityref
          +--rw number?      uint16
          +--rw ts-number?   uint16
  augment /nw:networks/nw:network/nt:link/tet:te
            /tet:information-source-entry
            /tet:interface-switching-capability/tet:max-lsp-bandwidth
            /tet:te-bandwidth/tet:technology:
    +--:(otn)
       +--ro otn-bandwidth
          +--ro odu-type?        identityref
          +--ro max-ts-number?   uint16
  augment /nw:networks/nw:network/nt:link/tet:te
            /tet:information-source-entry/tet:max-link-bandwidth
            /tet:te-bandwidth:
    +--ro otn-bandwidth
       +--ro odulist* [odu-type]
          +--ro odu-type     identityref
          +--ro number?      uint16
          +--ro ts-number?   uint16
  augment /nw:networks/nw:network/nt:link/tet:te
            /tet:information-source-entry/tet:max-resv-link-bandwidth
            /tet:te-bandwidth:
    +--ro otn-bandwidth
       +--ro odulist* [odu-type]
          +--ro odu-type     identityref
          +--ro number?      uint16
          +--ro ts-number?   uint16
  augment /nw:networks/nw:network/nt:link/tet:te
            /tet:information-source-entry/tet:unreserved-bandwidth
            /tet:te-bandwidth:
    +--ro otn-bandwidth
       +--ro odulist* [odu-type]
          +--ro odu-type     identityref
          +--ro number?      uint16
          +--ro ts-number?   uint16
  augment /nw:networks/tet:te/tet:templates/tet:link-template
            /tet:te-link-attributes
            /tet:interface-switching-capability/tet:max-lsp-bandwidth
            /tet:te-bandwidth/tet:technology:
    +--:(otn)
       +--rw otn-bandwidth
          +--rw odu-type?        identityref
          +--rw max-ts-number?   uint16
  augment /nw:networks/tet:te/tet:templates/tet:link-template
            /tet:te-link-attributes/tet:max-link-bandwidth
            /tet:te-bandwidth:
    +--rw otn-bandwidth
       +--rw odulist* [odu-type]
          +--rw odu-type     identityref
          +--rw number?      uint16
          +--rw ts-number?   uint16
  augment /nw:networks/tet:te/tet:templates/tet:link-template
            /tet:te-link-attributes/tet:max-resv-link-bandwidth
            /tet:te-bandwidth:
    +--rw otn-bandwidth
       +--rw odulist* [odu-type]
          +--rw odu-type     identityref
          +--rw number?      uint16
          +--rw ts-number?   uint16
  augment /nw:networks/tet:te/tet:templates/tet:link-template
            /tet:te-link-attributes/tet:unreserved-bandwidth
            /tet:te-bandwidth:
    +--rw otn-bandwidth
       +--rw odulist* [odu-type]
          +--rw odu-type     identityref
          +--rw number?      uint16
          +--rw ts-number?   uint16
  augment /nw:networks/nw:network/nw:node/tet:te
            /tet:te-node-attributes/tet:connectivity-matrices
            /tet:label-restrictions/tet:label-restriction:
    +--rw otn-label-range!
       +--rw range-type?      otn-label-range-type
       +--rw tsg?             identityref
       +--rw odu-type-list*   identityref
       +--rw priority?        uint8
  augment /nw:networks/nw:network/nw:node/tet:te
            /tet:te-node-attributes/tet:connectivity-matrices
            /tet:connectivity-matrix/tet:from/tet:label-restrictions
            /tet:label-restriction:
    +--rw otn-label-range!
       +--rw range-type?      otn-label-range-type
       +--rw tsg?             identityref
       +--rw odu-type-list*   identityref
       +--rw priority?        uint8
  augment /nw:networks/nw:network/nw:node/tet:te
            /tet:te-node-attributes/tet:connectivity-matrices
            /tet:connectivity-matrix/tet:to/tet:label-restrictions
            /tet:label-restriction:
    +--rw otn-label-range!
       +--rw range-type?      otn-label-range-type
       +--rw tsg?             identityref
       +--rw odu-type-list*   identityref
       +--rw priority?        uint8
  augment /nw:networks/nw:network/nw:node/tet:te
            /tet:information-source-entry/tet:connectivity-matrices
            /tet:label-restrictions/tet:label-restriction:
    +--ro otn-label-range!
       +--ro range-type?      otn-label-range-type
       +--ro tsg?             identityref
       +--ro odu-type-list*   identityref
       +--ro priority?        uint8
  augment /nw:networks/nw:network/nw:node/tet:te
            /tet:information-source-entry/tet:connectivity-matrices
            /tet:connectivity-matrix/tet:from/tet:label-restrictions
            /tet:label-restriction:
    +--ro otn-label-range!
       +--ro range-type?      otn-label-range-type
       +--ro tsg?             identityref
       +--ro odu-type-list*   identityref
       +--ro priority?        uint8
  augment /nw:networks/nw:network/nw:node/tet:te
            /tet:information-source-entry/tet:connectivity-matrices
            /tet:connectivity-matrix/tet:to/tet:label-restrictions
            /tet:label-restriction:
    +--ro otn-label-range!
       +--ro range-type?      otn-label-range-type
       +--ro tsg?             identityref
       +--ro odu-type-list*   identityref
       +--ro priority?        uint8
  augment /nw:networks/nw:network/nw:node/tet:te
            /tet:tunnel-termination-point
            /tet:local-link-connectivities/tet:label-restrictions
            /tet:label-restriction:
    +--rw otn-label-range!
       +--rw range-type?      otn-label-range-type
       +--rw tsg?             identityref
       +--rw odu-type-list*   identityref
       +--rw priority?        uint8
  augment /nw:networks/nw:network/nw:node/tet:te
            /tet:tunnel-termination-point
            /tet:local-link-connectivities
            /tet:local-link-connectivity/tet:label-restrictions
            /tet:label-restriction:
    +--rw otn-label-range!
       +--rw range-type?      otn-label-range-type
       +--rw tsg?             identityref
       +--rw odu-type-list*   identityref
       +--rw priority?        uint8
  augment /nw:networks/nw:network/nt:link/tet:te
            /tet:te-link-attributes/tet:label-restrictions
            /tet:label-restriction:
    +--rw otn-label-range!
       +--rw range-type?      otn-label-range-type
       +--rw tsg?             identityref
       +--rw odu-type-list*   identityref
       +--rw priority?        uint8
  augment /nw:networks/nw:network/nt:link/tet:te
            /tet:information-source-entry/tet:label-restrictions
            /tet:label-restriction:
    +--ro otn-label-range!
       +--ro range-type?      otn-label-range-type
       +--ro tsg?             identityref
       +--ro odu-type-list*   identityref
       +--ro priority?        uint8
  augment /nw:networks/tet:te/tet:templates/tet:link-template
            /tet:te-link-attributes/tet:label-restrictions
            /tet:label-restriction:
    +--rw otn-label-range!
       +--rw range-type?      otn-label-range-type
       +--rw tsg?             identityref
       +--rw odu-type-list*   identityref
       +--rw priority?        uint8
  augment /nw:networks/nw:network/nw:node/tet:te
            /tet:te-node-attributes/tet:connectivity-matrices
            /tet:label-restrictions/tet:label-restriction
            /tet:label-start/tet:te-label/tet:technology:
    +--:(otn)
       +--rw otn-label
          +--rw tpn?   otn-tpn
          +--rw ts?    otn-ts
  augment /nw:networks/nw:network/nw:node/tet:te
            /tet:te-node-attributes/tet:connectivity-matrices
            /tet:label-restrictions/tet:label-restriction
            /tet:label-end/tet:te-label/tet:technology:
    +--:(otn)
       +--rw otn-label
          +--rw tpn?   otn-tpn
          +--rw ts?    otn-ts
  augment /nw:networks/nw:network/nw:node/tet:te
            /tet:te-node-attributes/tet:connectivity-matrices
            /tet:label-restrictions/tet:label-restriction
            /tet:label-step/tet:technology:
    +--:(otn)
       +--rw otn-label-step
          +--rw tpn?   otn-tpn
          +--rw ts?    otn-ts
  augment /nw:networks/nw:network/nw:node/tet:te
            /tet:te-node-attributes/tet:connectivity-matrices
            /tet:underlay/tet:primary-path/tet:path-element/tet:type
            /tet:label/tet:label-hop/tet:te-label/tet:technology:
    +--:(otn)
       +--rw otn-label
          +--rw tpn?       otn-tpn
          +--rw tsg?       identityref
          +--rw ts-list?   string
  augment /nw:networks/nw:network/nw:node/tet:te
            /tet:te-node-attributes/tet:connectivity-matrices
            /tet:underlay/tet:backup-path/tet:path-element/tet:type
            /tet:label/tet:label-hop/tet:te-label/tet:technology:
    +--:(otn)
       +--rw otn-label
          +--rw tpn?       otn-tpn
          +--rw tsg?       identityref
          +--rw ts-list?   string
  augment /nw:networks/nw:network/nw:node/tet:te
            /tet:te-node-attributes/tet:connectivity-matrices
            /tet:optimizations/tet:algorithm/tet:metric
            /tet:optimization-metric
            /tet:explicit-route-exclude-objects
            /tet:route-object-exclude-object/tet:type/tet:label
            /tet:label-hop/tet:te-label/tet:technology:
    +--:(otn)
       +--rw otn-label
          +--rw tpn?       otn-tpn
          +--rw tsg?       identityref
          +--rw ts-list?   string
  augment /nw:networks/nw:network/nw:node/tet:te
            /tet:te-node-attributes/tet:connectivity-matrices
            /tet:optimizations/tet:algorithm/tet:metric
            /tet:optimization-metric
            /tet:explicit-route-include-objects
            /tet:route-object-include-object/tet:type/tet:label
            /tet:label-hop/tet:te-label/tet:technology:
    +--:(otn)
       +--rw otn-label
          +--rw tpn?       otn-tpn
          +--rw tsg?       identityref
          +--rw ts-list?   string
  augment /nw:networks/nw:network/nw:node/tet:te
            /tet:te-node-attributes/tet:connectivity-matrices
            /tet:path-properties/tet:path-route-objects
            /tet:path-route-object/tet:type/tet:label/tet:label-hop
            /tet:te-label/tet:technology:
    +--:(otn)
       +--ro otn-label
          +--ro tpn?       otn-tpn
          +--ro tsg?       identityref
          +--ro ts-list?   string
  augment /nw:networks/nw:network/nw:node/tet:te
            /tet:te-node-attributes/tet:connectivity-matrices
            /tet:connectivity-matrix/tet:from/tet:label-restrictions
            /tet:label-restriction/tet:label-start/tet:te-label
            /tet:technology:
    +--:(otn)
       +--rw otn-label
          +--rw tpn?   otn-tpn
          +--rw ts?    otn-ts
  augment /nw:networks/nw:network/nw:node/tet:te
            /tet:te-node-attributes/tet:connectivity-matrices
            /tet:connectivity-matrix/tet:from/tet:label-restrictions
            /tet:label-restriction/tet:label-end/tet:te-label
            /tet:technology:
    +--:(otn)
       +--rw otn-label
          +--rw tpn?   otn-tpn
          +--rw ts?    otn-ts
  augment /nw:networks/nw:network/nw:node/tet:te
            /tet:te-node-attributes/tet:connectivity-matrices
            /tet:connectivity-matrix/tet:from/tet:label-restrictions
            /tet:label-restriction/tet:label-step/tet:technology:
    +--:(otn)
       +--rw otn-label-step
          +--rw tpn?   otn-tpn
          +--rw ts?    otn-ts
  augment /nw:networks/nw:network/nw:node/tet:te
            /tet:te-node-attributes/tet:connectivity-matrices
            /tet:connectivity-matrix/tet:to/tet:label-restrictions
            /tet:label-restriction/tet:label-start/tet:te-label
            /tet:technology:
    +--:(otn)
       +--rw otn-label
          +--rw tpn?   otn-tpn
          +--rw ts?    otn-ts
  augment /nw:networks/nw:network/nw:node/tet:te
            /tet:te-node-attributes/tet:connectivity-matrices
            /tet:connectivity-matrix/tet:to/tet:label-restrictions
            /tet:label-restriction/tet:label-end/tet:te-label
            /tet:technology:
    +--:(otn)
       +--rw otn-label
          +--rw tpn?   otn-tpn
          +--rw ts?    otn-ts
  augment /nw:networks/nw:network/nw:node/tet:te
            /tet:te-node-attributes/tet:connectivity-matrices
            /tet:connectivity-matrix/tet:to/tet:label-restrictions
            /tet:label-restriction/tet:label-step/tet:technology:
    +--:(otn)
       +--rw otn-label-step
          +--rw tpn?   otn-tpn
          +--rw ts?    otn-ts
  augment /nw:networks/nw:network/nw:node/tet:te
            /tet:te-node-attributes/tet:connectivity-matrices
            /tet:connectivity-matrix/tet:underlay/tet:primary-path
            /tet:path-element/tet:type/tet:label/tet:label-hop
            /tet:te-label/tet:technology:
    +--:(otn)
       +--rw otn-label
          +--rw tpn?       otn-tpn
          +--rw tsg?       identityref
          +--rw ts-list?   string
  augment /nw:networks/nw:network/nw:node/tet:te
            /tet:te-node-attributes/tet:connectivity-matrices
            /tet:connectivity-matrix/tet:underlay/tet:backup-path
            /tet:path-element/tet:type/tet:label/tet:label-hop
            /tet:te-label/tet:technology:
    +--:(otn)
       +--rw otn-label
          +--rw tpn?       otn-tpn
          +--rw tsg?       identityref
          +--rw ts-list?   string
  augment /nw:networks/nw:network/nw:node/tet:te
            /tet:te-node-attributes/tet:connectivity-matrices
            /tet:connectivity-matrix/tet:optimizations/tet:algorithm
            /tet:metric/tet:optimization-metric
            /tet:explicit-route-exclude-objects
            /tet:route-object-exclude-object/tet:type/tet:label
            /tet:label-hop/tet:te-label/tet:technology:
    +--:(otn)
       +--rw otn-label
          +--rw tpn?       otn-tpn
          +--rw tsg?       identityref
          +--rw ts-list?   string
  augment /nw:networks/nw:network/nw:node/tet:te
            /tet:te-node-attributes/tet:connectivity-matrices
            /tet:connectivity-matrix/tet:optimizations/tet:algorithm
            /tet:metric/tet:optimization-metric
            /tet:explicit-route-include-objects
            /tet:route-object-include-object/tet:type/tet:label
            /tet:label-hop/tet:te-label/tet:technology:
    +--:(otn)
       +--rw otn-label
          +--rw tpn?       otn-tpn
          +--rw tsg?       identityref
          +--rw ts-list?   string
  augment /nw:networks/nw:network/nw:node/tet:te
            /tet:te-node-attributes/tet:connectivity-matrices
            /tet:connectivity-matrix/tet:path-properties
            /tet:path-route-objects/tet:path-route-object/tet:type
            /tet:label/tet:label-hop/tet:te-label/tet:technology:
    +--:(otn)
       +--ro otn-label
          +--ro tpn?       otn-tpn
          +--ro tsg?       identityref
          +--ro ts-list?   string
  augment /nw:networks/nw:network/nw:node/tet:te
            /tet:information-source-entry/tet:connectivity-matrices
            /tet:label-restrictions/tet:label-restriction
            /tet:label-start/tet:te-label/tet:technology:
    +--:(otn)
       +--ro otn-label
          +--ro tpn?   otn-tpn
          +--ro ts?    otn-ts
  augment /nw:networks/nw:network/nw:node/tet:te
            /tet:information-source-entry/tet:connectivity-matrices
            /tet:label-restrictions/tet:label-restriction
            /tet:label-end/tet:te-label/tet:technology:
    +--:(otn)
       +--ro otn-label
          +--ro tpn?   otn-tpn
          +--ro ts?    otn-ts
  augment /nw:networks/nw:network/nw:node/tet:te
            /tet:information-source-entry/tet:connectivity-matrices
            /tet:label-restrictions/tet:label-restriction
            /tet:label-step/tet:technology:
    +--:(otn)
       +--ro otn-label-step
          +--ro tpn?   otn-tpn
          +--ro ts?    otn-ts
  augment /nw:networks/nw:network/nw:node/tet:te
            /tet:information-source-entry/tet:connectivity-matrices
            /tet:underlay/tet:primary-path/tet:path-element/tet:type
            /tet:label/tet:label-hop/tet:te-label/tet:technology:
    +--:(otn)
       +--ro otn-label
          +--ro tpn?       otn-tpn
          +--ro tsg?       identityref
          +--ro ts-list?   string
  augment /nw:networks/nw:network/nw:node/tet:te
            /tet:information-source-entry/tet:connectivity-matrices
            /tet:underlay/tet:backup-path/tet:path-element/tet:type
            /tet:label/tet:label-hop/tet:te-label/tet:technology:
    +--:(otn)
       +--ro otn-label
          +--ro tpn?       otn-tpn
          +--ro tsg?       identityref
          +--ro ts-list?   string
  augment /nw:networks/nw:network/nw:node/tet:te
            /tet:information-source-entry/tet:connectivity-matrices
            /tet:optimizations/tet:algorithm/tet:metric
            /tet:optimization-metric
            /tet:explicit-route-exclude-objects
            /tet:route-object-exclude-object/tet:type/tet:label
            /tet:label-hop/tet:te-label/tet:technology:
    +--:(otn)
       +--ro otn-label
          +--ro tpn?       otn-tpn
          +--ro tsg?       identityref
          +--ro ts-list?   string
  augment /nw:networks/nw:network/nw:node/tet:te
            /tet:information-source-entry/tet:connectivity-matrices
            /tet:optimizations/tet:algorithm/tet:metric
            /tet:optimization-metric
            /tet:explicit-route-include-objects
            /tet:route-object-include-object/tet:type/tet:label
            /tet:label-hop/tet:te-label/tet:technology:
    +--:(otn)
       +--ro otn-label
          +--ro tpn?       otn-tpn
          +--ro tsg?       identityref
          +--ro ts-list?   string
  augment /nw:networks/nw:network/nw:node/tet:te
            /tet:information-source-entry/tet:connectivity-matrices
            /tet:path-properties/tet:path-route-objects
            /tet:path-route-object/tet:type/tet:label/tet:label-hop
            /tet:te-label/tet:technology:
    +--:(otn)
       +--ro otn-label
          +--ro tpn?       otn-tpn
          +--ro tsg?       identityref
          +--ro ts-list?   string
  augment /nw:networks/nw:network/nw:node/tet:te
            /tet:information-source-entry/tet:connectivity-matrices
            /tet:connectivity-matrix/tet:from/tet:label-restrictions
            /tet:label-restriction/tet:label-start/tet:te-label
            /tet:technology:
    +--:(otn)
       +--ro otn-label
          +--ro tpn?   otn-tpn
          +--ro ts?    otn-ts
  augment /nw:networks/nw:network/nw:node/tet:te
            /tet:information-source-entry/tet:connectivity-matrices
            /tet:connectivity-matrix/tet:from/tet:label-restrictions
            /tet:label-restriction/tet:label-end/tet:te-label
            /tet:technology:
    +--:(otn)
       +--ro otn-label
          +--ro tpn?   otn-tpn
          +--ro ts?    otn-ts
  augment /nw:networks/nw:network/nw:node/tet:te
            /tet:information-source-entry/tet:connectivity-matrices
            /tet:connectivity-matrix/tet:from/tet:label-restrictions
            /tet:label-restriction/tet:label-step/tet:technology:
    +--:(otn)
       +--ro otn-label-step
          +--ro tpn?   otn-tpn
          +--ro ts?    otn-ts
  augment /nw:networks/nw:network/nw:node/tet:te
            /tet:information-source-entry/tet:connectivity-matrices
            /tet:connectivity-matrix/tet:to/tet:label-restrictions
            /tet:label-restriction/tet:label-start/tet:te-label
            /tet:technology:
    +--:(otn)
       +--ro otn-label
          +--ro tpn?   otn-tpn
          +--ro ts?    otn-ts
  augment /nw:networks/nw:network/nw:node/tet:te
            /tet:information-source-entry/tet:connectivity-matrices
            /tet:connectivity-matrix/tet:to/tet:label-restrictions
            /tet:label-restriction/tet:label-end/tet:te-label
            /tet:technology:
    +--:(otn)
       +--ro otn-label
          +--ro tpn?   otn-tpn
          +--ro ts?    otn-ts
  augment /nw:networks/nw:network/nw:node/tet:te
            /tet:information-source-entry/tet:connectivity-matrices
            /tet:connectivity-matrix/tet:to/tet:label-restrictions
            /tet:label-restriction/tet:label-step/tet:technology:
    +--:(otn)
       +--ro otn-label-step
          +--ro tpn?   otn-tpn
          +--ro ts?    otn-ts
  augment /nw:networks/nw:network/nw:node/tet:te
            /tet:information-source-entry/tet:connectivity-matrices
            /tet:connectivity-matrix/tet:underlay/tet:primary-path
            /tet:path-element/tet:type/tet:label/tet:label-hop
            /tet:te-label/tet:technology:
    +--:(otn)
       +--ro otn-label
          +--ro tpn?       otn-tpn
          +--ro tsg?       identityref
          +--ro ts-list?   string
  augment /nw:networks/nw:network/nw:node/tet:te
            /tet:information-source-entry/tet:connectivity-matrices
            /tet:connectivity-matrix/tet:underlay/tet:backup-path
            /tet:path-element/tet:type/tet:label/tet:label-hop
            /tet:te-label/tet:technology:
    +--:(otn)
       +--ro otn-label
          +--ro tpn?       otn-tpn
          +--ro tsg?       identityref
          +--ro ts-list?   string
  augment /nw:networks/nw:network/nw:node/tet:te
            /tet:information-source-entry/tet:connectivity-matrices
            /tet:connectivity-matrix/tet:optimizations/tet:algorithm
            /tet:metric/tet:optimization-metric
            /tet:explicit-route-exclude-objects
            /tet:route-object-exclude-object/tet:type/tet:label
            /tet:label-hop/tet:te-label/tet:technology:
    +--:(otn)
       +--ro otn-label
          +--ro tpn?       otn-tpn
          +--ro tsg?       identityref
          +--ro ts-list?   string
  augment /nw:networks/nw:network/nw:node/tet:te
            /tet:information-source-entry/tet:connectivity-matrices
            /tet:connectivity-matrix/tet:optimizations/tet:algorithm
            /tet:metric/tet:optimization-metric
            /tet:explicit-route-include-objects
            /tet:route-object-include-object/tet:type/tet:label
            /tet:label-hop/tet:te-label/tet:technology:
    +--:(otn)
       +--ro otn-label
          +--ro tpn?       otn-tpn
          +--ro tsg?       identityref
          +--ro ts-list?   string
  augment /nw:networks/nw:network/nw:node/tet:te
            /tet:information-source-entry/tet:connectivity-matrices
            /tet:connectivity-matrix/tet:path-properties
            /tet:path-route-objects/tet:path-route-object/tet:type
            /tet:label/tet:label-hop/tet:te-label/tet:technology:
    +--:(otn)
       +--ro otn-label
          +--ro tpn?       otn-tpn
          +--ro tsg?       identityref
          +--ro ts-list?   string
  augment /nw:networks/nw:network/nw:node/tet:te
            /tet:tunnel-termination-point
            /tet:local-link-connectivities/tet:label-restrictions
            /tet:label-restriction/tet:label-start/tet:te-label
            /tet:technology:
    +--:(otn)
       +--rw otn-label
          +--rw tpn?   otn-tpn
          +--rw ts?    otn-ts
  augment /nw:networks/nw:network/nw:node/tet:te
            /tet:tunnel-termination-point
            /tet:local-link-connectivities/tet:label-restrictions
            /tet:label-restriction/tet:label-end/tet:te-label
            /tet:technology:
    +--:(otn)
       +--rw otn-label
          +--rw tpn?   otn-tpn
          +--rw ts?    otn-ts
  augment /nw:networks/nw:network/nw:node/tet:te
            /tet:tunnel-termination-point
            /tet:local-link-connectivities/tet:label-restrictions
            /tet:label-restriction/tet:label-step/tet:technology:
    +--:(otn)
       +--rw otn-label-step
          +--rw tpn?   otn-tpn
          +--rw ts?    otn-ts
  augment /nw:networks/nw:network/nw:node/tet:te
            /tet:tunnel-termination-point
            /tet:local-link-connectivities/tet:underlay
            /tet:primary-path/tet:path-element/tet:type/tet:label
            /tet:label-hop/tet:te-label/tet:technology:
    +--:(otn)
       +--rw otn-label
          +--rw tpn?       otn-tpn
          +--rw tsg?       identityref
          +--rw ts-list?   string
  augment /nw:networks/nw:network/nw:node/tet:te
            /tet:tunnel-termination-point
            /tet:local-link-connectivities/tet:underlay
            /tet:backup-path/tet:path-element/tet:type/tet:label
            /tet:label-hop/tet:te-label/tet:technology:
    +--:(otn)
       +--rw otn-label
          +--rw tpn?       otn-tpn
          +--rw tsg?       identityref
          +--rw ts-list?   string
  augment /nw:networks/nw:network/nw:node/tet:te
            /tet:tunnel-termination-point
            /tet:local-link-connectivities/tet:optimizations
            /tet:algorithm/tet:metric/tet:optimization-metric
            /tet:explicit-route-exclude-objects
            /tet:route-object-exclude-object/tet:type/tet:label
            /tet:label-hop/tet:te-label/tet:technology:
    +--:(otn)
       +--rw otn-label
          +--rw tpn?       otn-tpn
          +--rw tsg?       identityref
          +--rw ts-list?   string
  augment /nw:networks/nw:network/nw:node/tet:te
            /tet:tunnel-termination-point
            /tet:local-link-connectivities/tet:optimizations
            /tet:algorithm/tet:metric/tet:optimization-metric
            /tet:explicit-route-include-objects
            /tet:route-object-include-object/tet:type/tet:label
            /tet:label-hop/tet:te-label/tet:technology:
    +--:(otn)
       +--rw otn-label
          +--rw tpn?       otn-tpn
          +--rw tsg?       identityref
          +--rw ts-list?   string
  augment /nw:networks/nw:network/nw:node/tet:te
            /tet:tunnel-termination-point
            /tet:local-link-connectivities/tet:path-properties
            /tet:path-route-objects/tet:path-route-object/tet:type
            /tet:label/tet:label-hop/tet:te-label/tet:technology:
    +--:(otn)
       +--ro otn-label
          +--ro tpn?       otn-tpn
          +--ro tsg?       identityref
          +--ro ts-list?   string
  augment /nw:networks/nw:network/nw:node/tet:te
            /tet:tunnel-termination-point
            /tet:local-link-connectivities
            /tet:local-link-connectivity/tet:label-restrictions
            /tet:label-restriction/tet:label-start/tet:te-label
            /tet:technology:
    +--:(otn)
       +--rw otn-label
          +--rw tpn?   otn-tpn
          +--rw ts?    otn-ts
  augment /nw:networks/nw:network/nw:node/tet:te
            /tet:tunnel-termination-point
            /tet:local-link-connectivities
            /tet:local-link-connectivity/tet:label-restrictions
            /tet:label-restriction/tet:label-end/tet:te-label
            /tet:technology:
    +--:(otn)
       +--rw otn-label
          +--rw tpn?   otn-tpn
          +--rw ts?    otn-ts
  augment /nw:networks/nw:network/nw:node/tet:te
            /tet:tunnel-termination-point
            /tet:local-link-connectivities
            /tet:local-link-connectivity/tet:label-restrictions
            /tet:label-restriction/tet:label-step/tet:technology:
    +--:(otn)
       +--rw otn-label-step
          +--rw tpn?   otn-tpn
          +--rw ts?    otn-ts
  augment /nw:networks/nw:network/nw:node/tet:te
            /tet:tunnel-termination-point
            /tet:local-link-connectivities
            /tet:local-link-connectivity/tet:underlay
            /tet:primary-path/tet:path-element/tet:type/tet:label
            /tet:label-hop/tet:te-label/tet:technology:
    +--:(otn)
       +--rw otn-label
          +--rw tpn?       otn-tpn
          +--rw tsg?       identityref
          +--rw ts-list?   string
  augment /nw:networks/nw:network/nw:node/tet:te
            /tet:tunnel-termination-point
            /tet:local-link-connectivities
            /tet:local-link-connectivity/tet:underlay/tet:backup-path
            /tet:path-element/tet:type/tet:label/tet:label-hop
            /tet:te-label/tet:technology:
    +--:(otn)
       +--rw otn-label
          +--rw tpn?       otn-tpn
          +--rw tsg?       identityref
          +--rw ts-list?   string
  augment /nw:networks/nw:network/nw:node/tet:te
            /tet:tunnel-termination-point
            /tet:local-link-connectivities
            /tet:local-link-connectivity/tet:optimizations
            /tet:algorithm/tet:metric/tet:optimization-metric
            /tet:explicit-route-exclude-objects
            /tet:route-object-exclude-object/tet:type/tet:label
            /tet:label-hop/tet:te-label/tet:technology:
    +--:(otn)
       +--rw otn-label
          +--rw tpn?       otn-tpn
          +--rw tsg?       identityref
          +--rw ts-list?   string
  augment /nw:networks/nw:network/nw:node/tet:te
            /tet:tunnel-termination-point
            /tet:local-link-connectivities
            /tet:local-link-connectivity/tet:optimizations
            /tet:algorithm/tet:metric/tet:optimization-metric
            /tet:explicit-route-include-objects
            /tet:route-object-include-object/tet:type/tet:label
            /tet:label-hop/tet:te-label/tet:technology:
    +--:(otn)
       +--rw otn-label
          +--rw tpn?       otn-tpn
          +--rw tsg?       identityref
          +--rw ts-list?   string
  augment /nw:networks/nw:network/nw:node/tet:te
            /tet:tunnel-termination-point
            /tet:local-link-connectivities
            /tet:local-link-connectivity/tet:path-properties
            /tet:path-route-objects/tet:path-route-object/tet:type
            /tet:label/tet:label-hop/tet:te-label/tet:technology:
    +--:(otn)
       +--ro otn-label
          +--ro tpn?       otn-tpn
          +--ro tsg?       identityref
          +--ro ts-list?   string
  augment /nw:networks/nw:network/nt:link/tet:te
            /tet:te-link-attributes/tet:underlay/tet:primary-path
            /tet:path-element/tet:type/tet:label/tet:label-hop
            /tet:te-label/tet:technology:
    +--:(otn)
       +--rw otn-label
          +--rw tpn?       otn-tpn
          +--rw tsg?       identityref
          +--rw ts-list?   string
  augment /nw:networks/nw:network/nt:link/tet:te
            /tet:te-link-attributes/tet:underlay/tet:backup-path
            /tet:path-element/tet:type/tet:label/tet:label-hop
            /tet:te-label/tet:technology:
    +--:(otn)
       +--rw otn-label
          +--rw tpn?       otn-tpn
          +--rw tsg?       identityref
          +--rw ts-list?   string
  augment /nw:networks/nw:network/nt:link/tet:te
            /tet:te-link-attributes/tet:label-restrictions
            /tet:label-restriction/tet:label-start/tet:te-label
            /tet:technology:
    +--:(otn)
       +--rw otn-label
          +--rw tpn?   otn-tpn
          +--rw ts?    otn-ts
  augment /nw:networks/nw:network/nt:link/tet:te
            /tet:te-link-attributes/tet:label-restrictions
            /tet:label-restriction/tet:label-end/tet:te-label
            /tet:technology:
    +--:(otn)
       +--rw otn-label
          +--rw tpn?   otn-tpn
          +--rw ts?    otn-ts
  augment /nw:networks/nw:network/nt:link/tet:te
            /tet:te-link-attributes/tet:label-restrictions
            /tet:label-restriction/tet:label-step/tet:technology:
    +--:(otn)
       +--rw otn-label-step
          +--rw tpn?   otn-tpn
          +--rw ts?    otn-ts
  augment /nw:networks/nw:network/nt:link/tet:te
            /tet:information-source-entry/tet:label-restrictions
            /tet:label-restriction/tet:label-start/tet:te-label
            /tet:technology:
    +--:(otn)
       +--ro otn-label
          +--ro tpn?   otn-tpn
          +--ro ts?    otn-ts
  augment /nw:networks/nw:network/nt:link/tet:te
            /tet:information-source-entry/tet:label-restrictions
            /tet:label-restriction/tet:label-end/tet:te-label
            /tet:technology:
    +--:(otn)
       +--ro otn-label
          +--ro tpn?   otn-tpn
          +--ro ts?    otn-ts
  augment /nw:networks/nw:network/nt:link/tet:te
            /tet:information-source-entry/tet:label-restrictions
            /tet:label-restriction/tet:label-step/tet:technology:
    +--:(otn)
       +--ro otn-label-step
          +--ro tpn?   otn-tpn
          +--ro ts?    otn-ts
  augment /nw:networks/tet:te/tet:templates/tet:link-template
            /tet:te-link-attributes/tet:underlay/tet:primary-path
            /tet:path-element/tet:type/tet:label/tet:label-hop
            /tet:te-label/tet:technology:
    +--:(otn)
       +--rw otn-label
          +--rw tpn?       otn-tpn
          +--rw tsg?       identityref
          +--rw ts-list?   string
  augment /nw:networks/tet:te/tet:templates/tet:link-template
            /tet:te-link-attributes/tet:underlay/tet:backup-path
            /tet:path-element/tet:type/tet:label/tet:label-hop
            /tet:te-label/tet:technology:
    +--:(otn)
       +--rw otn-label
          +--rw tpn?       otn-tpn
          +--rw tsg?       identityref
          +--rw ts-list?   string
  augment /nw:networks/tet:te/tet:templates/tet:link-template
            /tet:te-link-attributes/tet:label-restrictions
            /tet:label-restriction/tet:label-start/tet:te-label
            /tet:technology:
    +--:(otn)
       +--rw otn-label
          +--rw tpn?   otn-tpn
          +--rw ts?    otn-ts
  augment /nw:networks/tet:te/tet:templates/tet:link-template
            /tet:te-link-attributes/tet:label-restrictions
            /tet:label-restriction/tet:label-end/tet:te-label
            /tet:technology:
    +--:(otn)
       +--rw otn-label
          +--rw tpn?   otn-tpn
          +--rw ts?    otn-ts
  augment /nw:networks/tet:te/tet:templates/tet:link-template
            /tet:te-link-attributes/tet:label-restrictions
            /tet:label-restriction/tet:label-step/tet:technology:
    +--:(otn)
       +--rw otn-label-step
          +--rw tpn?   otn-tpn
          +--rw ts?    otn-ts

  grouping label-range-info:
    +-- otn-label-range!
       +-- range-type?      otn-label-range-type
       +-- tsg?             identityref
       +-- odu-type-list*   identityref
       +-- priority?        uint8
]]></artwork>
    </section>
    <section anchor="json-examples">
      <name>JSON Examples</name>
      <t>This appendix contains an example of an instance data tree in JSON
encoding <xref target="RFC7951"/>.</t>
      <t>The example instantiates the "ietf-otn-topology" model for the OTN
topology depicted in <xref target="fig-example"/> below.</t>
      <t>The OTN topology consists of three nodes (D1, D2, and D3) with three
link termination (LTPs) each: two LTPs which terminates the links
that belongs to the OTN topology and one LTP which terminates inter-
domain links, as defined in <xref target="RFC8795"/>.</t>
      <t>The OTN links within the OTN network are 100G OTN links while the
links at the edge of the network are 10G links.  All these OTN links
support ODU4, ODU2 and ODU0 connections.  The link between nodes D1
and D2 also supports ODUflex.</t>
      <t>The OTN links within the OTN network are bidirectional and
symmetrical: for this reasons, the link attributes (e.g., support for
OTN switching capability or transparent client signal and the OTN
maximum link bandwidth) are instantiated only on the link
representing the forward direction, while the link representing the
reverse direction are instantiated without any link attribute (other
than the name) to indicate that the OTN links are bidirectional and
symmetrical.</t>
      <t>The link between nodes D1 and D2 is an example of a multi-function
link, as defined in <xref target="sec-attributes"/>, which can support both OTN and 100G
client signal (e.g., 100GE): the interface-switching-capability list
indicates support for OTN switching capability and the client-svc
presence container is instantiated.</t>
      <t>For the LTPs which terminate OTN links, only the identifiers
information is instantiated.  All the other properties are defined in
the links they terminate.</t>
      <t>For the LTPs at the edge network, additional properties are
instantiated to indicate whether the link can support OTN or
transparent client signals.  In particular:</t>
      <ul spacing="normal">
        <li>
          <t>LTP 1 on Node D1 is an example of an LTP terminating a multi-
function access link, as defined in <xref target="sec-attributes"/>, which can support
both OTN and 10G client signals (e.g., 10GE and STM-64): the
interface-switching-capability list indicates support for OTN
switching capability and the client-svc presence container is
instantiated;</t>
        </li>
        <li>
          <t>LTP 2 on Node D2 is an example of an LTP which can support only
10G OTN (ODU2) signal: the interface-switching-capability list
indicates support for OTN switching capability and the client-svc
presence container is not instantiated;</t>
        </li>
        <li>
          <t>LTP 3 on Node D3 is an example of an LTP which can support only
10G (e.g., 10GE and STM-64) client signals: the interface-
switching-capability list does not indicate support for OTN
switching capability and the client-svc presence container is
instantiated.</t>
        </li>
      </ul>
      <figure anchor="fig-example">
        <name>Example of OTN topology</name>
        <artwork type="ascii-art"><![CDATA[
                   +------------+                   +------------+
                   |     D1     |                   |     D2     |
                  /-\          /-\                 /-\          /-\
                  | | 1        | |---------------->| | 1        | |
                  | |        2 | |<----------------| |        2 | |
                  \-/    3     \-/                 \-/    3     \-/
                   |   /----\   |                   |   /----\   |
                   +---|    |---+                   +---|    |---+
                       \----/                           \----/
                        A  |                             A  |
                        |  |                             |  |
                        |  |                             |  |
                        |  |       +------------+        |  |
                        |  |       |     D3     |        |  |
                        |  |      /-\          /-\       |  |
                        |  +----->| | 1        | |-------+  |
                        +---------| |        2 | |<---------+
                                  \-/    3     \-/
                                   |   /----\   |
                                   +---|    |---+
                                       \----/
]]></artwork>
      </figure>
      <sourcecode type="json"><![CDATA[
=============== NOTE: '\' line wrapping per RFC 8792 ================

{
  "ietf-network:networks": {
    "network": [
      {
        "network-id": "example:otn-topology-example",
        "network-types": {
          "ietf-te-topology:te-topology": {
            "ietf-otn-topology:otn-topology": {}
          }
        },
        "ietf-te-topology:te-topology-identifier": {
          "topology-id": "otn-topology-example"
        },
        "ietf-te-topology:te": {},
        "node": [
          {
            "node-id": "example:D1",
            "ietf-te-topology:te-node-id": "192.0.0.1",
            "ietf-te-topology:te": {
              "te-node-attributes": {
                "name": "Node D1",
                "ietf-otn-topology:otn-node": {}
              }
            },
            "ietf-network-topology:termination-point": [
              {
                "tp-id": "example:D1-1",
                "ietf-te-topology:te-tp-id": 1,
                "ietf-te-topology:te": {
                  "name": "Interface 1 of Node D1",
                  "interface-switching-capability": [
                    {
                      "switching-capability": "ietf-te-types:\
                                                      switching-otn",
                      "encoding": "ietf-te-types:lsp-encoding-oduk"
                    }
                  ],
                  "ietf-otn-topology:client-svc": {
                    "supported-client-signal": [
                      "ietf-layer1-types:ETH-10Gb-LAN",
                      "ietf-layer1-types:STM-64"
                    ]
                  }
                }
              },
              {
                "tp-id": "example:D1-2",
                "ietf-te-topology:te-tp-id": 1,
                "ietf-te-topology:te": {
                  "name": "Interface 2 of Node D1"
                }
              },
              {
                "tp-id": "example:D1-3",
                "ietf-te-topology:te-tp-id": 1,
                "ietf-te-topology:te": {
                  "name": "Interface 3 of Node D1"
                }
              }
            ]
          },
          {
            "node-id": "example:D2",
            "ietf-te-topology:te-node-id": "192.0.0.2",
            "ietf-te-topology:te": {
              "te-node-attributes": {
                "name": "Node D2",
                "ietf-otn-topology:otn-node": {}
              }
            },
            "ietf-network-topology:termination-point": [
              {
                "tp-id": "example:D2-1",
                "ietf-te-topology:te-tp-id": 1,
                "ietf-te-topology:te": {
                  "name": "Interface 1 of Node D2"
                }
              },
              {
                "tp-id": "example:D2-2",
                "ietf-te-topology:te-tp-id": 1,
                "ietf-te-topology:te": {
                  "name": "Interface 2 of Node D2",
                  "interface-switching-capability": [
                    {
                      "switching-capability": "ietf-te-types:\
                                                      switching-otn",
                      "encoding": "ietf-te-types:lsp-encoding-oduk"
                    }
                  ]
                }
              },
              {
                "tp-id": "example:D2-3",
                "ietf-te-topology:te-tp-id": 1,
                "ietf-te-topology:te": {
                  "name": "Interface 3 of Node D2"
                }
              }
            ]
          },
          {
            "node-id": "example:D3",
            "ietf-te-topology:te-node-id": "192.0.0.3",
            "ietf-te-topology:te": {
              "te-node-attributes": {
                "name": "Node D3",
                "ietf-otn-topology:otn-node": {}
              }
            },
            "ietf-network-topology:termination-point": [
              {
                "tp-id": "example:D3-1",
                "ietf-te-topology:te-tp-id": 1,
                "ietf-te-topology:te": {
                  "name": "Interface 1 of Node D3"
                }
              },
              {
                "tp-id": "example:D3-2",
                "ietf-te-topology:te-tp-id": 1,
                "ietf-te-topology:te": {
                  "name": "Interface 2 of Node D3"
                }
              },
              {
                "tp-id": "example:D3-3",
                "ietf-te-topology:te-tp-id": 1,
                "ietf-te-topology:te": {
                  "name": "Interface 3 of Node D3",
                  "ietf-otn-topology:client-svc": {
                    "supported-client-signal": [
                      "ietf-layer1-types:ETH-10Gb-LAN",
                      "ietf-layer1-types:STM-64"
                    ]
                  }
                }
              }
            ]
          }
        ],
        "ietf-network-topology:link": [
          {
            "link-id": "example:link/D1-2/D2-1",
            "ietf-te-topology:te": {
              "te-link-attributes": {
                "name": "Link between Node D1 and Node D2 (forward \
                                                         direction)",
                "interface-switching-capability": [
                  {
                    "switching-capability": "ietf-te-types:switching\
                                                               -otn",
                    "encoding": "ietf-te-types:lsp-encoding-oduk"
                  }
                ],
                "max-link-bandwidth": {
                  "te-bandwidth": {
                    "ietf-otn-topology:otn-bandwidth": {
                      "odulist": [
                        {
                          "odu-type": "ietf-layer1-types:ODU4",
                          "number": 1
                        },
                        {
                          "odu-type": "ietf-layer1-types:ODU2",
                          "number": 10
                        },
                        {
                          "odu-type": "ietf-layer1-types:ODU0",
                          "number": 80
                        },
                        {
                          "odu-type": "ietf-layer1-types:ODUflex",
                          "number": 80,
                          "ts-number": 80
                        }
                      ]
                    }
                  }
                },
                "ietf-otn-topology:otn-link": {
                  "odtu-flex-type": "4"
                },
                "ietf-otn-topology:client-svc": {
                  "supported-client-signal": [
                    "ietf-layer1-types:ETH-100Gb"
                  ]
                }
              }
            }
          },
          {
            "link-id": "example:link/D2-1/D1-2",
            "ietf-te-topology:te": {
              "te-link-attributes": {
                "name": "Link between Node D1 and Node D2 (reverse \
                                                          direction)"
              }
            }
          },
          {
            "link-id": "example:link/D2-3/D3-2",
            "ietf-te-topology:te": {
              "te-link-attributes": {
                "name": "Link between Node D2 and Node D3 (forward \
                                                         direction)",
                "interface-switching-capability": [
                  {
                    "switching-capability": "ietf-te-types:switching\
                                                               -otn",
                    "encoding": "ietf-te-types:lsp-encoding-oduk"
                  }
                ],
                "max-link-bandwidth": {
                  "te-bandwidth": {
                    "ietf-otn-topology:otn-bandwidth": {
                      "odulist": [
                        {
                          "odu-type": "ietf-layer1-types:ODU4",
                          "number": 1
                        },
                        {
                          "odu-type": "ietf-layer1-types:ODU2",
                          "number": 10
                        },
                        {
                          "odu-type": "ietf-layer1-types:ODU0",
                          "number": 80
                        }
                      ]
                    }
                  }
                }
              }
            }
          },
          {
            "link-id": "example:link/D3-2/D2-3",
            "ietf-te-topology:te": {
              "te-link-attributes": {
                "name": "Link between Node D2 and Node D3 (reverse \
                                                          direction)"
              }
            }
          },
          {
            "link-id": "example:link/D3-1/D1-3",
            "ietf-te-topology:te": {
              "te-link-attributes": {
                "name": "Link between Node D1 and Node D3 (reverse \
                                                          direction)"
              }
            }
          },
          {
            "link-id": "example:link/D1-3/D3-1",
            "ietf-te-topology:te": {
              "te-link-attributes": {
                "name": "Link between Node D1 and Node D3 (forward \
                                                         direction)",
                "interface-switching-capability": [
                  {
                    "switching-capability": "ietf-te-types:switching\
                                                               -otn",
                    "encoding": "ietf-te-types:lsp-encoding-oduk"
                  }
                ],
                "max-link-bandwidth": {
                  "te-bandwidth": {
                    "ietf-otn-topology:otn-bandwidth": {
                      "odulist": [
                        {
                          "odu-type": "ietf-layer1-types:ODU4",
                          "number": 1
                        },
                        {
                          "odu-type": "ietf-layer1-types:ODU2",
                          "number": 10
                        },
                        {
                          "odu-type": "ietf-layer1-types:ODU0",
                          "number": 80
                        }
                      ]
                    }
                  }
                }
              }
            }
          }
        ]
      }
    ]
  }
}
]]></sourcecode>
    </section>
    <section numbered="false" anchor="acknowledgments">
      <name>Acknowledgments</name>
      <t>We would like to thank Igor Bryskin, Zhe Liu, Zheyu Fan and Daniele
Ceccarelli for their comments and discussions.</t>
    </section>
    <section anchor="contributors" numbered="false" toc="include" removeInRFC="false">
      <name>Contributors</name>
      <contact initials="A." surname="Guo" fullname="Aihua Guo">
        <organization>Futurewei</organization>
        <address>
          <email>aihuaguo.ietf@gmail.com</email>
        </address>
      </contact>
      <contact initials="A." surname="Sharma" fullname="Anurag Sharma">
        <organization>Google</organization>
        <address>
          <email>ansha@google.com</email>
        </address>
      </contact>
      <contact initials="Y." surname="Xu" fullname="Yunbin Xu">
        <organization>CAICT</organization>
        <address>
          <email>xuyunbin@caict.ac.cn</email>
        </address>
      </contact>
      <contact initials="L." surname="Wang" fullname="Lei Wang">
        <organization>China Mobile</organization>
        <address>
          <email>wangleiyj@chinamobile.com</email>
        </address>
      </contact>
      <contact initials="B." surname="Rao" fullname="Baoquan Rao">
        <organization>Huawei Technologies</organization>
        <address>
          <email>raobaoquan@huawei.com</email>
        </address>
      </contact>
      <contact initials="X." surname="Zhang" fullname="Xian Zhang">
        <organization>Huawei Technologies</organization>
        <address>
          <email>zhang.xian@huawei.com</email>
        </address>
      </contact>
      <contact initials="H." surname="van Helvoort" fullname="Huub van Helvoort">
        <organization>Hai Gaoming BV</organization>
        <address>
          <email>huubatwork@gmail.com</email>
        </address>
      </contact>
      <contact initials="V." surname="Lopez" fullname="Victor Lopez">
        <organization>Nokia</organization>
        <address>
          <email>victor.lopez@nokia.com</email>
        </address>
      </contact>
      <contact initials="Y." surname="Li" fullname="Yunbo Li">
        <organization>China Mobile</organization>
        <address>
          <email>liyunbo@chinamobile.com</email>
        </address>
      </contact>
      <contact initials="D." surname="Beller" fullname="Dieter Beller">
        <organization>Nokia</organization>
        <address>
          <email>dieter.beller@nokia.com</email>
        </address>
      </contact>
      <contact initials="Y." surname="Zheng" fullname="Yanlei Zheng">
        <organization>China Unicom</organization>
        <address>
          <email>zhengyanlei@chinaunicom.cn</email>
        </address>
      </contact>
    </section>
  </back>
  <!-- ##markdown-source:
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

-->

</rfc>
