<?xml version="1.0" encoding="utf-8"?>
  <?xml-stylesheet type="text/xsl" href="rfc2629.xslt" ?>
  <!-- generated by https://github.com/cabo/kramdown-rfc version 1.6.17 (Ruby 2.7.0) -->


<!DOCTYPE rfc  [
  <!ENTITY nbsp    "&#160;">
  <!ENTITY zwsp   "&#8203;">
  <!ENTITY nbhy   "&#8209;">
  <!ENTITY wj     "&#8288;">

]>

<?rfc comments="yes"?>

<rfc ipr="trust200902" docName="draft-ietf-ccamp-eth-client-te-topo-yang-06" category="std" consensus="true" submissionType="IETF" tocInclude="true" sortRefs="true" symRefs="true">
  <front>
    <title abbrev="ETH Topology Transport YANG Model">A YANG Data Model for Ethernet TE Topology</title>

    <author initials="C." surname="Yu" fullname="Chaode Yu">
      <organization>Huawei Technologies</organization>
      <address>
        <email>yuchaode@huawei.com</email>
      </address>
    </author>
    <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="A." surname="Guo" fullname="Aihua Guo">
      <organization>Futurewei</organization>
      <address>
        <email>aihuaguo@futurewei.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="Y." surname="Xu" fullname="Yunbin Xu">
      <organization>CAICT</organization>
      <address>
        <email>xuyunbin@caict.ac.cn</email>
      </address>
    </author>
    <author initials="Y." surname="Zhao" fullname="Yang Zhao">
      <organization>China Mobile</organization>
      <address>
        <email>zhaoyangyjy@chinamobile.com</email>
      </address>
    </author>
    <author initials="X." surname="Liu" fullname="Xufeng Liu">
      <organization>Alef Edge</organization>
      <address>
        <email>xufeng.liu.ietf@gmail.com</email>
      </address>
    </author>

    <date year="2024" month="April" day="12"/>

    
    <workgroup>CCAMP Working Group</workgroup>
    

    <abstract>


<t>This document describes a YANG data model for Ethernet networks when used either as a client-layer network of an underlay transport network (e.g., an Optical Transport Network (OTN)) or as a transport network itself.</t>



    </abstract>



  </front>

  <middle>


<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.</t>

<t>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>An Ethernet network can be either a client-layer network of an underlay transport network or a transport network itself.</t>

<t>This document describes a YANG data model for Ethernet networks when used as a client-layer network of an underlay transport network (e.g., an Optical Transport Network (OTN)) or as a transport network technology.</t>

<t>The YANG model defined in this document augments from the TE topology YANG model defined in <xref target="RFC8795"/>, and imports from the generic Ethernet types defined in <xref target="I-D.ietf-ccamp-client-signal-yang"/>.</t>

<t>The YANG data model in this document conforms to the Network Management Datastore Architecture defined in <xref target="RFC8342"/>.</t>

<section anchor="terminology-and-notations"><name>Terminology and Notations</name>

<t>The following terms are defined in <xref target="RFC7950"/> and are not redefined
here:</t>

<t><list style="symbols">
  <t>client</t>
  <t>server</t>
  <t>augment</t>
  <t>data model</t>
  <t>data node</t>
</list></t>

<t>The following terms are defined in <xref target="RFC6241"/> and are not redefined
here:</t>

<t><list style="symbols">
  <t>configuration data</t>
  <t>state data</t>
</list></t>

<t>The terminology for describing YANG data models is found in
<xref target="RFC7950"/>.</t>

</section>
<section anchor="tree-diagram"><name>Tree Diagram</name>

<t>A simplified graphical representation of the data model is used in
<xref target="eth-topology-tree"/> of 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>

<t>In this document, 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>

<texttable title="Prefixes and corresponding YANG modules" anchor="tab-prefixes">
      <ttcol align='left'>Prefix</ttcol>
      <ttcol align='left'>YANG module</ttcol>
      <ttcol align='left'>Reference</ttcol>
      <c>yang</c>
      <c>ietf-yang-types</c>
      <c><xref target="RFC6991"/></c>
      <c>etht-types</c>
      <c>ietf-eth-tran-types</c>
      <c>[RFCYYYY]</c>
      <c>nw</c>
      <c>ietf-network</c>
      <c><xref target="RFC8345"/></c>
      <c>nt</c>
      <c>ietf-network-topology</c>
      <c><xref target="RFC8345"/></c>
      <c>tet</c>
      <c>ietf-te-topology</c>
      <c><xref target="RFC8795"/></c>
      <c>etht</c>
      <c>ietf-eth-te-topology</c>
      <c>RFCXXXX</c>
</texttable>

<t>RFC Editor Note: Please replace YYYY and XXXX with the number
assigned to the RFC once this draft becomes an RFC.</t>

</section>
</section>
<section anchor="eth-topo-overview"><name>Ethernet Topology Model Overview</name>

<t>This document aims to describe the data model for Ethernet topology.</t>

<t>As a classic Traffic-engineering (TE) technology, Ethernet can provide packet
switching in transport network <xref target="ITU_G.8021"/>.</t>

<t>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 section 6 of <xref 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 Ethernet network.  Common types, identities and groupings defined in
<xref target="I-D.ietf-ccamp-client-signal-yang"/> 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-eth-topo"/> shows the augmentation relationship.</t>

<figure title="Relationship between Ethernet and TE topology models" anchor="fig-eth-topo"><artwork type="ascii-art"><![CDATA[
                      +-------------------------+
         TE generic   |    ietf-te-topology     |
                      +------------+------------+
                                   ^
                                   |
                                   | Augments
                                   |
                      +------------+------------+
         Ethernet     |  ietf-eth-te-topology   |
                      +-------------------------+
]]></artwork></figure>

<t>The entities and TE attributes, such as node, termination points and
   links, are still applicable for describing an Ethernet topology and the
   model presented in this document only specifies technology-specific
   attributes/information.</t>

<section anchor="attributes-augmentation"><name>Attributes Augmentation</name>

<t>Given the guidance for augmentation in <xref target="RFC8795"/>, the following
  technology-specific augmentations need to be provided:</t>

<t><list style="symbols">
  <t>A network-type to indicate that the TE topology is an Ethernet
Topology, as follow:</t>
</list></t>

<figure><artwork><![CDATA[
       augment /nw:networks/nw:network/nw:network-types/tet:te-topology:
         +--rw eth-tran-topology!
]]></artwork></figure>

<t><list style="symbols">
  <t>TE Bandwidth Augmentations as described in <xref target="eth-bandwidth"/>.</t>
  <t>TE Label Augmentations as described in <xref target="eth-label"/>.</t>
</list></t>

</section>
<section anchor="eth-bandwidth"><name>TE Bandwidth Augmentations</name>

<t>Following the guidelines in <xref target="RFC8795"/>, the model augments
all the occurrences of the te-bandwidth container with the Ethernet technology
specific attributes using the eth-bandwidth grouping defined in <xref target="I-D.ietf-ccamp-client-signal-yang"/>.</t>

</section>
<section anchor="eth-label"><name>TE Label Augmentations</name>

<t>The model augments all the occurrences of the label-restriction list
with Ethernet technology specific attributes using the eth-label-restriction grouping defined in <xref target="I-D.ietf-ccamp-client-signal-yang"/>.</t>

<t>Moreover, following the guidelines in <xref target="RFC8795"/>, the model augments
all the occurrences of the te-label container with the Ethernet technology
specific attributes using the eth-label and
eth-label-step groupings defined in <xref target="I-D.ietf-ccamp-client-signal-yang"/>.</t>

</section>
</section>
<section anchor="eth-topology-tree"><name>YANG Tree for Ethernet Topology</name>

<figure title="Ethernet topology YANG tree" anchor="fig-eth-topology-tree"><artwork type="ascii-art" name="ietf-eth-te-topology.tree"><![CDATA[
module: ietf-eth-te-topology

  augment /nw:networks/nw:network/nw:network-types/tet:te-topology:
    +--rw eth-tran-topology!
  augment /nw:networks/nw:network/nw:node/tet:te
            /tet:te-node-attributes:
    +--rw eth-node!
  augment /nw:networks/nw:network/nt:link:
    +--rw eth-svc!
  augment /nw:networks/nw:network/nw:node/nt:termination-point:
    +--rw eth-svc!
    |  +--rw supported-classification
    |  |  +--rw port-classification?   boolean
    |  |  +--rw vlan-classification
    |  |     +--rw vlan-tag-classification?   boolean
    |  |     +--rw outer-tag
    |  |     |  +--rw supported-tag-types*
    |  |     |  |       etht-types:eth-tag-classify
    |  |     |  +--rw vlan-bundling?         boolean
    |  |     |  +--rw vlan-range?
    |  |     |          etht-types:vid-range-type
    |  |     +--rw second-tag
    |  |        +--rw second-tag-classification?   boolean
    |  |        +--rw supported-tag-types*
    |  |        |       etht-types:eth-tag-classify
    |  |        +--rw vlan-bundling?               boolean
    |  |        +--rw vlan-range?
    |  |                etht-types:vid-range-type
    |  +--rw supported-vlan-operations
    |     +--rw asymmetrical-operations?       boolean
    |     +--rw transparent-vlan-operations?   boolean
    |     +--rw vlan-pop
    |     |  +--rw vlan-pop-operations?   boolean
    |     |  +--rw max-pop-tags?          uint8
    |     +--rw vlan-push
    |        +--rw vlan-push-operation?   boolean
    |        +--rw outer-tag
    |        |  +--rw supported-tag-types*   etht-types:eth-tag-type
    |        |  +--rw vlan-range?
    |        |          etht-types:vid-range-type
    |        +--rw second-tag
    |           +--rw push-second-tag?       boolean
    |           +--rw supported-tag-types*   etht-types:eth-tag-type
    |           +--rw vlan-range?
    |                   etht-types:vid-range-type
    +--rw eth-link-tp
       +--rw ltp-mac-address?
       |       yang:mac-address
       +--rw port-vlan-id?
       |       etht-types:vlanid
       +--rw maximum-frame-size?                       uint16
       +--rw (direction)?
          +--:(symmetrical)
          |  +--rw ingress-egress-bandwidth-profile
          |     +--rw bandwidth-profile-type?
          |     |       etht-types:bandwidth-profile-type
          |     +--rw CIR?                      uint64
          |     +--rw CBS?                      uint64
          |     +--rw EIR?                      uint64
          |     +--rw EBS?                      uint64
          |     +--rw color-aware?              boolean
          |     +--rw coupling-flag?            boolean
          +--:(asymmetrical)
             +--rw ingress-bandwidth-profile
             |  +--rw bandwidth-profile-type?
             |  |       etht-types:bandwidth-profile-type
             |  +--rw CIR?                      uint64
             |  +--rw CBS?                      uint64
             |  +--rw EIR?                      uint64
             |  +--rw EBS?                      uint64
             |  +--rw color-aware?              boolean
             |  +--rw coupling-flag?            boolean
             +--rw egress-bandwidth-profile
                +--rw bandwidth-profile-type?
                |       etht-types:bandwidth-profile-type
                +--rw CIR?                      uint64
                +--rw CBS?                      uint64
                +--rw EIR?                      uint64
                +--rw EBS?                      uint64
                +--rw color-aware?              boolean
                +--rw coupling-flag?            boolean
  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:
    +--:(eth)
       +--rw eth-bandwidth?   uint64
  augment /nw:networks/nw:network/nw:node/tet:te
            /tet:te-node-attributes/tet:connectivity-matrices
            /tet:path-constraints/tet:te-bandwidth/tet:technology:
    +--:(eth)
       +--rw eth-bandwidth?   uint64
  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:
    +--:(eth)
       +--rw eth-bandwidth?   uint64
  augment /nw:networks/nw:network/nw:node/tet:te
            /tet:information-source-entry/tet:connectivity-matrices
            /tet:path-constraints/tet:te-bandwidth/tet:technology:
    +--:(eth)
       +--ro eth-bandwidth?   uint64
  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:
    +--:(eth)
       +--ro eth-bandwidth?   uint64
  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:
    +--:(eth)
       +--rw eth-bandwidth?   uint64
  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:
    +--:(eth)
       +--rw eth-bandwidth?   uint64
  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:
    +--:(eth)
       +--rw eth-bandwidth?   uint64
  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:
    +--:(eth)
       +--rw eth-bandwidth?   uint64
  augment /nw:networks/nw:network/nt:link/tet:te
            /tet:te-link-attributes/tet:max-link-bandwidth
            /tet:te-bandwidth:
    +--rw eth-bandwidth?   uint64
  augment /nw:networks/nw:network/nt:link/tet:te
            /tet:te-link-attributes/tet:max-resv-link-bandwidth
            /tet:te-bandwidth:
    +--rw eth-bandwidth?   uint64
  augment /nw:networks/nw:network/nt:link/tet:te
            /tet:te-link-attributes/tet:unreserved-bandwidth
            /tet:te-bandwidth:
    +--rw eth-bandwidth?   uint64
  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:
    +--:(eth)
       +--ro eth-bandwidth?   uint64
  augment /nw:networks/nw:network/nt:link/tet:te
            /tet:information-source-entry/tet:max-link-bandwidth
            /tet:te-bandwidth:
    +--ro eth-bandwidth?   uint64
  augment /nw:networks/nw:network/nt:link/tet:te
            /tet:information-source-entry/tet:max-resv-link-bandwidth
            /tet:te-bandwidth:
    +--ro eth-bandwidth?   uint64
  augment /nw:networks/nw:network/nt:link/tet:te
            /tet:information-source-entry/tet:unreserved-bandwidth
            /tet:te-bandwidth:
    +--ro eth-bandwidth?   uint64
  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:
    +--:(eth)
       +--rw eth-bandwidth?   uint64
  augment /nw:networks/tet:te/tet:templates/tet:link-template
            /tet:te-link-attributes/tet:max-link-bandwidth
            /tet:te-bandwidth:
    +--rw eth-bandwidth?   uint64
  augment /nw:networks/tet:te/tet:templates/tet:link-template
            /tet:te-link-attributes/tet:max-resv-link-bandwidth
            /tet:te-bandwidth:
    +--rw eth-bandwidth?   uint64
  augment /nw:networks/tet:te/tet:templates/tet:link-template
            /tet:te-link-attributes/tet:unreserved-bandwidth
            /tet:te-bandwidth:
    +--rw eth-bandwidth?   uint64
  augment /nw:networks/nw:network/nw:node/tet:te
            /tet:te-node-attributes/tet:connectivity-matrices
            /tet:label-restrictions/tet:label-restriction:
    +--rw ethernet-label-range!
       +--rw tag-type?   etht-types:eth-tag-type
       +--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 ethernet-label-range!
       +--rw tag-type?   etht-types:eth-tag-type
       +--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 ethernet-label-range!
       +--rw tag-type?   etht-types:eth-tag-type
       +--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 ethernet-label-range!
       +--ro tag-type?   etht-types:eth-tag-type
       +--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 ethernet-label-range!
       +--ro tag-type?   etht-types:eth-tag-type
       +--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 ethernet-label-range!
       +--ro tag-type?   etht-types:eth-tag-type
       +--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 ethernet-label-range!
       +--rw tag-type?   etht-types:eth-tag-type
       +--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 ethernet-label-range!
       +--rw tag-type?   etht-types:eth-tag-type
       +--rw priority?   uint8
  augment /nw:networks/nw:network/nt:link/tet:te
            /tet:te-link-attributes/tet:label-restrictions
            /tet:label-restriction:
    +--rw ethernet-label-range!
       +--rw tag-type?   etht-types:eth-tag-type
       +--rw priority?   uint8
  augment /nw:networks/nw:network/nt:link/tet:te
            /tet:information-source-entry/tet:label-restrictions
            /tet:label-restriction:
    +--ro ethernet-label-range!
       +--ro tag-type?   etht-types:eth-tag-type
       +--ro priority?   uint8
  augment /nw:networks/tet:te/tet:templates/tet:link-template
            /tet:te-link-attributes/tet:label-restrictions
            /tet:label-restriction:
    +--rw ethernet-label-range!
       +--rw tag-type?   etht-types:eth-tag-type
       +--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:
    +--:(eth)
       +--rw vlanid?   etht-types:vlanid
  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:
    +--:(eth)
       +--rw vlanid?   etht-types:vlanid
  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:
    +--:(eth)
       +--rw eth-step?   uint16
  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:
    +--:(eth)
       +--rw vlanid?   etht-types:vlanid
  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:
    +--:(eth)
       +--rw vlanid?   etht-types:vlanid
  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:
    +--:(eth)
       +--rw vlanid?   etht-types:vlanid
  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:
    +--:(eth)
       +--rw vlanid?   etht-types:vlanid
  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:
    +--:(eth)
       +--ro vlanid?   etht-types:vlanid
  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:
    +--:(eth)
       +--rw vlanid?   etht-types:vlanid
  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:
    +--:(eth)
       +--rw vlanid?   etht-types:vlanid
  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:
    +--:(eth)
       +--rw eth-step?   uint16
  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:
    +--:(eth)
       +--rw vlanid?   etht-types:vlanid
  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:
    +--:(eth)
       +--rw vlanid?   etht-types:vlanid
  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:
    +--:(eth)
       +--rw eth-step?   uint16
  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:
    +--:(eth)
       +--rw vlanid?   etht-types:vlanid
  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:
    +--:(eth)
       +--rw vlanid?   etht-types:vlanid
  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:
    +--:(eth)
       +--rw vlanid?   etht-types:vlanid
  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:
    +--:(eth)
       +--rw vlanid?   etht-types:vlanid
  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:
    +--:(eth)
       +--ro vlanid?   etht-types:vlanid
  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:
    +--:(eth)
       +--ro vlanid?   etht-types:vlanid
  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:
    +--:(eth)
       +--ro vlanid?   etht-types:vlanid
  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:
    +--:(eth)
       +--ro eth-step?   uint16
  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:
    +--:(eth)
       +--ro vlanid?   etht-types:vlanid
  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:
    +--:(eth)
       +--ro vlanid?   etht-types:vlanid
  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:
    +--:(eth)
       +--ro vlanid?   etht-types:vlanid
  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:
    +--:(eth)
       +--ro vlanid?   etht-types:vlanid
  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:
    +--:(eth)
       +--ro vlanid?   etht-types:vlanid
  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:
    +--:(eth)
       +--ro vlanid?   etht-types:vlanid
  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:
    +--:(eth)
       +--ro vlanid?   etht-types:vlanid
  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:
    +--:(eth)
       +--ro eth-step?   uint16
  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:
    +--:(eth)
       +--ro vlanid?   etht-types:vlanid
  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:
    +--:(eth)
       +--ro vlanid?   etht-types:vlanid
  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:
    +--:(eth)
       +--ro eth-step?   uint16
  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:
    +--:(eth)
       +--ro vlanid?   etht-types:vlanid
  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:
    +--:(eth)
       +--ro vlanid?   etht-types:vlanid
  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:
    +--:(eth)
       +--ro vlanid?   etht-types:vlanid
  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:
    +--:(eth)
       +--ro vlanid?   etht-types:vlanid
  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:
    +--:(eth)
       +--ro vlanid?   etht-types:vlanid
  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:
    +--:(eth)
       +--rw vlanid?   etht-types:vlanid
  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:
    +--:(eth)
       +--rw vlanid?   etht-types:vlanid
  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:
    +--:(eth)
       +--rw eth-step?   uint16
  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:
    +--:(eth)
       +--rw vlanid?   etht-types:vlanid
  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:
    +--:(eth)
       +--rw vlanid?   etht-types:vlanid
  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:
    +--:(eth)
       +--rw vlanid?   etht-types:vlanid
  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:
    +--:(eth)
       +--rw vlanid?   etht-types:vlanid
  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:
    +--:(eth)
       +--ro vlanid?   etht-types:vlanid
  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:
    +--:(eth)
       +--rw vlanid?   etht-types:vlanid
  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:
    +--:(eth)
       +--rw vlanid?   etht-types:vlanid
  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:
    +--:(eth)
       +--rw eth-step?   uint16
  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:
    +--:(eth)
       +--rw vlanid?   etht-types:vlanid
  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:
    +--:(eth)
       +--rw vlanid?   etht-types:vlanid
  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:
    +--:(eth)
       +--rw vlanid?   etht-types:vlanid
  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:
    +--:(eth)
       +--rw vlanid?   etht-types:vlanid
  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:
    +--:(eth)
       +--ro vlanid?   etht-types:vlanid
  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:
    +--:(eth)
       +--rw vlanid?   etht-types:vlanid
  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:
    +--:(eth)
       +--rw vlanid?   etht-types:vlanid
  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:
    +--:(eth)
       +--rw vlanid?   etht-types:vlanid
  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:
    +--:(eth)
       +--rw vlanid?   etht-types:vlanid
  augment /nw:networks/nw:network/nt:link/tet:te
            /tet:te-link-attributes/tet:label-restrictions
            /tet:label-restriction/tet:label-step/tet:technology:
    +--:(eth)
       +--rw eth-step?   uint16
  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:
    +--:(eth)
       +--ro vlanid?   etht-types:vlanid
  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:
    +--:(eth)
       +--ro vlanid?   etht-types:vlanid
  augment /nw:networks/nw:network/nt:link/tet:te
            /tet:information-source-entry/tet:label-restrictions
            /tet:label-restriction/tet:label-step/tet:technology:
    +--:(eth)
       +--ro eth-step?   uint16
  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:
    +--:(eth)
       +--rw vlanid?   etht-types:vlanid
  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:
    +--:(eth)
       +--rw vlanid?   etht-types:vlanid
  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:
    +--:(eth)
       +--rw vlanid?   etht-types:vlanid
  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:
    +--:(eth)
       +--rw vlanid?   etht-types:vlanid
  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:
    +--:(eth)
       +--rw eth-step?   uint16
]]></artwork></figure>

</section>
<section anchor="eth-topology-yang"><name>Ethernet Topology YANG Code</name>

<figure title="Ethernet topology YANG module" anchor="fig-te-yang"><sourcecode type="yang" markers="true" name="ietf-eth-te-topology@2023-09-08.yang"><![CDATA[
module ietf-eth-te-topology {
  yang-version 1.1;
  namespace "urn:ietf:params:xml:ns:yang:ietf-eth-te-topology";
  prefix "etht";

  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-yang-types {
    prefix "yang";
    reference
     "RFC 6991: Common YANG Data Types";
  }

  import ietf-eth-tran-types {
    prefix "etht-types";
    reference
     "RFC YYYY: A YANG Data Model for Transport Network Client 
     Signals";
  }
  // RFC Ed.: replace YYYY with actual RFC number, update date
  // information 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: Aihua Guo
       <mailto:aihuaguo.ietf@gmail.com>

     Editor: Yunbin Xu
       <mailto:xuyunbin@caict.ac.cn>

     Editor: Yang Zhao
       <mailto:zhaoyangyjy@chinamobile.com>

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

  description
    "This module defines a YANG data model for describing
     layer-2 Ethernet transport topologies. The model fully
     conforms to the Network Management Datastore
     Architecture (NMDA).

     Copyright (c) 2023 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 2023-09-28 {
    description
      "Initial Revision";
    reference
      "RFC XXXX: A YANG Data Model for Ethernet TE Topology";
    // RFC Ed.: replace XXXX with actual RFC number, update date
    // information and remove this note
  }

  /*
   * Groupings
   */

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

      This grouping SHOULD be used together with the
      eth-label and eth-label-step groupings to provide Ethernet 
      technology-specific label information to the models which
      use the label-restriction-info grouping defined in the module
      ietf-te-types.";

    container ethernet-label-range {
      presence
        "Indicates the label range is an Ethernet label range.

        This container must not be present if there are other
        presence containers or attributes indicating another type
        of label range.";
      description
        "Ethernet-specific label range related information.";

      uses etht-types:eth-label-restriction; 
    }
  }

  grouping eth-tran-topology-type {
    description
      "Identifies the Ethernet Transport topology type";

    container eth-tran-topology {
      presence "indicates a topology type of
                Ethernet Transport Network.";
      description "Eth transport topology type";
    }
  }

  grouping ltp-bandwidth-profiles {
    description
      "A grouping which represents the bandwidth profile(s)
      for the ETH LTP.";

    choice direction {
      description
        "Whether the bandwidth profiles are symmetrical or
         asymmetrical";
      case symmetrical {
        description
          "The same bandwidth profile is used to describe the ingress
           and the egress bandwidth profile.";

        container ingress-egress-bandwidth-profile {
          description
            "The bandwith profile used in the ingress and egress
             direction.";
          uses etht-types:etht-bandwidth-profiles;
        }
      }
      case asymmetrical {
        description
          "Different ingress and egress bandwidth profiles
           can be specified.";
        container ingress-bandwidth-profile {
          description
            "The bandwidth profile used in the ingress direction.";
          uses etht-types:etht-bandwidth-profiles;
        }
        container egress-bandwidth-profile {
          description
            "The bandwidth profile used in the egress direction.";
          uses etht-types:etht-bandwidth-profiles;
        }
      }
    }
  }

  grouping eth-ltp-attributes {
    description
      "Ethernet transport Link Termination Point (LTP) attributes";

    leaf ltp-mac-address {
      type yang:mac-address;
      description
        "The MAC address of the Ethernet LTP.";
    }
    leaf port-vlan-id {
      type etht-types:vlanid;
      description
        "The Port VLAN ID of the Ethernet LTP.";
      reference
        "IEEE 802.1Q: Virtual Bridged Local Area Networks";
    }
    leaf maximum-frame-size {
      type uint16 {
        range "64 .. 65535";
      }
      description
        "Maximum frame size";
      reference
        "IEEE 802.1Q: Virtual Bridged Local Area Networks";
    }
      uses ltp-bandwidth-profiles;
  }

  grouping svc-vlan-classification {
    description
      "Grouping defining the capabilities for VLAN classification.";

    leaf-list supported-tag-types {
      type etht-types:eth-tag-classify;
      description
        "List of VLAN tag types that can be used for the VLAN
         classification. In case VLAN classification is not
         supported, the list is empty.";
    }
    leaf vlan-bundling {
      type boolean;
      description
        "In case VLAN classification is supported, indicates whether
        VLAN bundling classification is also supported.";
      reference
        "MEF 10.3: Ethernet Services Attributes Phase 3";
    }
    leaf vlan-range {
      type etht-types:vid-range-type;
      description
        "In case VLAN classification is supported, indicates the
        of available VLAN ID values.";
    }
  }

  grouping svc-vlan-push {
    description
      "Grouping defining the capabilities for VLAN push or swap
       operations.";

    leaf-list supported-tag-types {
      type etht-types:eth-tag-type;
      description
        "List of VLAN tag types that can be used to push or swap a
         VLAN tag. In case VLAN push/swap is not supported, the list
         is empty.";
      reference
        "IEEE 802.1Q: Virtual Bridged Local Area Networks";
    }
    leaf vlan-range {
      type etht-types:vid-range-type;
      description
        "In case VLAN push/swap operation is supported, the range
        of available VLAN ID values.";
    }
  }

  grouping eth-svc-attributes {
    description
      "Ethernet Link Termination Point (LTP) service attributes.";

    container supported-classification {
      description
        "Service classification capability supported by the 
        Ethernet Link Termination Point (LTP).";

      leaf port-classification {
        type boolean;
        description
          "Indicates that the ETH LTP support port-based service
          classification.";
      }
      container vlan-classification {
        description
          "Service classification capabilities based on the VLAN
           tag(s) supported by the ETH LTP.";

        leaf vlan-tag-classification {
          type boolean;
          description
            "Indicates that the ETH LTP supports VLAN service
            classification.";
        }
        container outer-tag {
          description
            "Service classification capabilities based on the outer
             VLAN tag, supported by the ETH LTP.";
          uses svc-vlan-classification;
        }
        container second-tag {
          description
            "Service classification capabilities based on the second
             VLAN tag, supported by the ETH LTP.";
          leaf second-tag-classification {
            type boolean;
            must ". = 'false' or " 
               + "../../vlan-tag-classification = 'true'" {
              description
                "VLAN service classification based on the second 
                VLAN tag can be supported only when VLAN service 
                classification";
            }
            description
              "Indicates that the ETH LTP support  VLAN service
               classification based on the second VLAN tag.";
          }
          uses svc-vlan-classification;
        }
      }
    }

    container supported-vlan-operations {
      description
        "Reports the VLAN operations supported by the ETH LTP.";

      leaf asymmetrical-operations {
        type boolean;
        description
          "Indicates whether the ETH LTP supports also asymmetrical
           VLAN operations.It is assumed that symmetrical VLAN
           operations are alwyas supported.";
      }
      leaf transparent-vlan-operations {
        type boolean;
        description
          "Indicates that the ETH LTP supports transparent
          operations.";
      }
      container vlan-pop {
        description
          "Indicates VLAN pop or swap operations capabilities.";

        leaf vlan-pop-operations {
          type boolean;
          description
            "Indicates that the ETH LTP supports VLAN pop or
             swap operations.";
        }
        leaf max-pop-tags {
          type uint8 {
            range "1..2";
          }
          description
            "Indicates the maximum number of tags that can be
             popped/swapped.";
        }
      }
      container vlan-push {
        description
          "Indicates VLAN push or swap operations capabilities.";

        leaf vlan-push-operation {
          type boolean;
          description
            "Indicates that the ETH LTP supports VLAN push or
             swap operations.";
        }
        container outer-tag {
          description
            "Indicates the supported VLAN operation capabilities
             on the outer VLAN tag.";
          uses svc-vlan-push;
        }
        container second-tag {
          description
            "Indicates the supported VLAN operation capabilities
             on the second VLAN tag.";
          leaf push-second-tag {
            type boolean;
            description
              "Indicates that the ETH LTP supports VLAN push or swap
               operations for the second VLAN tag.";
          }
          uses svc-vlan-push;
        }
      }
    }
  }

  /*
   * Data nodes
   */

  augment "/nw:networks/nw:network/nw:network-types/"
        + "tet:te-topology" {
    description
      "Augment network types to include ETH transport newtork";

    uses eth-tran-topology-type;
  }

  augment "/nw:networks/nw:network/nw:node/tet:te"
        + "/tet:te-node-attributes" {
    when "../../../nw:network-types/tet:te-topology/"
       + "etht:eth-tran-topology" {
      description "Augment only for Ethernet transport network.";
    }
    description "Augment TE node attributes.";
    container eth-node {
      presence "The TE node is an Ethernet node.";
      description
        "Presence container used only to indicate that the TE node 
        is an Ethernet node.";
    }
  }

  augment "/nw:networks/nw:network/nt:link" {
    when "../nw:network-types/tet:te-topology/"
       + "etht:eth-tran-topology" {
      description "Augment only for Ethernet transport network.";
    }
    description "Augment link configuration";

    container eth-svc {
      presence
        "When present, indicates that the Link supports Ethernet 
        client signals.";
      description
        "Presence container used only to indicate that the link 
        supports Ethernet client signals.";
    }
  }

  augment "/nw:networks/nw:network/nw:node/nt:termination-point" {
    when "../../nw:network-types/tet:te-topology/"
       + "etht:eth-tran-topology" {
      description "Augment only for Ethernet transport network.";
    }
    description
      "Augment ETH LTP attributes";

    container eth-svc {
      presence
        "When present, indicates that the Link Termination Point 
        (LTP) supports Ethernet client signals.";
      description
        "ETH LTP Service attributes.";

      uses eth-svc-attributes;
    }
    container eth-link-tp {
      description
        "Attributes of the Ethernet Link Termination Point (LTP).";
      uses eth-ltp-attributes;
    }
  }

  /*
   * 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/"
       + "etht:eth-tran-topology" {
      description
        "Augmentation parameters apply only for networks with
        Ethernet topology type.";
    }
    description
      "Augment maximum LSP TE bandwidth for the link termination
       point (LTP).";
    case eth {
      uses etht-types:eth-bandwidth;
    }
  }

  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/"
       + "etht:eth-tran-topology" {
      description
        "Augmentation parameters apply only for networks with
        Ethernet topology type.";
    }
    description
      "Augment TE bandwidth path constraints of the TE node
       connectivity matrices.";
    case eth {
      uses etht-types:eth-bandwidth;
    }
  }

  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/"
       + "etht:eth-tran-topology" {
      description
        "Augmentation parameters apply only for networks with
        Ethernet topology type.";
    }
    description
      "Augment TE bandwidth path constraints of the
       connectivity matrix entry.";
    case eth {
      uses etht-types:eth-bandwidth;
    }
  }

  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/"
       + "etht:eth-tran-topology" {
      description
        "Augmentation parameters apply only for networks with
        Ethernet topology type.";
    }
    description
      "Augment TE bandwidth path constraints of the TE node
       connectivity matrices information source.";
    case eth {
      uses etht-types:eth-bandwidth;
    }
  }

  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/"
       + "etht:eth-tran-topology" {
      description
        "Augmentation parameters apply only for networks with
        Ethernet topology type.";
    }
    description
      "Augment TE bandwidth path constraints of the
       connectivity matrix entry information source";
    case eth {
      uses etht-types:eth-bandwidth;
    }
  }

  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/"
       + "etht:eth-tran-topology" {
      description
        "Augmentation parameters apply only for networks with
        Ethernet topology type.";
    }
    description
      "Augment client TE bandwidth of the tunnel termination point
       (TTP)";
    case eth {
      uses etht-types:eth-bandwidth;
    }
  }

  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/"
       + "etht:eth-tran-topology" {
      description
        "Augmentation parameters apply only for networks with
        Ethernet topology type.";
    }
    description
      "Augment TE bandwidth path constraints for the TTP
       Local Link Connectivities.";
    case eth {
      uses etht-types:eth-bandwidth;
    }
  }

  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/"
       + "etht:eth-tran-topology" {
      description
        "Augmentation parameters apply only for networks with
        Ethernet topology type.";
    }
    description
      "Augment TE bandwidth path constraints for the TTP
       Local Link Connectivity entry.";
    case eth {
      uses etht-types:eth-bandwidth;
    }
  }

  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/"
       + "etht:eth-tran-topology" {
      description
        "Augmentation parameters apply only for networks with
        Ethernet topology type.";
    }
    description
      "Augment maximum LSP TE bandwidth for the TE link.";
    case eth {
      uses etht-types:eth-bandwidth;
    }
  }

  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/"
       + "etht:eth-tran-topology" {
      description
        "Augmentation parameters apply only for networks with
        Ethernet topology type.";
    }
    description
      "Augment maximum TE bandwidth for the TE link";
    uses etht-types:eth-bandwidth;
  }

  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/"
       + "etht:eth-tran-topology" {
      description
        "Augmentation parameters apply only for networks with
        Ethernet topology type.";
    }
    description
      "Augment maximum reservable TE bandwidth for the TE link";
    uses etht-types:eth-bandwidth;
  }

  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/"
       + "etht:eth-tran-topology" {
      description
        "Augmentation parameters apply only for networks with
        Ethernet topology type.";
    }
    description
      "Augment unreserved TE bandwidth for the TE Link";
    uses etht-types:eth-bandwidth;
  }

  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/"
       + "etht:eth-tran-topology" {
      description
        "Augmentation parameters apply only for networks with
        Ethernet topology type.";
    }
    description
      "Augment maximum LSP TE bandwidth for the TE link
       information source";
    case eth {
      uses etht-types:eth-bandwidth;
    }
  }

  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/"
       + "etht:eth-tran-topology" {
      description
        "Augmentation parameters apply only for networks with
        Ethernet topology type.";
    }
    description
      "Augment maximum TE bandwidth for the TE link
       information source";
    uses etht-types:eth-bandwidth;
  }

  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/"
       + "etht:eth-tran-topology" {
      description
        "Augmentation parameters apply only for networks with
        Ethernet topology type.";
    }
    description
      "Augment maximum reservable TE bandwidth for the TE link
       information-source";
    uses etht-types:eth-bandwidth;
  }

  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/"
       + "etht:eth-tran-topology" {
      description
        "Augmentation parameters apply only for networks with
        Ethernet topology type.";
    }
    description
      "Augment unreserved TE bandwidth of the TE link
       information source";
    uses etht-types:eth-bandwidth;
  }

  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 eth {
      uses etht-types:eth-bandwidth;
    }
  }

  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 etht-types:eth-bandwidth;
  }

  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 etht-types:eth-bandwidth;
  }

  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 etht-types:eth-bandwidth;
  }

  /*
   * 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/"
       + "etht:eth-tran-topology" {
      description
        "Augmentation parameters apply only for networks with
        Ethernet 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/"
       + "etht:eth-tran-topology" {
      description
        "Augmentation parameters apply only for networks with
        Ethernet 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/"
       + "etht:eth-tran-topology" {
      description
        "Augmentation parameters apply only for networks with
        Ethernet 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/"
       + "etht:eth-tran-topology" {
      description
        "Augmentation parameters apply only for networks with
        Ethernet 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/"
       + "etht:eth-tran-topology" {
      description
        "Augmentation parameters apply only for networks with
        Ethernet 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/"
       + "etht:eth-tran-topology" {
      description
        "Augmentation parameters apply only for networks with
        Ethernet 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/"
       + "etht:eth-tran-topology" {
      description
        "Augmentation parameters apply only for networks with
        Ethernet 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/"
       + "etht:eth-tran-topology" {
      description
        "Augmentation parameters apply only for networks with
        Ethernet 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/"
       + "etht:eth-tran-topology" {
      description
        "Augmentation parameters apply only for networks with
        Ethernet 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/"
       + "etht:eth-tran-topology" {
      description
        "Augmentation parameters apply only for networks with
        Ethernet 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/"
       + "etht:eth-tran-topology" {
      description
        "Augmentation parameters apply only for networks with
         Ethernet topology type.";
    }
    description
      "Augment TE label range start for the TE node
       connectivity matrices";
    case eth {
      uses etht-types:eth-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-end/"
        + "tet:te-label/tet:technology" {
    when "../../../../../../../../nw:network-types/tet:te-topology/"
       + "etht:eth-tran-topology" {
      description
        "Augmentation parameters apply only for networks with
         Ethernet topology type.";
    }
    description
      "Augment TE label range end for the TE node
       connectivity matrices";
    case eth {
      uses etht-types:eth-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-step/"
        + "tet:technology" {
    when "../../../../../../../nw:network-types/tet:te-topology/"
       + "etht:eth-tran-topology" {
      description
        "Augmentation parameters apply only for networks with
         Ethernet topology type.";
    }
    description
      "Augment TE label range step for the TE node
       connectivity matrices";
    case eth {
      uses etht-types:eth-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/"
       + "etht:eth-tran-topology" {
      description
        "Augmentation parameters apply only for networks with
         Ethernet topology type.";
    }
    description
      "Augment TE label hop for the underlay primary path of the
       TE node connectivity matrices";
    case eth {
      uses etht-types:eth-label;
    }
  }

  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/"
       + "etht:eth-tran-topology" {
      description
        "Augmentation parameters apply only for networks with
         Ethernet topology type.";
    }
    description
      "Augment TE label hop for the underlay backup path of the
       TE node connectivity matrices";
    case eth {
      uses etht-types:eth-label;
    }
  }

  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/"
       + "etht:eth-tran-topology" {
      description
        "Augmentation parameters apply only for networks with
         Ethernet topology type.";
    }
    description
      "Augment TE label hop for the explicit route objects excluded
       by the path computation of the TE node connectivity
       matrices";
    case eth {
      uses etht-types:eth-label;
    }
  }

  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/"
       + "etht:eth-tran-topology" {
      description
        "Augmentation parameters apply only for networks with
         Ethernet topology type.";
    }
    description
      "Augment TE label hop for the explicit route objects included
       by the path computation of the TE node connectivity
       matrices";
    case eth {
      uses etht-types:eth-label;
    }
  }

  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/"
       + "etht:eth-tran-topology" {
      description
        "Augmentation parameters apply only for networks with
         Ethernet topology type.";
    }
    description
      "Augment TE label hop for the computed path route objects
       of the TE node connectivity matrices";
    case eth {
      uses etht-types:eth-label;
    }
  }

  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/"
       + "etht:eth-tran-topology" {
      description
        "Augmentation parameters apply only for networks with
         Ethernet topology type.";
    }
    description
      "Augment TE label range start for the source LTP
       of the connectivity matrix entry.";
    case eth {
      uses etht-types:eth-label;
    }
  }

  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/"
       + "etht:eth-tran-topology" {
      description
        "Augmentation parameters apply only for networks with
         Ethernet topology type.";
    }
    description
      "Augment TE label range end for the source LTP
       of the connectivity matrix entry.";
    case eth {
      uses etht-types:eth-label;
    }
  }

  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/"
       + "etht:eth-tran-topology" {
      description
        "Augmentation parameters apply only for networks with
         Ethernet topology type.";
    }
    description
      "Augment TE label range step for the source LTP
       of the connectivity matrix entry.";
    case eth {
      uses etht-types:eth-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/"
       + "etht:eth-tran-topology" {
      description
        "Augmentation parameters apply only for networks with
         Ethernet topology type.";
    }
    description
      "Augment TE label range start for the destination LTP
       of the connectivity matrix entry.";
    case eth {
      uses etht-types:eth-label;
    }
  }

  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/"
       + "etht:eth-tran-topology" {
      description
        "Augmentation parameters apply only for networks with
         Ethernet topology type.";
    }
    description
      "Augment TE label range end for the destination LTP
       of the connectivity matrix entry.";
    case eth {
      uses etht-types:eth-label;
    }
  }

  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/"
       + "etht:eth-tran-topology" {
      description
        "Augmentation parameters apply only for networks with
         Ethernet topology type.";
    }
    description
      "Augment TE label range step for the destination LTP
       of the connectivity matrix entry.";
    case eth {
      uses etht-types:eth-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/"
       + "etht:eth-tran-topology" {
      description
        "Augmentation parameters apply only for networks with
         Ethernet topology type.";
    }
    description
      "Augment TE label hop for the underlay primary path
       of the connectivity matrix entry.";
    case eth {
      uses etht-types:eth-label;
    }
  }

  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/"
       + "etht:eth-tran-topology" {
      description
        "Augmentation parameters apply only for networks with
         Ethernet topology type.";
    }
    description
      "Augment TE label hop for the underlay backup path
       of the connectivity matrix entry.";
    case eth {
      uses etht-types:eth-label;
    }
  }

  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/"
       + "etht:eth-tran-topology" {
      description
        "Augmentation parameters apply only for networks with
         Ethernet topology type.";
    }
    description
      "Augment TE label hop for the explicit route objects excluded
       by the path computation of the connectivity matrix entry.";
    case eth {
      uses etht-types:eth-label;
    }
  }

  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/"
       + "etht:eth-tran-topology" {
      description
        "Augmentation parameters apply only for networks with
         Ethernet topology type.";
    }
    description
      "Augment TE label hop for the explicit route objects included
       by the path computation of the connectivity matrix entry.";
    case eth {
      uses etht-types:eth-label;
    }
  }

  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/"
       + "etht:eth-tran-topology" {
      description
        "Augmentation parameters apply only for networks with
         Ethernet topology type.";
    }
    description
      "Augment TE label hop for the computed path route objects
       of the connectivity matrix entry.";
    case eth {
      uses etht-types:eth-label;
    }
  }

  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/"
       + "etht:eth-tran-topology" {
      description
        "Augmentation parameters apply only for networks with
         Ethernet topology type.";
    }
    description
      "Augment TE label range start for the TE node connectivity
       matrices information source.";
    case eth {
      uses etht-types:eth-label;
    }
  }

  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/"
       + "etht:eth-tran-topology" {
      description
        "Augmentation parameters apply only for networks with
         Ethernet topology type.";
    }
    description
      "Augment TE label range end for the TE node connectivity
       matrices information source.";
    case eth {
      uses etht-types:eth-label;
    }
  }

  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/"
       + "etht:eth-tran-topology" {
      description
        "Augmentation parameters apply only for networks with
         Ethernet topology type.";
    }
    description
      "Augment TE label range step for the TE node connectivity
       matrices information source.";
    case eth {
      uses etht-types:eth-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/"
       + "etht:eth-tran-topology" {
      description
        "Augmentation parameters apply only for networks with
         Ethernet topology type.";
    }
    description
      "Augment TE label hop for the underlay primary path
       of the TE node connectivity matrices of the information
       source entry.";
    case eth {
      uses etht-types:eth-label;
    }
  }

  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/"
       + "etht:eth-tran-topology" {
      description
        "Augmentation parameters apply only for networks with
         Ethernet topology type.";
    }
    description
      "Augment TE label hop for the underlay backup path
       of the TE node connectivity matrices of the information
       source entry.";
    case eth {
      uses etht-types:eth-label;
    }
  }

  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/"
       + "etht:eth-tran-topology" {
      description
        "Augmentation parameters apply only for networks with
         Ethernet 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 eth {
      uses etht-types:eth-label;
    }
  }

  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/"
       + "etht:eth-tran-topology" {
      description
        "Augmentation parameters apply only for networks with
         Ethernet 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 eth {
      uses etht-types:eth-label;
    }
  }

  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/"
       + "etht:eth-tran-topology" {
      description
        "Augmentation parameters apply only for networks with
         Ethernet topology type.";
    }
    description
      "Augment TE label hop for the computed path route objects
       of the TE node connectivity matrices information source.";
    case eth {
      uses etht-types:eth-label;
    }
  }

  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/"
       + "etht:eth-tran-topology" {
      description
        "Augmentation parameters apply only for networks with
         Ethernet topology type.";
    }
    description
      "Augment TE label range start for the source LTP
       of the connectivity matrix entry information source.";
    case eth {
      uses etht-types:eth-label;
    }
  }
  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/"
       + "etht:eth-tran-topology" {
      description
        "Augmentation parameters apply only for networks with
         Ethernet topology type.";
    }
    description
      "Augment TE label range end for the source LTP
       of the connectivity matrix entry information source.";
    case eth {
      uses etht-types:eth-label;
    }
  }

  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/"
       + "etht:eth-tran-topology" {
      description
        "Augmentation parameters apply only for networks with
         Ethernet topology type.";
    }
    description
      "Augment TE label range step for the source LTP
       of the connectivity matrix entry information source.";
    case eth {
      uses etht-types:eth-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/"
       + "etht:eth-tran-topology" {
      description
        "Augmentation parameters apply only for networks with
         Ethernet topology type.";
    }
    description
      "Augment TE label range start for the destination LTP
       of the connectivity matrix entry information source.";
    case eth {
      uses etht-types:eth-label;
    }
  }

  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/"
       + "etht:eth-tran-topology" {
      description
        "Augmentation parameters apply only for networks with
         Ethernet topology type.";
    }
    description
      "Augment TE label range end for the destination LTP
       of the connectivity matrix entry information source.";
    case eth {
      uses etht-types:eth-label;
    }
  }

  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/"
       + "etht:eth-tran-topology" {
      description
        "Augmentation parameters apply only for networks with
         Ethernet topology type.";
    }
    description
      "Augment TE label range step for the destination LTP
       of the connectivity matrix entry information source.";
    case eth {
      uses etht-types:eth-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/"
       + "etht:eth-tran-topology" {
      description
        "Augmentation parameters apply only for networks with
         Ethernet topology type.";
    }
    description
      "Augment TE label hop for the underlay primary path
       of the connectivity matrix entry information source.";
    case eth {
      uses etht-types:eth-label;
    }
  }

  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/"
       + "etht:eth-tran-topology" {
      description
        "Augmentation parameters apply only for networks with
         Ethernet topology type.";
    }
    description
      "Augment TE label hop for the underlay backup path
       of the connectivity matrix entry information source.";
    case eth {
      uses etht-types:eth-label;
    }
  }

  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/"
       + "etht:eth-tran-topology" {
      description
        "Augmentation parameters apply only for networks with
         Ethernet 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 eth {
      uses etht-types:eth-label;
    }
  }

  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/"
       + "etht:eth-tran-topology" {
      description
        "Augmentation parameters apply only for networks with
         Ethernet 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 eth {
      uses etht-types:eth-label;
    }
  }

  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/"
       + "etht:eth-tran-topology" {
      description
        "Augmentation parameters apply only for networks with
         Ethernet topology type.";
    }
    description
      "Augment TE label hop for the computed path route objects
       of the connectivity matrix entry information source.";
    case eth {
      uses etht-types:eth-label;
    }
  }

  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/"
       + "etht:eth-tran-topology" {
      description
        "Augmentation parameters apply only for networks with
         Ethernet topology type.";
    }
    description
      "Augment TE label range start for the TTP
       Local Link Connectivities.";
    case eth {
      uses etht-types:eth-label;
    }
  }

  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/"
       + "etht:eth-tran-topology" {
      description
        "Augmentation parameters apply only for networks with
         Ethernet topology type.";
    }
    description
      "Augment TE label range end for the TTP
       Local Link Connectivities.";
    case eth {
      uses etht-types:eth-label;
    }
  }

  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/"
       + "etht:eth-tran-topology" {
      description
        "Augmentation parameters apply only for networks with
         Ethernet topology type.";
    }
    description
      "Augment TE label range step for the TTP
       Local Link Connectivities.";
    case eth {
      uses etht-types:eth-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/"
       + "etht:eth-tran-topology" {
      description
        "Augmentation parameters apply only for networks with
         Ethernet topology type.";
    }
    description
      "Augment TE label hop for the underlay primary path
       of the TTP Local Link Connectivities.";
    case eth {
      uses etht-types:eth-label;
    }
  }

  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/"
       + "etht:eth-tran-topology" {
      description
        "Augmentation parameters apply only for networks with
         Ethernet topology type.";
    }
    description
      "Augment TE label hop for the underlay backup path
       of the TTP Local Link Connectivities.";
    case eth {
      uses etht-types:eth-label;
    }
  }

  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/"
       + "etht:eth-tran-topology" {
      description
        "Augmentation parameters apply only for networks with
         Ethernet topology type.";
    }
    description
      "Augment TE label hop for the explicit route objects excluded
       by the path computation of the TTP Local Link
       Connectivities.";
    case eth {
      uses etht-types:eth-label;
    }
  }

  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/"
       + "etht:eth-tran-topology" {
      description
        "Augmentation parameters apply only for networks with
         Ethernet topology type.";
    }
    description
      "Augment TE label hop for the explicit route objects included
       by the path computation of the TTP Local Link
       Connectivities.";
    case eth {
      uses etht-types:eth-label;
    }
  }

  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/"
       + "etht:eth-tran-topology" {
      description
        "Augmentation parameters apply only for networks with
         Ethernet topology type.";
    }
    description
      "Augment TE label hop for the computed path route objects
       of the TTP Local Link Connectivities.";
    case eth {
      uses etht-types:eth-label;
    }
  }

  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/"
       + "etht:eth-tran-topology" {
      description
        "Augmentation parameters apply only for networks with
         Ethernet topology type.";
    }
    description
      "Augment TE label range start for the TTP
       Local Link Connectivity entry.";
    case eth {
      uses etht-types:eth-label;
    }
  }

  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/"
       + "etht:eth-tran-topology" {
      description
        "Augmentation parameters apply only for networks with
         Ethernet topology type.";
    }
    description
      "Augment TE label range end for the TTP
       Local Link Connectivity entry.";
    case eth {
      uses etht-types:eth-label;
    }
  }

  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/"
       + "etht:eth-tran-topology" {
      description
        "Augmentation parameters apply only for networks with
         Ethernet topology type.";
    }
    description
      "Augment TE label range step for the TTP
       Local Link Connectivity entry.";
    case eth {
      uses etht-types:eth-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/"
       + "etht:eth-tran-topology" {
      description
        "Augmentation parameters apply only for networks with
         Ethernet topology type.";
    }
    description
      "Augment TE label hop for the underlay primary path
       of the TTP Local Link Connectivity entry.";
    case eth {
      uses etht-types:eth-label;
    }
  }

  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/"
       + "etht:eth-tran-topology" {
      description
        "Augmentation parameters apply only for networks with
         Ethernet topology type.";
    }
    description
      "Augment TE label hop for the underlay backup path
       of the TTP Local Link Connectivity entry.";
    case eth {
      uses etht-types:eth-label;
    }
  }

  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/"
       + "etht:eth-tran-topology" {
      description
        "Augmentation parameters apply only for networks with
         Ethernet 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 eth {
      uses etht-types:eth-label;
    }
  }

  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/"
       + "etht:eth-tran-topology" {
      description
        "Augmentation parameters apply only for networks with
         Ethernet 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 eth {
      uses etht-types:eth-label;
    }
  }

  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/"
       + "etht:eth-tran-topology" {
      description
        "Augmentation parameters apply only for networks with
         Ethernet topology type.";
    }
    description
      "Augment TE label hop for the computed path route objects
       of the TTP Local Link Connectivity entry.";
    case eth {
      uses etht-types:eth-label;
    }
  }
  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/"
       + "etht:eth-tran-topology" {
      description
        "Augmentation parameters apply only for networks with
         Ethernet topology type.";
    }
    description
      "Augment TE label hop for the underlay primary path
       of the TE link.";
    case eth {
      uses etht-types:eth-label;
    }
  }

  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/"
       + "etht:eth-tran-topology" {
      description
        "Augmentation parameters apply only for networks with
         Ethernet topology type.";
    }
    description
      "Augment TE label hop for the underlay backup path
       of the TE link.";
    case eth {
      uses etht-types:eth-label;
    }
  }

  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/"
       + "etht:eth-tran-topology" {
      description
        "Augmentation parameters apply only for networks with
         Ethernet topology type.";
    }
    description
      "Augment TE label range start for the TE link.";
    case eth {
      uses etht-types:eth-label;
    }
  }

  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/"
       + "etht:eth-tran-topology" {
      description
        "Augmentation parameters apply only for networks with
         Ethernet topology type.";
    }
    description
      "Augment TE label range end for the TE link.";
    case eth {
      uses etht-types:eth-label;
    }
  }

  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/"
       + "etht:eth-tran-topology" {
      description
        "Augmentation parameters apply only for networks with
         Ethernet topology type.";
    }
    description
      "Augment TE label range step for the TE link.";
    case eth {
      uses etht-types:eth-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/"
       + "etht:eth-tran-topology" {
      description
        "Augmentation parameters apply only for networks with
         Ethernet topology type.";
    }
    description
      "Augment TE label range start for the TE link
       information source.";
    case eth {
      uses etht-types:eth-label;
    }
  }

  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/"
       + "etht:eth-tran-topology" {
      description
        "Augmentation parameters apply only for networks with
         Ethernet topology type.";
    }
    description
      "Augment TE label range end for the TE link
       information source.";
    case eth {
      uses etht-types:eth-label;
    }
  }

  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/"
       + "etht:eth-tran-topology" {
      description
        "Augmentation parameters apply only for networks with
         Ethernet topology type.";
    }
    description
      "Augment TE label range step for the TE link
       information source.";
    case eth {
      uses etht-types:eth-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 eth {
      uses etht-types:eth-label;
    }
  }

  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 eth {
      uses etht-types:eth-label;
    }
  }

  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 eth {
      uses etht-types:eth-label;
    }
  }

  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 eth {
      uses etht-types:eth-label;
    }
  }

  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 eth {
      uses etht-types:eth-label-step;
    }
  }

}
]]></sourcecode></figure>

</section>
<section anchor="iana-considerations"><name>IANA Considerations</name>

<t>It is proposed that IANA should assign new URIs from the "IETF XML
   Registry" <xref target="RFC3688"/> as follows:</t>

<figure><artwork><![CDATA[
      URI: urn:ietf:params:xml:ns:yang:ietf-eth-te-topology
      Registrant Contact:  The IESG.
      XML: N/A, the requested URI is an XML namespace.
]]></artwork></figure>

<t>This document registers following YANG modules in the YANG Module
   Names registry <xref target="RFC7950"/>.</t>

<figure><artwork><![CDATA[
      name:      ietf-eth-te-topology
      namespace: urn:ietf:params:xml:ns:yang:ietf-eth-te-topology
      prefix:    etht
      reference: RFC XXXX
]]></artwork></figure>

<t>RFC Editor: Please replace XXXX with the RFC number assigned to this document.</t>

</section>
<section anchor="manageability-considerations"><name>Manageability Considerations</name>

<t>TBD.</t>

</section>
<section anchor="security-considerations"><name>Security Considerations</name>

<t>The data following the model defined in this document is exchanged
   via, for example, the interface between an orchestrator and a
   transport network controller.  The security concerns mentioned in
   <xref target="RFC8795"/> for using ietf-te-topology.yang model also applies to this
   document.</t>

<t>The YANG module defined in this document can be accessed via the
   RESTCONF protocol defined in <xref target="RFC8040"/>, or maybe via the NETCONF
   protocol <xref target="RFC6241"/>.</t>

<t>There are a number of data nodes defined in the YANG module which are
   writable/creatable/deletable (i.e., config true, which is the
   default).  These data nodes may be considered sensitive or vulnerable
   in some network environments.  Write operations (e.g., POST) to these
   data nodes without proper protection can have a negative effect on
   network operations.</t>

<t>Editors note: to list specific subtrees and data nodes and their
   sensitivity/vulnerability.</t>

</section>


  </middle>

  <back>


    <references title='Normative References'>

<reference anchor="ITU_G.8021" >
  <front>
    <title>Characteristics of Ethernet transport network equipment functional blocks</title>
    <author >
      <organization>ITU-T Recommendation G.8021</organization>
    </author>
    <date year="2023" month="April"/>
  </front>
  <seriesInfo name="ITU-T G.8021" value=""/>
</reference>


<reference anchor='RFC8795' target='https://www.rfc-editor.org/info/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-client-signal-yang' target='https://datatracker.ietf.org/doc/html/draft-ietf-ccamp-client-signal-yang-09'>
   <front>
      <title>A YANG Data Model for Transport Network Client Signals</title>
      <author fullname='Haomian Zheng' initials='H.' surname='Zheng'>
         <organization>Huawei Technologies</organization>
      </author>
      <author fullname='Aihua Guo' initials='A.' surname='Guo'>
         <organization>Futurewei</organization>
      </author>
      <author fullname='Italo Busi' initials='I.' surname='Busi'>
         <organization>Huawei Technologies</organization>
      </author>
      <author fullname='Anton Snitser' initials='A.' surname='Snitser'>
         <organization>Cisco</organization>
      </author>
      <author fullname='Francesco Lazzeri' initials='F.' surname='Lazzeri'>
         <organization>Ericsson</organization>
      </author>
      <date day='9' month='July' year='2023'/>
      <abstract>
	 <t>   A transport network is a server-layer network to provide connectivity
   services to its client.  The topology and tunnel information in the
   transport layer has already been defined by generic Traffic-
   engineered models and technology-specific models (e.g., OTN, WSON).
   However, how the client signals are accessing to the network has not
   been described.  These information is necessary to both client and
   provider.

   This draft describes how the client signals are carried over
   transport network and defines YANG data models which are required
   during configuration procedure.  More specifically, several client
   signal (of transport network) models including ETH, STM-n, FC and so
   on, are defined in this draft.

	 </t>
      </abstract>
   </front>
   <seriesInfo name='Internet-Draft' value='draft-ietf-ccamp-client-signal-yang-09'/>
   
</reference>

<reference anchor='RFC8342' target='https://www.rfc-editor.org/info/rfc8342'>
  <front>
    <title>Network Management Datastore Architecture (NMDA)</title>
    <author fullname='M. Bjorklund' initials='M.' surname='Bjorklund'/>
    <author fullname='J. Schoenwaelder' initials='J.' surname='Schoenwaelder'/>
    <author fullname='P. Shafer' initials='P.' surname='Shafer'/>
    <author fullname='K. Watsen' initials='K.' surname='Watsen'/>
    <author fullname='R. Wilton' initials='R.' surname='Wilton'/>
    <date month='March' year='2018'/>
    <abstract>
      <t>Datastores are a fundamental concept binding the data models written in the YANG data modeling language to network management protocols such as the Network Configuration Protocol (NETCONF) and RESTCONF. This document defines an architectural framework for datastores based on the experience gained with the initial simpler model, addressing requirements that were not well supported in the initial model. This document updates RFC 7950.</t>
    </abstract>
  </front>
  <seriesInfo name='RFC' value='8342'/>
  <seriesInfo name='DOI' value='10.17487/RFC8342'/>
</reference>

<reference anchor='RFC7950' target='https://www.rfc-editor.org/info/rfc7950'>
  <front>
    <title>The YANG 1.1 Data Modeling Language</title>
    <author fullname='M. Bjorklund' initials='M.' role='editor' surname='Bjorklund'/>
    <date month='August' year='2016'/>
    <abstract>
      <t>YANG is a data modeling language used to model configuration data, state data, Remote Procedure Calls, and notifications for network management protocols. This document describes the syntax and semantics of version 1.1 of the YANG language. YANG version 1.1 is a maintenance release of the YANG language, addressing ambiguities and defects in the original specification. There are a small number of backward incompatibilities from YANG version 1. This document also specifies the YANG mappings to the Network Configuration Protocol (NETCONF).</t>
    </abstract>
  </front>
  <seriesInfo name='RFC' value='7950'/>
  <seriesInfo name='DOI' value='10.17487/RFC7950'/>
</reference>

<reference anchor='RFC6241' target='https://www.rfc-editor.org/info/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='RFC6991' target='https://www.rfc-editor.org/info/rfc6991'>
  <front>
    <title>Common YANG Data Types</title>
    <author fullname='J. Schoenwaelder' initials='J.' role='editor' surname='Schoenwaelder'/>
    <date month='July' year='2013'/>
    <abstract>
      <t>This document introduces a collection of common data types to be used with the YANG data modeling language. This document obsoletes RFC 6021.</t>
    </abstract>
  </front>
  <seriesInfo name='RFC' value='6991'/>
  <seriesInfo name='DOI' value='10.17487/RFC6991'/>
</reference>

<reference anchor='RFC8345' target='https://www.rfc-editor.org/info/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='RFC3688' target='https://www.rfc-editor.org/info/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='RFC8040' target='https://www.rfc-editor.org/info/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>




    </references>

    <references title='Informative References'>



<reference anchor='RFC8340' target='https://www.rfc-editor.org/info/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>




    </references>


<section numbered="false" anchor="acknowledgments"><name>Acknowledgments</name>

<t>We would like to thank Igor Bryskin and Daniel King for their
   comments and discussions.</t>

</section>

    <section anchor="contributors" numbered="false" toc="include" removeInRFC="false">
        <name>Contributors</name>
    <contact initials="Z." surname="Liu" fullname="Zhe Liu">
      <organization>Huawei Technologies</organization>
      <address>
        <email>liuzhe123@huawei.com</email>
      </address>
    </contact>
    <contact initials="S." surname="Belotti" fullname="Sergio Belotti">
      <organization>Nokia</organization>
      <address>
        <email>sergio.belotti@nokia.com</email>
      </address>
    </contact>
    <contact initials="Y." surname="Yao" fullname="Yingxi Yao">
      <organization>Shanghai Bell</organization>
      <address>
        <email>yingxi.yao@nokia-sbell.com</email>
      </address>
    </contact>
    <contact initials="G." surname="Fioccola" fullname="Giuseppe Fioccola">
      <organization>Huawei Technologies</organization>
      <address>
        <email>giuseppe.fioccola@huawei.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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
0QEA

-->

</rfc>

