diff --git a/src/nbi/service/rest_server/nbi_plugins/ietf_network_new/NetworkTypeEnum.py b/src/nbi/service/rest_server/nbi_plugins/ietf_network_new/NetworkTypeEnum.py
deleted file mode 100644
index 96fe4dff1452458479b4b04f98e12be63343e022..0000000000000000000000000000000000000000
--- a/src/nbi/service/rest_server/nbi_plugins/ietf_network_new/NetworkTypeEnum.py
+++ /dev/null
@@ -1,23 +0,0 @@
-# Copyright 2022-2024 ETSI OSG/SDG TeraFlowSDN (TFS) (https://tfs.etsi.org/)
-#
-# Licensed under the Apache License, Version 2.0 (the "License");
-# you may not use this file except in compliance with the License.
-# You may obtain a copy of the License at
-#
-#      http://www.apache.org/licenses/LICENSE-2.0
-#
-# Unless required by applicable law or agreed to in writing, software
-# distributed under the License is distributed on an "AS IS" BASIS,
-# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
-# See the License for the specific language governing permissions and
-# limitations under the License.
-
-from enum import Enum
-from typing import Optional
-
-class NetworkTypeEnum(Enum):
-    TE_OTN_TOPOLOGY      = 'otn'
-    TE_ETH_TRAN_TOPOLOGY = 'eth-tran'
-
-def get_network_topology_type(topology_id : str) -> Optional[NetworkTypeEnum]:
-    return NetworkTypeEnum._value2member_map_.get(topology_id)
diff --git a/src/nbi/service/rest_server/nbi_plugins/ietf_network_new/Networks.py b/src/nbi/service/rest_server/nbi_plugins/ietf_network_new/Networks.py
index 4a11eaf08b86ed0d35ff6c777c75fc7d953f393c..260fa5e04fb43de2f363f8fac1e89c3791034f43 100644
--- a/src/nbi/service/rest_server/nbi_plugins/ietf_network_new/Networks.py
+++ b/src/nbi/service/rest_server/nbi_plugins/ietf_network_new/Networks.py
@@ -22,13 +22,11 @@ from context.client.ContextClient import ContextClient
 from nbi.service.rest_server.nbi_plugins.tools.Authentication import HTTP_AUTH
 from nbi.service.rest_server.nbi_plugins.tools.HttpStatusCodes import HTTP_OK, HTTP_SERVERERROR
 from .YangHandler import YangHandler
-from .ManualFixes import manual_fixes
 
 LOGGER = logging.getLogger(__name__)
 
 TE_TOPOLOGY_NAMES = [
     'providerId-10-clientId-0-topologyId-1',
-    'providerId-10-clientId-0-topologyId-2'
 ]
 
 class Networks(Resource):
@@ -38,13 +36,8 @@ class Networks(Resource):
         topology_id = ''
         try:
             context_client = ContextClient()
-            #target = get_slice_by_uuid(context_client, vpn_id, rw_copy=True)
-            #if target is None:
-            #    raise Exception('VPN({:s}) not found in database'.format(str(vpn_id)))
-
             topology_details = get_topology_details(
-                context_client, DEFAULT_TOPOLOGY_NAME, context_uuid=DEFAULT_CONTEXT_NAME, #rw_copy=True
-            )
+                context_client, DEFAULT_TOPOLOGY_NAME)
             if topology_details is None:
                 MSG = 'Topology({:s}/{:s}) not found'
                 raise Exception(MSG.format(DEFAULT_CONTEXT_NAME, DEFAULT_TOPOLOGY_NAME))
@@ -55,11 +48,8 @@ class Networks(Resource):
                 network_reply = yang_handler.compose_network(te_topology_name, topology_details)
                 network_list_reply.append(network_reply)
 
-            # TODO: improve these workarounds to enhance performance
             yang_handler.destroy()
             response = jsonify(network_list_reply)
-            # Workaround; pyangbind does not allow to set otn_topology / eth-tran-topology
-            manual_fixes(response)
 
             response.status_code = HTTP_OK
         except Exception as e: # pylint: disable=broad-except
diff --git a/src/nbi/service/rest_server/nbi_plugins/ietf_network_new/YangHandler.py b/src/nbi/service/rest_server/nbi_plugins/ietf_network_new/YangHandler.py
index 50db6d33bd246c4b16348fbd781a78d82903ee83..0472a2e34d6a0d73265f15ff97bf502114b34fff 100644
--- a/src/nbi/service/rest_server/nbi_plugins/ietf_network_new/YangHandler.py
+++ b/src/nbi/service/rest_server/nbi_plugins/ietf_network_new/YangHandler.py
@@ -12,184 +12,113 @@
 # See the License for the specific language governing permissions and
 # limitations under the License.
 
-import json, libyang, logging, os, re
+import json
+import libyang, logging, os
 from typing import Any
-from common.DeviceTypes import DeviceTypeEnum
-from common.proto.context_pb2 import TopologyDetails, Device, Link, EndPoint
+from common.proto.context_pb2 import TopologyDetails, Device, Link
 from .NameMapping import NameMappings
-from .NetworkTypeEnum import NetworkTypeEnum, get_network_topology_type
-
+from context.client.ContextClient import ContextClient
+from common.tools.object_factory.Device import json_device_id
+from common.proto.context_pb2 import  DeviceId 
 LOGGER = logging.getLogger(__name__)
 
 YANG_DIR = os.path.join(os.path.dirname(__file__), 'yang')
 YANG_MODULES = [
     'ietf-network',
-    'ietf-network-topology'
+    'ietf-network-topology', 
+    'ietf-l3-unicast-topology'
 ]
 
-MAPPINGS_TE_NODE_NAME = {
-    '10.0.10.1'  : 'OA',
-    '10.0.20.1'  : 'P',
-    '10.0.30.1'  : 'OE',
-    '10.0.40.1'  : 'P',
-
-    '128.32.10.1': 'ONT1',
-    '128.32.20.1': 'ONT2',
-    '128.32.33.5': 'OLT',
-}
-
-IGNORE_ENDPOINT_NAMES = {'mgmt', 'eth1'}
-
-IGNORE_DEVICE_TYPES = {
-    DeviceTypeEnum.CLIENT.value,
-    DeviceTypeEnum.DATACENTER.value,
-    DeviceTypeEnum.EMULATED_CLIENT.value,
-    DeviceTypeEnum.EMULATED_DATACENTER.value,
-    DeviceTypeEnum.EMULATED_IP_SDN_CONTROLLER,
-    DeviceTypeEnum.EMULATED_MICROWAVE_RADIO_SYSTEM.value,
-    DeviceTypeEnum.EMULATED_OPEN_LINE_SYSTEM.value,
-    DeviceTypeEnum.EMULATED_XR_CONSTELLATION.value,
-    DeviceTypeEnum.IP_SDN_CONTROLLER,
-    DeviceTypeEnum.MICROWAVE_RADIO_SYSTEM.value,
-    DeviceTypeEnum.NETWORK.value,
-    DeviceTypeEnum.OPEN_LINE_SYSTEM.value,
-    DeviceTypeEnum.XR_CONSTELLATION.value,
-}
-
-IGNORE_DEVICE_NAMES = {
-    NetworkTypeEnum.TE_OTN_TOPOLOGY: {
-        'nce-t', '128.32.10.1', '128.32.33.5', '128.32.20.5', '128.32.20.1', '128.32.10.5',
-    },
-    NetworkTypeEnum.TE_ETH_TRAN_TOPOLOGY: {
-        'nce-t',
-    },
-}
-
-TE_TOPOLOGY_NAME = 'Huawei-Network'
-
 class YangHandler:
     def __init__(self) -> None:
         self._yang_context = libyang.Context(YANG_DIR)
         for yang_module_name in YANG_MODULES:
             LOGGER.info('Loading module: {:s}'.format(str(yang_module_name)))
             self._yang_context.load_module(yang_module_name).feature_enable_all()
-
+    
+    def get_endpoint_name(self, device: str) -> None:
+        context_client = ContextClient()
+        device = context_client.GetDevice(DeviceId(**json_device_id(device)))
+            
     def compose_network(self, te_topology_name : str, topology_details : TopologyDetails) -> None:
         networks = self._yang_context.create_data_path('/ietf-network:networks')
-        
         network = networks.create_path('network[network-id="{:s}"]'.format(te_topology_name))
-        
         network.create_path('network-id', te_topology_name)
        
-        network_types = network.create_path('network-types') #augmentation, mirar RFC8346
-        network_types.create_path('ietf-l3-unicast-topology:l3-unicast-topology') #no se si es asi
-        network.create_path('supporting-network', ) #lista de networks-id, NO SE COMO VERLO
-        attributes = network.create_path('ietf-l3-unicast-topology:l3-topology-attributes')
-        #NO SE QUE ATRIBUTOS, CASO ESPECIAL OSPF?
-        attributes.create_path('name',)
-        attributes.create_path('flag',)
+        network_types = network.create_path('network-types') 
+        network_types.create_path('ietf-l3-unicast-topology:l3-unicast-topology') 
 
-        ''' NO SEEEEEE SI HACE FALTA
-        # TODO: resolve setting of otn_topology/eth_tran_topology network type; not working in bindings.
-        # See "../ManualFixes.py".
-        topology_id = ietf_network_obj.te_topology_identifier.topology_id
-        topology_id = {
-            '1': NetworkTypeEnum.TE_OTN_TOPOLOGY.value,
-            '2': NetworkTypeEnum.TE_ETH_TRAN_TOPOLOGY.value,
-        }.get(topology_id, topology_id)
-        network_type = get_network_topology_type(topology_id)
-        if network_type == NetworkTypeEnum.TE_OTN_TOPOLOGY:
-            #ietf_network_obj.network_types.te_topology.otn_topology._set_present()
-            pass
-        elif network_type == NetworkTypeEnum.TE_ETH_TRAN_TOPOLOGY:
-            #ietf_network_obj.network_types.te_topology.eth_tran_topology._set_present()
-            pass
-        else:
-            raise Exception('Unsupported TopologyId({:s})'.format(str(topology_id)))
-        '''
         name_mappings = NameMappings()
  
-        ignore_device_uuids = set()
-        
-
-        for device in topology_details.devices:
-            device_uuid = device.device_id.device_uuid.uuid
-
-            device_type = device.device_type
-            if device_type in IGNORE_DEVICE_TYPES:
-                ignore_device_uuids.add(device_uuid)
-                continue
-
-            device_name = device.name
-            if device_name in IGNORE_DEVICE_NAMES.get(network_type, set()): #NETWORK_TYPE?
-                ignore_device_uuids.add(device_uuid)
-                continue
-
+        for device in topology_details.devices: 
             self.compose_node(device, name_mappings, network)
 
         for link in topology_details.links:
-            link_device_uuids = {
-                endpoint_id.device_id.device_uuid.uuid
-                for endpoint_id in link.link_endpoint_ids
-            }
-            if len(ignore_device_uuids.intersection(link_device_uuids)) > 0:
-                continue
-            link_name = link.name
-
-            self.compose_link(link_name, link, name_mappings, network)
-    
+            self.compose_link(link, name_mappings, network)
+        return json.loads(networks.print_mem('json'))
 
-    def compose_node(self, device : Device, name_mappings : NameMappings, network : Any
-    ) -> None:
-        device_name = device.name
-
-        name_mappings.store_device_name(device)
-
-        node = network.create_path('node[node-id="{:s}"]'.format(device_name))
-        node.create_path('node-id', device_name)
-        #supporting node (nw-ref, node-ref)?
-        node_attributes = node.create_path('ietf-l3-unicast-topology:l3-node-attributes')
-        #no se que va en cada atributo
-        node_attributes.create_path('name',)
-        node_attributes.create_path('flag',)
-        node_attributes.create_path('router-id',)
-        prefix = node_attributes.create_path('prefix[prefix="{:s}"]'.format())
-        prefix.create_path('prefix',)
-        prefix.create_path('metric',)
-        prefix.create_path('flag',)
+    def compose_node(self, dev: Device, name_mappings: NameMappings, network: Any) -> None:                                     
+            device_name = dev.name
+            name_mappings.store_device_name(dev)
 
+            node = network.create_path(f'node[node-id="{device_name}"]')
+            node.create_path('node-id', device_name)
+            node_attributes = node.create_path('ietf-l3-unicast-topology:l3-node-attributes')
+            node_attributes.create_path('name', device_name)
 
-        for endpoint in device.device_endpoints:
-            endpoint_name = endpoint.name
-            if endpoint_name in IGNORE_ENDPOINT_NAMES: continue
+            context_client = ContextClient()
+            device = context_client.GetDevice(DeviceId(**json_device_id(device_name)))
             
-            tp = node.create_path('ietf-network-topology:termination-point[tp-id="{:s}"]'.format(endpoint_name))
-            tp.create_path('tp-id', endpoint_name)
-            #supporting termination point?
-            tp_attributes = tp.create_path('ietf-l3-unicast-topology:l3-termination-point-attributes')
-            tp_attributes.create_path('termination-point-type',endpoint.endpoint_type) 
-
-    def compose_link(self, link_name : Any, link_specs : Link, name_mappings : NameMappings, network : Any
+            for endpoint in device.device_endpoints:
+                name_mappings.store_endpoint_name(dev,endpoint)
+
+            for config in device.device_config.config_rules:
+                if config.WhichOneof('config_rule') != 'custom' or '/interface[' not in config.custom.resource_key:
+                    continue
+                
+                for endpoint in device.device_endpoints:
+                    endpoint_name = endpoint.name
+                    if f'/interface[{endpoint_name}]' in config.custom.resource_key or f'/interface[{endpoint_name}.' in config.custom.resource_key:
+                        interface_name = config.custom.resource_key.split('interface[')[1].split(']')[0]
+                        
+                        ip_addresses = []
+                        resource_value = json.loads(config.custom.resource_value)
+                        if 'address_ip' in resource_value:
+                            ip_addresses.append(resource_value['address_ip'])
+                        if 'address_ipv6' in resource_value:
+                            ip_addresses.append(resource_value['address_ipv6'])
+                        
+                        if ip_addresses:
+                            tp = node.create_path(f'ietf-network-topology:termination-point[tp-id="{interface_name}"]')
+                            tp.create_path('tp-id', interface_name)
+                            tp_attributes = tp.create_path('ietf-l3-unicast-topology:l3-termination-point-attributes')
+                            
+                            for ip in ip_addresses:
+                                tp_attributes.create_path('ip-address', ip)
+                            tp_attributes.create_path('interface-name', endpoint_name)
+
+    def compose_link(self, link_specs : Link, name_mappings : NameMappings, network : Any
     ) -> None:
+        link_name = link_specs.name
         links = network.create_path('ietf-network-topology:link[link-id="{:s}"]'.format(link_name))
         links.create_path('link-id', link_name)
         src_endpoint_id = link_specs.link_endpoint_ids[0]
+        LOGGER.info('SRC: {:s}'.format(str(src_endpoint_id)))
 
         source = links.create_path('source')
-        source.create_path('source_node', name_mappings.get_device_name(src_endpoint_id.device_id))
-        source.create_path('source_tp', name_mappings.get_endpoint_name(src_endpoint_id))
+        source.create_path('source-node', name_mappings.get_device_name(src_endpoint_id.device_id))
+        source.create_path('source-tp', name_mappings.get_endpoint_name(src_endpoint_id))
 
         dst_endpoint_id = link_specs.link_endpoint_ids[-1]
+        LOGGER.info('DST: {:s}'.format(str(dst_endpoint_id)))
 
         destination = links.create_path('destination')
-        destination.create_path('dest_node', name_mappings.get_device_name(dst_endpoint_id.device_id))
-        destination.create_path('dest_tp', name_mappings.get_endpoint_name(dst_endpoint_id))
+        destination.create_path('dest-node', name_mappings.get_device_name(dst_endpoint_id.device_id))
+        destination.create_path('dest-tp', name_mappings.get_endpoint_name(dst_endpoint_id))
     
-        #supporting-link???
-
-        link_attributes = links.create_path('ietf-l3-unicast-topology:l3-link-attributes')
-        #no se que atributos poner
-        link_attributes.create_path('name',)
-        link_attributes.create_path('flag',)
-        link_attributes.create_path('metric',)
+        # link_attributes = links.create_path('ietf-l3-unicast-topology:l3-link-attributes')
+        # link_attributes.create_path('name', link_name)
 
+    def destroy(self) -> None:
+        self._yang_context.destroy()
+        
\ No newline at end of file
diff --git a/src/nbi/service/rest_server/nbi_plugins/ietf_network_new/yang/ietf-eth-te-topology@2023-09-28.yang b/src/nbi/service/rest_server/nbi_plugins/ietf_network_new/yang/ietf-eth-te-topology@2023-09-28.yang
deleted file mode 100644
index b182f7f5a323d1a50c1ab53715b96e02758ea327..0000000000000000000000000000000000000000
--- a/src/nbi/service/rest_server/nbi_plugins/ietf_network_new/yang/ietf-eth-te-topology@2023-09-28.yang
+++ /dev/null
@@ -1,2275 +0,0 @@
-   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;
-       }
-     }
-
-   }
diff --git a/src/nbi/service/rest_server/nbi_plugins/ietf_network_new/yang/ietf-eth-tran-service@2023-10-23.yang b/src/nbi/service/rest_server/nbi_plugins/ietf_network_new/yang/ietf-eth-tran-service@2023-10-23.yang
deleted file mode 100644
index 222066adf0e1ece5f964fbabb170edf92d57b21e..0000000000000000000000000000000000000000
--- a/src/nbi/service/rest_server/nbi_plugins/ietf_network_new/yang/ietf-eth-tran-service@2023-10-23.yang
+++ /dev/null
@@ -1,1004 +0,0 @@
-   module ietf-eth-tran-service {
-     yang-version 1.1;
-     namespace "urn:ietf:params:xml:ns:yang:ietf-eth-tran-service";
-
-     prefix "ethtsvc";
-     import ietf-yang-types {
-       prefix "yang";
-       reference "RFC 6991 - Common YANG Data Types";
-     }
-
-     import ietf-network {
-       prefix "nw";
-       reference "RFC8345 - A YANG Data Model for Network Topologies";
-     }
-
-     import ietf-network-topology {
-       prefix "nt";
-       reference "RFC8345 - A YANG Data Model for Network Topologies";
-     }
-
-     import ietf-te-types {
-       prefix "te-types";
-       reference "RFC 8776 - Traffic Engineering Common YANG Types";
-     }
-
-     import ietf-eth-tran-types {
-       prefix "etht-types";
-       reference "RFC XXXX - A YANG Data Model for Transport
-                  Network Client Signals";
-     }
-
-     import ietf-routing-types {
-       prefix "rt-types";
-       reference "RFC 8294 - Common YANG Data Types for the
-                  Routing Area";
-
-     }
-
-     import ietf-te {
-       prefix "te";
-       reference "RFC YYYY - A YANG Data Model for Traffic
-                  Engineering Tunnels and Interfaces";
-     }
-
-     organization
-       "Internet Engineering Task Force (IETF) CCAMP WG";
-     contact
-       "
-         WG List: <mailto:ccamp@ietf.org>
-
-         ID-draft editor:
-           Haomian Zheng (zhenghaomian@huawei.com);
-           Italo Busi (italo.busi@huawei.com);
-           Aihua Guo (aihuaguo.ietf@gmail.com);
-           Anton Snitser (antons@sedonasys.com);0
-           Francesco Lazzeri (francesco.lazzeri@ericsson.com);
-           Yunbin Xu (xuyunbin@caict.ac.cn);
-           Yang Zhao (zhaoyangyjy@chinamobile.com);
-           Xufeng Liu (xufeng.liu.ietf@gmail.com);
-           Giuseppe Fioccola (giuseppe.fioccola@huawei.com);
-           Chaode Yu (yuchaode@huawei.com)
-       ";
-
-     description
-       "This module defines a YANG data model for describing
-        the Ethernet services. The model fully conforms to the
-        Network Management Datastore Architecture (NMDA).
-
-        Copyright (c) 2021 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 Simplified BSD License
-        set forth in Section 4.c of the IETF Trust's Legal Provisions
-        Relating to IETF Documents
-        (https://trustee.ietf.org/license-info).
-        This version of this YANG module is part of RFC XXXX; see
-        the RFC itself for full legal notices.";
-
-     revision 2023-10-23 {
-       description
-         "version -04 as an WG document";
-       reference
-         "draft-ietf-ccamp-client-signal-yang";
-     }
-
-     /*
-      * Groupings
-      */
-
-     grouping vlan-classification {
-       description
-         "A grouping which represents classification
-         on an 802.1Q VLAN tag.";
-
-       leaf tag-type {
-         type etht-types:eth-tag-classify;
-         description
-           "The tag type used for VLAN classification.";
-       }
-       choice individual-bundling-vlan {
-         description
-           "VLAN based classification can be individual
-            or bundling.";
-
-         case individual-vlan {
-           leaf vlan-value {
-             type etht-types:vlanid;
-             description
-               "VLAN ID value.";
-           }
-         }
-
-         case vlan-bundling {
-           leaf vlan-range {
-             type etht-types:vid-range-type;
-             description
-               "List of VLAN ID values.";
-           }
-         }
-       }
-     }
-
-     grouping vlan-write {
-       description
-         "A grouping which represents push/pop operations
-          of an 802.1Q VLAN tag.";
-
-       leaf tag-type {
-         type etht-types:eth-tag-type;
-         description
-           "The VLAN tag type to push/swap.";
-       }
-       leaf vlan-value {
-         type etht-types:vlanid;
-         description
-           "The VLAN ID value to push/swap.";
-       }
-   /*
-    * To be added: this attribute is used when:
-    * a) the ETH service has only one CoS (as in current version)
-    * b) as a default when a mapping between a given CoS value
-    *    and the PCP value is not defined (in future versions)
-    */
-       leaf default-pcp {
-         type uint8 {
-           range "0..7";
-         }
-         description
-           "The default Priority Code Point (PCP) value to push/swap";
-       }
-     }
-
-     grouping vlan-operations {
-       description
-         "A grouping which represents VLAN operations.";
-
-         leaf pop-tags {
-         type uint8 {
-           range "1..2";
-         }
-         description
-           "The number of VLAN tags to pop (or swap if used in
-            conjunction with push-tags)";
-       }
-       container push-tags {
-         description
-           "The VLAN tags to push (or swap if used in
-            conjunction with pop-tags)";
-
-         container outer-tag {
-           presence
-             "Indicates existence of the outermost VLAN tag to
-              push/swap";
-
-           description
-             "The outermost VLAN tag to push/swap.";
-
-           uses vlan-write;
-         }
-         container second-tag {
-         must
-           '../outer-tag/tag-type = "etht-types:s-vlan-tag-type" and ' +
-           'tag-type = "etht-types:c-vlan-tag-type"'
-           {
-
-             error-message
-               "
-                 When pushing/swapping two tags, the outermost tag must
-                 be specified and of S-VLAN type and the second
-                 outermost tag must be of C-VLAN tag type.
-               ";
-             description
-               "
-                 For IEEE 802.1Q interoperability, when pushing/swapping
-                 two tags, it is required that the outermost tag exists
-                 and is an S-VLAN, and the second outermost tag is a
-                 C-VLAN.
-               ";
-           }
-
-           presence
-             "Indicates existence of a second outermost VLAN tag to
-              push/swap";
-
-           description
-             "The second outermost VLAN tag to push/swap.";
-           uses vlan-write;
-         }
-       }
-     }
-
-     grouping named-or-value-bandwidth-profile {
-       description
-         "A grouping to configure a bandwdith profile either by
-          referencing a named bandwidth profile or by
-          configuring the values of the bandwidth profile attributes.";
-       choice style {
-         description
-           "Whether the bandwidth profile is named or defined by value";
-
-         case named {
-           description
-             "Named bandwidth profile.";
-           leaf bandwidth-profile-name {
-             type leafref {
-                path "/ethtsvc:etht-svc/ethtsvc:globals/"
-                + "ethtsvc:named-bandwidth-profiles/"
-                + "ethtsvc:bandwidth-profile-name";
-                }
-             description
-               "Name of the bandwidth profile.";
-           }
-         }
-         case value {
-           description
-             "Bandwidth profile configured by value.";
-           uses etht-types:etht-bandwidth-profiles;
-         }
-       }
-     }
-
-     grouping bandwidth-profiles {
-       description
-         "A grouping which represent bandwidth profile configuration.";
-
-       choice direction {
-         description
-           "Whether the bandwidth profiles are symmetrical or
-            asymmetrical";
-         case symmetrical {
-           description
-             "The same bandwidth profile is used to describe both
-              the ingress and the egress bandwidth profile.";
-           container ingress-egress-bandwidth-profile {
-             description
-               "The bandwdith profile used in both directions.";
-             uses named-or-value-bandwidth-profile;
-           }
-         }
-         case asymmetrical {
-           description
-             "Ingress and egress bandwidth profiles can be specified.";
-           container ingress-bandwidth-profile {
-             description
-               "The bandwdith profile used in the ingress direction.";
-             uses named-or-value-bandwidth-profile;
-           }
-           container egress-bandwidth-profile {
-             description
-               "The bandwdith profile used in the egress direction.";
-             uses named-or-value-bandwidth-profile;
-           }
-         }
-       }
-     }
-
-     grouping etht-svc-access-parameters {
-       description
-         "ETH services access parameters";
-
-       leaf access-node-id {
-         type te-types:te-node-id;
-         description
-           "The identifier of the access node in
-            the ETH TE topology.";
-       }
-
-       leaf access-node-uri {
-         type nw:node-id;
-         description
-           "The identifier of the access node in the network.";
-       }
-
-       leaf access-ltp-id {
-         type te-types:te-tp-id;
-         description
-           "The TE link termination point identifier, used
-            together with access-node-id to identify the
-            access LTP.";
-       }
-
-       leaf access-ltp-uri {
-         type nt:tp-id;
-         description
-           "The link termination point identifier in network topology,
-           used together with access-node-uri to identify the
-           access LTP.";
-       }
-
-       leaf access-role {
-         type identityref {
-           base etht-types:access-role;
-         }
-         description
-           "Indicate the role of access, e.g., working or protection. ";
-       }
-
-       container pm-config {
-         uses pm-config-grouping;
-         description
-         "This grouping is used to set the threshold value for
-         performance monitoring. ";
-       }
-
-       container state {
-         config false;
-         description
-         "The state is used to monitor the status of service. ";
-         leaf operational-state {
-           type identityref {
-             base te-types:tunnel-state-type;
-           }
-           description
-           "Indicating the operational state of client signal. ";
-         }
-         leaf provisioning-state {
-           type identityref {
-             base te-types:lsp-state-type;
-           }
-           description
-           "Indicating the provisional state of client signal,
-           especially when there is a change, i.e., revise, create. ";
-         }
-       }
-
-       leaf performance {
-         type identityref {
-           base etht-types:performance;
-         }
-         config false;
-         description
-           "Performance Monitoring for the service. ";
-       }
-
-     }
-
-     grouping etht-svc-tunnel-parameters {
-       description
-         "ETH services tunnel parameters.";
-       choice technology {
-         description
-           "Service multiplexing is optional and flexible.";
-
-         case native-ethernet {
-           /*
-            placeholder to support proprietary multiplexing
-            (for further discussion)
-           */
-           list eth-tunnels {
-             key name;
-             description
-               "ETH Tunnel list in native Ethernet scenario.";
-             uses tunnels-grouping;
-           }
-         }
-
-         case frame-base {
-           list otn-tunnels {
-             key name;
-             description
-               "OTN Tunnel list in Frame-based scenario.";
-             uses tunnels-grouping;
-           }
-         }
-
-         case mpls-tp {
-           container pw {
-             description
-               "Pseudowire information for Ethernet over MPLS-TP.";
-             uses pw-segment-grouping;
-           }
-         }
-       }
-
-   /*
-    * Open issue: can we constraints it to be used only with mp services?
-    */
-       leaf src-split-horizon-group {
-         type string;
-         description
-         "Identify a split horizon group at the Tunnel source TTP";
-       }
-       leaf dst-split-horizon-group {
-         type string;
-         description
-         "Identify a split horizon group at the Tunnel destination TTP";
-       }
-     }
-
-     grouping  etht-svc-pm-threshold-config {
-       description
-         "Configuraiton parameters for Ethernet service PM thresholds.";
-
-       leaf sending-rate-high {
-         type uint64;
-         description
-           "High threshold of packet sending rate in kbps.";
-       }
-       leaf sending-rate-low {
-         type uint64;
-         description
-           "Low threshold of packet sending rate in kbps.";
-       }
-       leaf receiving-rate-high {
-         type uint64;
-         description
-           "High threshold of packet receiving rate in kbps.";
-       }
-       leaf receiving-rate-low {
-         type uint64;
-         description
-           "Low threshold of packet receiving rate in kbps.";
-       }
-     }
-
-     grouping  etht-svc-pm-stats {
-       description
-         "Ethernet service PM statistics.";
-
-       leaf sending-rate-too-high {
-         type uint32;
-         description
-           "Counter that indicates the number of times the
-           sending rate is above the high threshold";
-       }
-       leaf sending-rate-too-low {
-         type uint32;
-         description
-           "Counter that indicates the number of times the
-           sending rate is below the low threshold";
-       }
-       leaf receiving-rate-too-high {
-         type uint32;
-         description
-           "Counter that indicates the number of times the
-           receiving rate is above the high threshold";
-       }
-       leaf receiving-rate-too-low {
-         type uint32;
-         description
-           "Counter that indicates the number of times the
-           receiving rate is below the low threshold";
-       }
-     }
-
-     grouping  etht-svc-instance-config {
-       description
-         "Configuraiton parameters for Ethernet services.";
-
-       leaf etht-svc-name {
-         type string;
-         description
-           "Name of the ETH service.";
-       }
-
-       leaf etht-svc-title {
-         type string;
-         description
-           "The Identifier of the ETH service.";
-       }
-
-       leaf user-label {
-         type string;
-         description
-           "Alias of the ETH service.";
-       }
-
-       leaf etht-svc-descr {
-         type string;
-         description
-           "Description of the ETH service.";
-       }
-
-       leaf etht-svc-customer {
-         type string;
-         description
-           "Customer of the ETH service.";
-       }
-
-        leaf etht-svc-type {
-         type etht-types:service-type;
-         description
-           "Type of ETH service (p2p, mp2mp or rmp).";
-         /* Add default as p2p */
-       }
-
-        leaf etht-svc-lifecycle {
-         type etht-types:lifecycle-status;
-         description
-           "Lifecycle state of ETH service.";
-         /* Add default as installed  */
-       }
-       uses te-types:te-topology-identifier;
-
-       uses resilience-grouping;
-       list etht-svc-end-points {
-         key etht-svc-end-point-name;
-         description
-           "The logical end point for the ETH service. ";
-         uses etht-svc-end-point-grouping;
-       }
-
-       container alarm-shreshold {
-         description "threshold configuration for the E2E client signal";
-         uses alarm-shreshold-grouping;
-       }
-
-       container underlay {
-         description
-           "The unterlay tunnel information that carrying the
-           ETH service. ";
-         uses etht-svc-tunnel-parameters;
-       }
-
-       leaf admin-status {
-         type identityref {
-           base te-types:tunnel-admin-state-type;
-         }
-         default te-types:tunnel-admin-state-up;
-         description "ETH service administrative state.";
-       }
-     }
-
-     grouping  etht-svc-instance-state {
-       description
-         "State parameters for Ethernet services.";
-
-       leaf operational-state {
-       type identityref {
-           base te-types:tunnel-state-type;
-         }
-         default te-types:tunnel-state-up;
-       description "ETH service operational state.";
-       }
-       leaf provisioning-state {
-         type identityref {
-           base te-types:lsp-state-type;
-         }
-         description "ETH service provisioning state.";
-       }
-       leaf creation-time {
-         type yang:date-and-time;
-         description
-           "Time of ETH service creation.";
-       }
-       leaf last-updated-time {
-         type yang:date-and-time;
-         description
-           "Time of ETH service last update.";
-       }
-
-       leaf created-by {
-          type string;
-          description
-            "The client signal is created by whom,
-             can be a system or staff ID.";
-        }
-        leaf last-updated-by {
-          type string;
-          description
-            "The client signal is last updated by whom,
-             can be a system or staff ID.";
-        }
-        leaf owned-by {
-          type string;
-          description
-            "The client signal is last updated by whom,
-             can be a system ID.";
-        }
-        container pm-state {
-          description
-            "PM data of E2E Ethernet service";
-          uses pm-state-grouping;
-        }
-        container error-info {
-          description "error messages of configuration";
-          uses error-info-grouping;
-        }
-     }
-
-     grouping pm-state-grouping {
-       leaf latency {
-         description
-           "latency value of the E2E Ethernet service";
-         type uint32;
-         units microsecond;
-       }
-     }
-
-     grouping error-info-grouping {
-       leaf error-code {
-         description "error code";
-         type uint16;
-       }
-
-       leaf error-description {
-         description "detail message of error";
-         type string;
-       }
-
-       leaf error-timestamp {
-         description "the date and time error is happened";
-         type yang:date-and-time;
-       }
-     }
-
-     grouping alarm-shreshold-grouping {
-       leaf latency-threshold {
-         description "a threshold for the E2E client signal service's
-         latency. Once the latency value exceed this threshold, an alarm
-         should be triggered.";
-         type uint32;
-         units microsecond;
-       }
-     }
-
-     /*
-      * Data nodes
-      */
-
-     container etht-svc {
-       description
-         "ETH services.";
-
-       container globals {
-         description
-           "Globals Ethernet configuration data container";
-         list named-bandwidth-profiles {
-           key bandwidth-profile-name;
-           description
-             "List of named bandwidth profiles used by
-              Ethernet services.";
-
-           leaf bandwidth-profile-name {
-             type string;
-             description
-               "Name of the bandwidth profile.";
-           }
-           uses etht-types:etht-bandwidth-profiles;
-         }
-       }
-       list etht-svc-instances {
-         key etht-svc-name;
-         description
-           "The list of p2p ETH service instances";
-
-         uses etht-svc-instance-config;
-
-         container state {
-           config false;
-           description
-             "Ethernet Service states.";
-
-           uses etht-svc-instance-state;
-         }
-       }
-     }
-
-     grouping resilience-grouping {
-       description
-         "Grouping for resilience configuration. ";
-       container resilience {
-       description
-         "To configure the data plane protection parameters,
-         currently a placeholder only, future candidate attributes
-         include, Revert, WTR, Hold-off Timer, ...";
-         uses te:protection-restoration-properties;
-       }
-     }
-
-     grouping etht-svc-end-point-grouping {
-       description
-         "Grouping for the end point configuration.";
-       leaf etht-svc-end-point-name {
-         type string;
-         description
-         "The name of the logical end point of ETH service. ";
-       }
-
-       leaf etht-svc-end-point-id {
-         type string;
-         description
-         "The identifier of the logical end point of ETH service.";
-       }
-
-       leaf etht-svc-end-point-descr {
-         type string;
-         description
-         "The description of the logical end point of ETH service. ";
-       }
-
-       leaf topology-role {
-         type identityref {
-           base etht-types:topology-role;
-         }
-         description
-         "Indicating the underlay topology role,
-         e.g., hub,spoke, any-to-any ";
-       }
-
-       container resilience {
-         description
-         "Placeholder for resilience configuration, for future study. ";
-       }
-
-       list etht-svc-access-points {
-         key access-point-id;
-         min-elements "1";
-   /*
-     Open Issue:
-       Is it possible to limit the max-elements only for p2p services?
-         max-elements "2";
-   */
-         description
-           "List of the ETH trasport services access point instances.";
-
-         leaf access-point-id {
-           type string;
-           description
-             "ID of the service access point instance";
-         }
-         uses etht-svc-access-parameters;
-       }
-
-       leaf service-classification-type {
-         type identityref {
-           base etht-types:service-classification-type;
-         }
-         description
-           "Service classification type.";
-       }
-
-       choice service-classification {
-         description
-           "Access classification can be port-based or
-            VLAN based.";
-         case port-classification {
-           /* no additional information */
-         }
-
-         case vlan-classification {
-           container outer-tag {
-             presence "The outermost VLAN tag exists";
-             description
-               "Classifies traffic using the outermost VLAN tag.";
-
-             uses vlan-classification;
-           }
-           container second-tag {
-             must
-               '../outer-tag/tag-type = "etht-types:classify-s-vlan" and ' +
-               'tag-type = "etht-types:classify-c-vlan"'
-             {
-               error-message
-                 "
-                   When matching two tags, the outermost tag must be
-                   specified and of S-VLAN type and the second
-                   outermost tag must be of C-VLAN tag type.
-                 ";
-               description
-                 "
-                   For IEEE 802.1Q interoperability, when matching two
-                   tags, it is required that the outermost tag exists
-                   and is an S-VLAN, and the second outermost tag is a
-                   C-VLAN.
-                 ";
-             }
-             presence "The second outermost VLAN tag exists";
-
-             description
-               "Classifies traffic using the second outermost VLAN tag.";
-
-             uses vlan-classification;
-           }
-         }
-       }
-
-   /*
-    * Open issue: can we constraints it to be used only with mp services?
-    */
-       leaf split-horizon-group {
-         type string;
-         description "Identify a split horizon group";
-       }
-       uses bandwidth-profiles;
-
-       container vlan-operations {
-         description
-           "Configuration of VLAN operations.";
-         choice direction {
-           description
-             "Whether the VLAN operations are symmetrical or
-              asymmetrical";
-           case symmetrical {
-             container symmetrical-operation {
-               uses vlan-operations;
-               description
-                 "Symmetrical operations.
-                  Expressed in the ingress direction, but
-                  the reverse operation is applied to egress traffic";
-             }
-           }
-           case asymmetrical {
-             container asymmetrical-operation {
-               description "Asymmetrical operations";
-               container ingress {
-                 uses vlan-operations;
-                 description "Ingress operations";
-               }
-               container egress {
-                 uses vlan-operations;
-                 description "Egress operations";
-               }
-             }
-           }
-         }
-       }
-     }
-
-     grouping pm-config-grouping {
-       description
-         "Grouping used for Performance Monitoring Configuration. ";
-       leaf pm-enable {
-         type boolean;
-         description
-         "Whether to enable the performance monitoring.";
-       }
-
-       leaf sending-rate-high {
-         type uint64;
-         description
-         "The upperbound of sending rate.";
-       }
-
-       leaf sending-rate-low {
-         type uint64;
-         description
-         "The lowerbound of sending rate.";
-       }
-
-       leaf receiving-rate-high {
-         type uint64;
-         description
-         "The upperbound of receiving rate.";
-       }
-
-       leaf receiving-rate-low {
-         type uint64;
-         description
-         "The lowerbound of receiving rate.";
-       }
-     }
-
-     grouping pw-segment-grouping {
-       description
-         "Grouping used for PW configuration. ";
-       leaf pw-id {
-         type string;
-         description
-         "The Identifier information of pseudowire. ";
-       }
-
-       leaf pw-name {
-         type string;
-         description
-         "The name information of pseudowire.";
-       }
-
-       leaf transmit-label {
-         type rt-types:mpls-label;
-         description
-         "Transmit label information in PW. ";
-       }
-
-       leaf receive-label {
-         type rt-types:mpls-label;
-         description
-         "Receive label information in PW. ";
-       }
-       leaf encapsulation-type {
-         type identityref {
-           base etht-types:encapsulation-type;
-         }
-         description
-           "The encapsulation type, raw or tag. ";
-       }
-
-       leaf oper-status {
-         type identityref {
-           base te-types:tunnel-state-type;
-         }
-         config false;
-         description
-           "The operational state of the PW segment. ";
-       }
-
-       container ingress-bandwidth-profile {
-         description
-           "Bandwidth Profile for ingress. ";
-         uses pw-segment-named-or-value-bandwidth-profile;
-       }
-
-       list pw-paths {
-         key path-id;
-         description
-           "A list of pw paths. ";
-
-         leaf path-id {
-           type uint8;
-           description
-             "The identifier of pw paths. ";
-
-         }
-
-         list tp-tunnels {
-           key name;
-           description
-             "Names of TP Tunnel underlay";
-           leaf name {
-             type string;
-             description
-               "Names of TP Tunnel underlay";
-             }
-         }
-       }
-
-     }
-     grouping pw-segment-named-or-value-bandwidth-profile {
-       description
-         "A grouping to configure a bandwdith profile either by
-          referencing a named bandwidth profile or by
-          configuring the values of the bandwidth profile attributes.";
-       choice style {
-         description
-           "Whether the bandwidth profile is named or defined by value";
-         case named {
-           description
-             "Named bandwidth profile.";
-           leaf bandwidth-profile-name {
-             type leafref {
-               path "/ethtsvc:etht-svc/ethtsvc:globals/"
-               + "ethtsvc:named-bandwidth-profiles/"
-               + "ethtsvc:bandwidth-profile-name";
-             }
-             description
-               "Name of the bandwidth profile.";
-           }
-         }
-         case value {
-           description
-             "Bandwidth profile configured by value.";
-           uses etht-types:pw-segement-bandwidth-profile-grouping;
-         }
-       }
-     }
-
-     grouping tunnels-grouping {
-       description
-         "A group of tunnels. ";
-       leaf name {
-         type leafref {
-           path "/te:te/te:tunnels/te:tunnel/te:name";
-           require-instance false;
-         }
-         description "Dependency tunnel name";
-       }
-       leaf encoding {
-         type identityref {
-           base te-types:lsp-encoding-types;
-         }
-         description "LSP encoding type";
-         reference "RFC3945";
-       }
-       leaf switching-type {
-         type identityref {
-           base te-types:switching-capabilities;
-         }
-         description "LSP switching type";
-         reference "RFC3945";
-       }
-     }
-   }
diff --git a/src/nbi/service/rest_server/nbi_plugins/ietf_network_new/yang/ietf-eth-tran-types@2023-10-23.yang b/src/nbi/service/rest_server/nbi_plugins/ietf_network_new/yang/ietf-eth-tran-types@2023-10-23.yang
deleted file mode 100644
index f46908b34f3cc30a0b19359c032a7cd8856b1b08..0000000000000000000000000000000000000000
--- a/src/nbi/service/rest_server/nbi_plugins/ietf_network_new/yang/ietf-eth-tran-types@2023-10-23.yang
+++ /dev/null
@@ -1,457 +0,0 @@
- module ietf-eth-tran-types {
-     yang-version 1.1;
-     namespace "urn:ietf:params:xml:ns:yang:ietf-eth-tran-types";
-
-     prefix "etht-types";
-
-     organization
-       "Internet Engineering Task Force (IETF) CCAMP WG";
-     contact
-       "
-         WG List: <mailto:ccamp@ietf.org>
-
-         ID-draft editor:
-           Haomian Zheng (zhenghaomian@huawei.com);
-           Italo Busi (italo.busi@huawei.com);
-           Aihua Guo (aihuaguo.ietf@gmail.com);
-           Anton Snitser (antons@sedonasys.com);
-           Francesco Lazzeri (francesco.lazzeri@ericsson.com);
-           Yunbin Xu (xuyunbin@caict.ac.cn);
-           Yang Zhao (zhaoyangyjy@chinamobile.com);
-           Xufeng Liu (xufeng.liu.ietf@gmail.com);
-           Giuseppe Fioccola (giuseppe.fioccola@huawei.com);
-           Chaode Yu (yuchaode@huawei.com)
-       ";
-
-     description
-       "This module defines the ETH types.
-        The model fully conforms to the Network Management
-        Datastore Architecture (NMDA).
-
-        Copyright (c) 2019 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 Simplified BSD License
-        set forth in Section 4.c of the IETF Trust's Legal Provisions
-        Relating to IETF Documents
-        (https://trustee.ietf.org/license-info).
-        This version of this YANG module is part of RFC XXXX; see
-        the RFC itself for full legal notices.";
-
-     revision 2023-10-23 {
-       description
-         "version -05 as a WG draft";
-       reference
-         "draft-ietf-ccamp-client-signal-yang";
-     }
-
-     /*
-      * Identities
-      */
-
-     identity eth-vlan-tag-type {
-       description
-         "ETH VLAN tag type.";
-     }
-
-     identity c-vlan-tag-type {
-       base eth-vlan-tag-type;
-       description
-         "802.1Q Customer VLAN";
-     }
-
-     identity s-vlan-tag-type {
-       base eth-vlan-tag-type;
-       description
-         "802.1Q Service VLAN (QinQ)";
-     }
-
-     identity service-classification-type {
-       description
-         "Service classification.";
-     }
-
-     identity port-classification {
-       base service-classification-type;
-       description
-         "Port classification.";
-     }
-     identity vlan-classification {
-       base service-classification-type;
-       description
-         "VLAN classification.";
-     }
-
-     identity eth-vlan-tag-classify {
-       description
-         "VLAN tag classification.";
-     }
-
-     identity classify-c-vlan {
-       base eth-vlan-tag-classify;
-       description
-         "Classify 802.1Q Customer VLAN tag.
-          Only C-tag type is accepted";
-     }
-
-     identity classify-s-vlan {
-       base eth-vlan-tag-classify;
-       description
-         "Classify 802.1Q Service VLAN (QinQ) tag.
-          Only S-tag type is accepted";
-     }
-
-     identity classify-s-or-c-vlan {
-       base eth-vlan-tag-classify;
-       description
-         "Classify S-VLAN or C-VLAN tag-classify.
-          Either tag is accepted";
-     }
-
-     identity bandwidth-profile-type-ir {
-       description
-         "Bandwidth Profile Types";
-     }
-
-     identity mef-10-bwp {
-       base bandwidth-profile-type-ir;
-       description
-         "MEF 10 Bandwidth Profile";
-     }
-
-     identity rfc-2697-bwp {
-       base bandwidth-profile-type-ir;
-       description
-         "RFC 2697 Bandwidth Profile";
-     }
-     identity rfc-2698-bwp {
-       base bandwidth-profile-type-ir;
-       description
-         "RFC 2698 Bandwidth Profile";
-     }
-
-     identity rfc-4115-bwp {
-       base bandwidth-profile-type-ir;
-       description
-         "RFC 4115 Bandwidth Profile";
-     }
-
-     identity service-type-ir {
-       description
-         "Type of Ethernet service.";
-     }
-
-     identity p2p-svc {
-       base service-type-ir;
-       description
-         "Ethernet point-to-point service (EPL, EVPL).";
-     }
-
-     identity rmp-svc {
-       base service-type-ir;
-       description
-         "Ethernet rooted-multitpoint service (E-TREE, EP-TREE).";
-     }
-
-     identity mp2mp-svc {
-       base service-type-ir;
-       description
-         "Ethernet multipoint-to-multitpoint service (E-LAN, EP-LAN).";
-     }
-
-     identity lifecycle-status-ir {
-       description
-         "Lifecycle Status.";
-     }
-
-     identity installed {
-       base lifecycle-status-ir;
-       description
-         "Installed.";
-     }
-
-     identity planned {
-       base lifecycle-status-ir;
-       description
-         "Planned.";
-     }
-
-     identity pending-removal {
-       base lifecycle-status-ir;
-       description
-         "Pending Removal.";
-     }
-
-     /*
-      * Type Definitions
-      */
-
-     typedef eth-tag-type {
-       type identityref {
-         base eth-vlan-tag-type;
-       }
-       description
-         "Identifies a specific ETH VLAN tag type.";
-     }
-
-     typedef eth-tag-classify {
-       type identityref {
-         base eth-vlan-tag-classify;
-       }
-       description
-         "Identifies a specific VLAN tag classification.";
-     }
-
-     typedef vlanid {
-       type uint16 {
-         range "1..4094";
-       }
-       description
-         "The 12-bit VLAN-ID used in the VLAN Tag header.";
-     }
-
-     typedef vid-range-type {
-       type string {
-         pattern "([1-9][0-9]{0,3}(-[1-9][0-9]{0,3})?" +
-                 "(,[1-9][0-9]{0,3}(-[1-9][0-9]{0,3})?)*)";
-       }
-       description
-         "A list of VLAN Ids, or non overlapping VLAN ranges, in
-          ascending order, between 1 and 4094.
-          This type is used to match an ordered list of VLAN Ids, or
-          contiguous ranges of VLAN Ids. Valid VLAN Ids must be in the
-          range 1 to 4094, and included in the list in non overlapping
-          ascending order.
-
-          For example: 1,10-100,50,500-1000";
-     }
-
-     typedef bandwidth-profile-type {
-       type identityref {
-         base bandwidth-profile-type-ir;
-       }
-       description
-         "Identifies a specific Bandwidth Profile type.";
-     }
-
-     typedef service-type {
-       type identityref {
-         base service-type-ir;
-       }
-       description
-         "Identifies the type of Ethernet service.";
-     }
-
-     typedef lifecycle-status {
-       type identityref {
-         base lifecycle-status-ir;
-       }
-       description
-         "Identifies the lLifecycle Status .";
-     }
-
-     /*
-      * Grouping Definitions
-      */
-
-     grouping etht-bandwidth-profiles {
-       description
-         "Bandwidth profile configuration paramters.";
-
-       leaf bandwidth-profile-type {
-         type etht-types:bandwidth-profile-type;
-         description
-           "The type of bandwidth profile.";
-       }
-       leaf CIR {
-         type uint64;
-         description
-           "Committed Information Rate in Kbps";
-       }
-       leaf CBS {
-         type uint64;
-         description
-           "Committed Burst Size in in KBytes";
-       }
-       leaf EIR {
-         type uint64;
-         /* Need to indicate that EIR is not supported by RFC 2697
-
-         must
-           '../bw-profile-type = "mef-10-bwp" or ' +
-           '../bw-profile-type = "rfc-2698-bwp" or ' +
-           '../bw-profile-type = "rfc-4115-bwp"'
-
-         must
-           '../bw-profile-type != "rfc-2697-bwp"'
-         */
-         description
-           "Excess Information Rate in Kbps
-            In case of RFC 2698, PIR = CIR + EIR";
-       }
-       leaf EBS {
-         type uint64;
-         description
-           "Excess Burst Size in KBytes.
-             In case of RFC 2698, PBS = CBS + EBS";
-       }
-       leaf color-aware {
-         type boolean;
-         description
-           "Indicates weather the color-mode is
-           color-aware or color-blind.";
-       }
-       leaf coupling-flag {
-         type boolean;
-         /* Need to indicate that Coupling Flag is defined only for MEF 10
-
-         must
-           '../bw-profile-type = "mef-10-bwp"'
-         */
-         description
-           "Coupling Flag.";
-       }
-     }
-
-     identity topology-role {
-       description
-         "The role of underlay topology: e.g., hub, spoke,
-         any-to-any.";
-     }
-
-     identity resilience {
-       description
-       "Placeholder for resilience information in data plane,
-       for future study. ";
-     }
-
-     identity access-role {
-       description
-       "Indicating whether the access is a working or protection access.";
-     }
-
-     identity root-primary {
-       base access-role;
-       description
-         "Designates the primary root UNI of an E-Tree service, and may also
-              designates the UNI access role of E-LINE and E-LAN service.";
-     }
-
-     identity root-backup {
-       base access-role;
-       description
-         "Designates the backup root UNI of an E-Tree service.";
-     }
-
-     identity leaf-access {
-       base access-role;
-       description
-         "Designates the leaf UNI of an E-Tree service.";
-     }
-
-     identity leaf-edge {
-       base access-role;
-       description "";
-     }
-
-     identity performance {
-       description
-       "Placeholder for performance information, for future study.";
-     }
-
-     identity encapsulation-type {
-       description
-       "Indicating how the service is encapsulated (to PW), e.g, raw or tag. ";
-     }
-     grouping pw-segement-bandwidth-profile-grouping {
-       description
-         "bandwidth profile grouping for PW segment. ";
-       leaf bandwidth-profile-type {
-         type etht-types:bandwidth-profile-type;
-         description
-           "The type of bandwidth profile.";
-       }
-       leaf CIR {
-         type uint64;
-         description
-           "Committed Information Rate in Kbps";
-       }
-       leaf CBS {
-         type uint64;
-         description
-           "Committed Burst Size in in KBytes";
-       }
-       leaf EIR {
-         type uint64;
-         /* Need to indicate that EIR is not supported by RFC 2697
-
-         must
-           '../bw-profile-type = "mef-10-bwp" or ' +
-           '../bw-profile-type = "rfc-2698-bwp" or ' +
-           '../bw-profile-type = "rfc-4115-bwp"'
-
-         must
-           '../bw-profile-type != "rfc-2697-bwp"'
-         */
-         description
-           "Excess Information Rate in Kbps
-            In case of RFC 2698, PIR = CIR + EIR";
-       }
-       leaf EBS {
-         type uint64;
-         description
-           "Excess Burst Size in KBytes.
-             In case of RFC 2698, PBS = CBS + EBS";
-       }
-     }
-         grouping eth-bandwidth {
-         description
-           "Available bandwith for ethernet.";
-         leaf eth-bandwidth {
-           type uint64{
-             range "0..10000000000";
-           }
-           units "Kbps";
-           description
-             "Available bandwith value expressed in kilobits per second";
-         }
-       }
-
-       grouping eth-label-restriction {
-         description
-           "Label Restriction for ethernet.";
-         leaf tag-type {
-           type etht-types:eth-tag-type;
-           description "VLAN tag type.";
-         }
-         leaf priority {
-           type uint8;
-           description "priority.";
-         }
-       }
-       grouping eth-label {
-         description
-           "Label for ethernet.";
-         leaf vlanid {
-           type etht-types:vlanid;
-             description
-               "VLAN tag id.";
-         }
-       }
-
-       grouping eth-label-step {
-         description "Label step for Ethernet VLAN";
-         leaf eth-step {
-           type uint16 {
-             range "1..4095";
-         }
-         default 1;
-         description
-           "Label step which represent possible increments for
-            an Ethernet VLAN tag.";
-         reference
-           "IEEE 802.1ad: Provider Bridges.";
-       }
-     }
-   }
diff --git a/src/nbi/service/rest_server/nbi_plugins/ietf_network_new/yang/ietf-l3-unicast-topology@2018-02-26.yang b/src/nbi/service/rest_server/nbi_plugins/ietf_network_new/yang/ietf-l3-unicast-topology@2018-02-26.yang
new file mode 100644
index 0000000000000000000000000000000000000000..39fcebd767bf7ea687de523b0dd0ba731d3c80e7
--- /dev/null
+++ b/src/nbi/service/rest_server/nbi_plugins/ietf_network_new/yang/ietf-l3-unicast-topology@2018-02-26.yang
@@ -0,0 +1,359 @@
+module ietf-l3-unicast-topology {
+  yang-version 1.1;
+  namespace
+    "urn:ietf:params:xml:ns:yang:ietf-l3-unicast-topology";
+  prefix "l3t";
+  import ietf-network {
+    prefix "nw";
+  }
+  import ietf-network-topology {
+    prefix "nt";
+  }
+  import ietf-inet-types {
+    prefix "inet";
+  }
+  import ietf-routing-types {
+    prefix "rt-types";
+  }
+  organization
+    "IETF I2RS (Interface to the Routing System) Working Group";
+  contact
+    "WG Web:    <https://datatracker.ietf.org/wg/i2rs/>
+     WG List:   <mailto:i2rs@ietf.org>
+     Editor:    Alexander Clemm
+                <mailto:ludwig@clemm.org>
+     Editor:    Jan Medved
+                <mailto:jmedved@cisco.com>
+     Editor:    Robert Varga
+                <mailto:robert.varga@pantheon.tech>
+     Editor:    Xufeng Liu
+                <mailto:xufeng.liu.ietf@gmail.com>
+     Editor:    Nitin Bahadur
+                <mailto:nitin_bahadur@yahoo.com>
+     Editor:    Hariharan Ananthakrishnan
+                <mailto:hari@packetdesign.com>";
+  description
+    "This module defines a model for Layer 3 Unicast
+     topologies.
+
+     Copyright (c) 2018 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 Simplified 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 8346; see the RFC itself for full legal notices.";
+  revision "2018-02-26" {
+    description
+      "Initial revision.";
+    reference
+      "RFC 8346: A YANG Data Model for Layer 3 Topologies";
+  }
+
+  identity flag-identity {
+    description "Base type for flags";
+  }
+
+  typedef l3-event-type {
+    type enumeration {
+      enum "add" {
+        description
+          "A Layer 3 node, link, prefix, or termination point has
+          been added";
+      }
+      enum "remove" {
+        description
+          "A Layer 3 node, link, prefix, or termination point has
+          been removed";
+      }
+      enum "update" {
+        description
+          "A Layer 3 node, link, prefix, or termination point has
+          been updated";
+      }
+    }
+    description "Layer 3 event type for notifications";
+  }
+
+  typedef prefix-flag-type {
+    type identityref {
+      base "flag-identity";
+    }
+    description "Prefix flag attributes";
+  }
+
+  typedef node-flag-type {
+    type identityref {
+      base "flag-identity";
+    }
+    description "Node flag attributes";
+  }
+
+  typedef link-flag-type {
+    type identityref {
+      base "flag-identity";
+    }
+    description "Link flag attributes";
+  }
+
+  typedef l3-flag-type {
+    type identityref {
+      base "flag-identity";
+    }
+    description "L3 flag attributes";
+  }
+
+  grouping l3-prefix-attributes {
+    description
+      "L3 prefix attributes";
+    leaf prefix {
+      type inet:ip-prefix;
+      description
+        "IP prefix value";
+    }
+    leaf metric {
+      type uint32;
+      description
+        "Prefix metric";
+    }
+    leaf-list flag {
+      type prefix-flag-type;
+      description
+        "Prefix flags";
+    }
+  }
+  grouping l3-unicast-topology-type {
+    description "Identifies the topology type to be L3 Unicast.";
+    container l3-unicast-topology {
+      presence "indicates L3 Unicast topology";
+      description
+        "The presence of the container node indicates L3 Unicast
+        topology";
+    }
+  }
+  grouping l3-topology-attributes {
+    description "Topology scope attributes";
+    container l3-topology-attributes {
+      description "Contains topology attributes";
+      leaf name {
+        type string;
+        description
+          "Name of the topology";
+      }
+      leaf-list flag {
+        type l3-flag-type;
+        description
+          "Topology flags";
+      }
+    }
+  }
+  grouping l3-node-attributes {
+    description "L3 node scope attributes";
+    container l3-node-attributes {
+      description
+        "Contains node attributes";
+      leaf name {
+        type inet:domain-name;
+        description
+          "Node name";
+      }
+      leaf-list flag {
+        type node-flag-type;
+        description
+          "Node flags";
+      }
+      leaf-list router-id {
+        type rt-types:router-id;
+        description
+          "Router-id for the node";
+      }
+      list prefix {
+        key "prefix";
+        description
+          "A list of prefixes along with their attributes";
+        uses l3-prefix-attributes;
+      }
+    }
+  }
+  grouping l3-link-attributes {
+    description
+      "L3 link scope attributes";
+    container l3-link-attributes {
+      description
+        "Contains link attributes";
+      leaf name {
+        type string;
+        description
+          "Link Name";
+      }
+      leaf-list flag {
+        type link-flag-type;
+        description
+          "Link flags";
+      }
+      leaf metric1 {
+        type uint64;
+        description
+            "Link Metric 1";
+      }
+      leaf metric2 {
+        type uint64;
+        description
+            "Link Metric 2";
+      }
+    }
+  }
+  grouping l3-termination-point-attributes {
+    description "L3 termination point scope attributes";
+    container l3-termination-point-attributes {
+      description
+        "Contains termination point attributes";
+      choice termination-point-type {
+        description
+          "Indicates the termination point type";
+        case ip {
+          leaf-list ip-address {
+            type inet:ip-address;
+            description
+              "IPv4 or IPv6 address.";
+          }
+        }
+        case unnumbered {
+          leaf unnumbered-id {
+            type uint32;
+            description
+              "Unnumbered interface identifier.
+               The identifier will correspond to the ifIndex value
+               of the interface, i.e., the ifIndex value of the
+               ifEntry that represents the interface in
+               implementations where the Interfaces Group MIB
+               (RFC 2863) is supported.";
+            reference
+              "RFC 2863: The Interfaces Group MIB";
+          }
+        }
+        case interface-name {
+          leaf interface-name {
+            type string;
+            description
+              "Name of the interface.  The name can (but does not
+               have to) correspond to an interface reference of a
+               containing node's interface, i.e., the path name of a
+               corresponding interface data node on the containing
+               node reminiscent of data type interface-ref defined
+               in RFC 8343. It should be noted that data type
+               interface-ref of RFC 8343 cannot be used directly,
+
+               as this data type is used to reference an interface
+               in a datastore of a single node in the network, not
+               to uniquely reference interfaces across a network.";
+            reference
+              "RFC 8343: A YANG Data Model for Interface Management";
+          }
+        }
+      }
+    }
+  }
+  augment "/nw:networks/nw:network/nw:network-types" {
+    description
+      "Introduces new network type for L3 Unicast topology";
+    uses l3-unicast-topology-type;
+  }
+  augment "/nw:networks/nw:network" {
+    when "nw:network-types/l3t:l3-unicast-topology" {
+      description
+        "Augmentation parameters apply only for networks with
+        L3 Unicast topology";
+    }
+    description
+        "L3 Unicast for the network as a whole";
+    uses l3-topology-attributes;
+  }
+  augment "/nw:networks/nw:network/nw:node" {
+    when "../nw:network-types/l3t:l3-unicast-topology" {
+      description
+        "Augmentation parameters apply only for networks with
+        L3 Unicast topology";
+    }
+    description
+        "L3 Unicast node-level attributes ";
+    uses l3-node-attributes;
+  }
+  augment "/nw:networks/nw:network/nt:link" {
+    when "../nw:network-types/l3t:l3-unicast-topology" {
+      description
+        "Augmentation parameters apply only for networks with
+        L3 Unicast topology";
+    }
+    description
+      "Augments topology link attributes";
+    uses l3-link-attributes;
+  }
+  augment "/nw:networks/nw:network/nw:node/"
+         +"nt:termination-point" {
+    when "../../nw:network-types/l3t:l3-unicast-topology" {
+      description
+        "Augmentation parameters apply only for networks with
+        L3 Unicast topology";
+    }
+    description "Augments topology termination point configuration";
+    uses l3-termination-point-attributes;
+  }
+  notification l3-node-event {
+    description
+      "Notification event for L3 node";
+    leaf l3-event-type {
+      type l3-event-type;
+      description
+        "Event type";
+    }
+    uses nw:node-ref;
+    uses l3-unicast-topology-type;
+    uses l3-node-attributes;
+  }
+  notification l3-link-event {
+    description
+      "Notification event for L3 link";
+    leaf l3-event-type {
+      type l3-event-type;
+      description
+        "Event type";
+    }
+    uses nt:link-ref;
+    uses l3-unicast-topology-type;
+    uses l3-link-attributes;
+  }
+  notification l3-prefix-event {
+    description
+      "Notification event for L3 prefix";
+    leaf l3-event-type {
+      type l3-event-type;
+      description
+        "Event type";
+    }
+    uses nw:node-ref;
+    uses l3-unicast-topology-type;
+    container prefix {
+      description
+        "Contains L3 prefix attributes";
+      uses l3-prefix-attributes;
+    }
+  }
+  notification termination-point-event {
+    description
+      "Notification event for L3 termination point";
+    leaf l3-event-type {
+      type l3-event-type;
+      description
+        "Event type";
+    }
+    uses nt:tp-ref;
+    uses l3-unicast-topology-type;
+    uses l3-termination-point-attributes;
+  }
+}
diff --git a/src/nbi/service/rest_server/nbi_plugins/ietf_network_new/yang/ietf-layer1-types@2022-10-14.yang b/src/nbi/service/rest_server/nbi_plugins/ietf_network_new/yang/ietf-layer1-types@2022-10-14.yang
deleted file mode 100644
index 188336931c36000b287bad5258550e7d3fa7016b..0000000000000000000000000000000000000000
--- a/src/nbi/service/rest_server/nbi_plugins/ietf_network_new/yang/ietf-layer1-types@2022-10-14.yang
+++ /dev/null
@@ -1,1414 +0,0 @@
-   module ietf-layer1-types {
-     yang-version 1.1;
-     namespace "urn:ietf:params:xml:ns:yang:ietf-layer1-types";
-     prefix "l1-types";
-
-     import ietf-routing-types {
-       prefix rt-types;
-       reference
-         "RFC 8294: Common YANG Data Types for the Routing Area";
-     }
-
-     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>";
-
-     description
-       "This module defines Layer 1 types. The model fully conforms
-        to the Network Management Datastore Architecture (NMDA).
-
-        Copyright (c) 2022 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 "2022-10-14" {
-       description
-         "Initial Version";
-       reference
-         "RFC XXXX: A YANG Data Model for Layer 1 Types";
-       // RFC Editor: replace XXXX with actual RFC number, update date
-       // information and remove this note
-     }
-
-     /*
-      * Identities
-      */
-
-     identity tributary-slot-granularity {
-       description
-         "Tributary Slot Granularity (TSG)";
-       reference
-         "ITU-T G.709 v6.0 (06/2020): Interfaces for the Optical
-          Transport Network (OTN)";
-     }
-
-     identity tsg-1.25G {
-       base tributary-slot-granularity;
-       description
-         "1.25G tributary slot granularity";
-     }
-
-     identity tsg-2.5G {
-       base tributary-slot-granularity;
-       description
-         "2.5G tributary slot granularity";
-     }
-
-     identity tsg-5G {
-       base tributary-slot-granularity;
-       description
-         "5G tributary slot granularity";
-     }
-
-     identity odu-type {
-       description
-         "Base identity from which specific Optical Data Unit (ODU)
-         type is derived.";
-       reference
-         "RFC7139: GMPLS Signaling Extensions for Control of Evolving
-          G.709 Optical Transport Networks
-
-
-
-
-          ITU-T G.709 v6.0 (06/2020): Interfaces for the Optical
-          Transport Network (OTN)";
-     }
-
-     identity ODU0 {
-       base odu-type;
-       description
-         "ODU0 type (1.24Gb/s).";
-       reference
-         "RFC7139: GMPLS Signaling Extensions for Control of Evolving
-          G.709 Optical Transport Networks
-
-          ITU-T G.709 v6.0 (06/2020): Interfaces for the Optical
-          Transport Network (OTN)";
-     }
-
-     identity ODU1 {
-       base odu-type;
-       description
-         "ODU1 type (2.49Gb/s).";
-       reference
-         "RFC7139: GMPLS Signaling Extensions for Control of Evolving
-          G.709 Optical Transport Networks
-
-          ITU-T G.709 v6.0 (06/2020): Interfaces for the Optical
-          Transport Network (OTN)";
-     }
-
-     identity ODU2 {
-       base odu-type;
-       description
-         "ODU2 type (10.03Gb/s).";
-       reference
-         "RFC7139: GMPLS Signaling Extensions for Control of Evolving
-          G.709 Optical Transport Networks
-
-          ITU-T G.709 v6.0 (06/2020): Interfaces for the Optical
-          Transport Network (OTN)";
-     }
-
-     identity ODU2e {
-       base odu-type;
-       description
-         "ODU2e type (10.39Gb/s).";
-       reference
-         "RFC7139: GMPLS Signaling Extensions for Control of Evolving
-          G.709 Optical Transport Networks
-
-
-
-
-          ITU-T G.709 v6.0 (06/2020): Interfaces for the Optical
-          Transport Network (OTN)";
-     }
-
-     identity ODU3 {
-       base odu-type;
-       description
-         "ODU3 type (40.31Gb/s).";
-       reference
-         "RFC7139: GMPLS Signaling Extensions for Control of Evolving
-          G.709 Optical Transport Networks
-
-          ITU-T G.709 v6.0 (06/2020): Interfaces for the Optical
-          Transport Network (OTN)";
-     }
-
-     identity ODU4 {
-       base odu-type;
-       description
-         "ODU4 type (104.79Gb/s).";
-       reference
-         "RFC7139: GMPLS Signaling Extensions for Control of Evolving
-          G.709 Optical Transport Networks
-
-          ITU-T G.709 v6.0 (06/2020): Interfaces for the Optical
-          Transport Network (OTN)";
-     }
-
-     identity ODUflex {
-       base odu-type;
-       description
-         "ODUflex type (flexible bit rate, not resizable).
-
-          It could be used for any type of ODUflex, including
-          ODUflex(CBR), ODUflex(GFP), ODUflex(GFP,n,k), ODUflex(IMP,s),
-          ODUflex(IMP) and ODUflex(FlexE-aware).";
-       reference
-         "RFC7139: GMPLS Signaling Extensions for Control of Evolving
-          G.709 Optical Transport Networks
-
-          ITU-T G.709 v6.0 (06/2020): Interfaces for the Optical
-          Transport Network (OTN)";
-     }
-
-     identity ODUflex-resizable {
-       base odu-type;
-       description
-         "ODUflex protocol (flexible bit rate, resizable).
-
-
-
-
-          It could be used only for ODUflex(GFP,n,k).";
-       reference
-         "RFC7139: GMPLS Signaling Extensions for Control of Evolving
-          G.709 Optical Transport Networks
-
-          ITU-T G.709 v6.0 (06/2020): Interfaces for the Optical
-          Transport Network (OTN)";
-     }
-
-     identity protocol {
-       description
-         "Base identity from which specific protocol is derived.";
-       reference
-         "MEF63: Subscriber Layer 1 Service Attributes";
-     }
-
-     identity Ethernet {
-       base protocol;
-       description
-         "Ethernet protocol.";
-       reference
-         "MEF63: Subscriber Layer 1 Service Attributes";
-     }
-
-     identity Fibre-Channel {
-       base protocol;
-       description
-         "Fibre-Channel (FC) protocol.";
-       reference
-         "MEF63: Subscriber Layer 1 Service Attributes";
-     }
-
-     identity SDH {
-       base protocol;
-       description
-         "SDH protocol.";
-       reference
-         "MEF63: Subscriber Layer 1 Service Attributes";
-     }
-
-     identity SONET {
-       base protocol;
-       description
-         "SONET protocol.";
-       reference
-         "MEF63: Subscriber Layer 1 Service Attributes";
-     }
-
-
-
-
-     identity client-signal {
-       description
-         "Base identity from which specific Constant Bit Rate (CBR)
-         client signal is derived";
-     }
-
-     identity coding-func {
-       description
-         "Base identity from which specific coding function
-          is derived.";
-       reference
-         "MEF63: Subscriber Layer 1 Service Attributes";
-     }
-
-     identity ETH-1Gb {
-       base client-signal;
-       description
-         "Client signal type of 1GbE";
-       reference
-         "RFC7139: GMPLS Signaling Extensions for Control of Evolving
-          G.709 Optical Transport Networks
-
-          ITU-T G.709 v6.0 (06/2020): Interfaces for the Optical
-          Transport Network (OTN)";
-     }
-
-     identity ETH-10Gb-LAN {
-       base client-signal;
-       description
-         "Client signal type of ETH-10Gb-LAN (10.3 Gb/s)";
-       reference
-         "RFC7139: GMPLS Signaling Extensions for Control of Evolving
-          G.709 Optical Transport Networks
-
-          ITU-T G.709 v6.0 (06/2020): Interfaces for the Optical
-          Transport Network (OTN)
-
-          IEEE 802.3-2018, Clause 49: IEEE Standard for Ethernet";
-     }
-
-     identity ETH-10Gb-WAN {
-       base client-signal;
-       description
-         "Client signal type of ETH-10Gb-WAN (9.95 Gb/s)";
-       reference
-         "RFC7139: GMPLS Signaling Extensions for Control of Evolving
-          G.709 Optical Transport Networks
-
-
-
-
-          ITU-T G.709 v6.0 (06/2020): Interfaces for the Optical
-          Transport Network (OTN)
-
-          IEEE 802.3-2018, Clause 50: IEEE Standard for Ethernet";
-     }
-
-     identity ETH-40Gb {
-       base client-signal;
-       description
-         "Client signal type of 40GbE";
-       reference
-         "RFC7139: GMPLS Signaling Extensions for Control of Evolving
-          G.709 Optical Transport Networks
-
-          ITU-T G.709 v6.0 (06/2020): Interfaces for the Optical
-          Transport Network (OTN)";
-     }
-
-     identity ETH-100Gb {
-       base client-signal;
-       description
-         "Client signal type of 100GbE";
-       reference
-         "RFC7139: GMPLS Signaling Extensions for Control of Evolving
-          G.709 Optical Transport Networks
-
-          ITU-T G.709 v6.0 (06/2020): Interfaces for the Optical
-          Transport Network (OTN)";
-     }
-
-     identity STM-1 {
-       base client-signal;
-       base coding-func;
-       description
-         "Client signal type of STM-1;
-          STM-1 G.707 (N=1) coding function.";
-       reference
-         "RFC7139: GMPLS Signaling Extensions for Control of Evolving
-          G.709 Optical Transport Networks
-
-          ITU-T G.709 v6.0 (06/2020): Interfaces for the Optical
-          Transport Network (OTN)
-
-          MEF63: Subscriber Layer 1 Service Attributes";
-     }
-
-     identity STM-4 {
-       base client-signal;
-
-
-
-
-       base coding-func;
-       description
-         "Client signal type of STM-4;
-          STM-4 G.707 (N=4) coding function.";
-       reference
-         "RFC7139: GMPLS Signaling Extensions for Control of Evolving
-          G.709 Optical Transport Networks
-
-          ITU-T G.709 v6.0 (06/2020): Interfaces for the Optical
-          Transport Network (OTN)
-
-          MEF63: Subscriber Layer 1 Service Attributes";
-     }
-
-     identity STM-16 {
-       base client-signal;
-       base coding-func;
-       description
-         "Client signal type of STM-16;
-          STM-16 G.707 (N=16) coding function.";
-       reference
-         "RFC7139: GMPLS Signaling Extensions for Control of Evolving
-          G.709 Optical Transport Networks
-
-          ITU-T G.709 v6.0 (06/2020): Interfaces for the Optical
-          Transport Network (OTN)
-
-          MEF63: Subscriber Layer 1 Service Attributes";
-     }
-
-     identity STM-64 {
-       base client-signal;
-       base coding-func;
-       description
-         "Client signal type of STM-64;
-          STM-64 G.707 (N=64) coding function.";
-       reference
-         "RFC7139: GMPLS Signaling Extensions for Control of Evolving
-          G.709 Optical Transport Networks
-
-          ITU-T G.709 v6.0 (06/2020): Interfaces for the Optical
-          Transport Network (OTN)
-
-          MEF63: Subscriber Layer 1 Service Attributes";
-     }
-
-     identity STM-256 {
-       base client-signal;
-
-
-
-
-       base coding-func;
-       description
-         "Client signal type of STM-256;
-          STM-256 G.707 (N=256) coding function.";
-       reference
-         "RFC7139: GMPLS Signaling Extensions for Control of Evolving
-          G.709 Optical Transport Networks
-
-          ITU-T G.709 v6.0 (06/2020): Interfaces for the Optical
-          Transport Network (OTN)
-
-          MEF63: Subscriber Layer 1 Service Attributes";
-     }
-
-     identity OC-3 {
-       base client-signal;
-       base coding-func;
-       description
-         "Client signal type of OC3;
-          OC-3 GR-253-CORE (N=3) coding function.";
-       reference
-         "ANSI T1.105-1995: Synchronous Optical Network (SONET)
-          Basic Description including Multiplex Structure, Rates,
-          and Formats
-
-          MEF63: Subscriber Layer 1 Service Attributes";
-     }
-
-     identity OC-12 {
-       base client-signal;
-       base coding-func;
-       description
-         "Client signal type of OC12;
-          OC-12 GR-253-CORE (N=12) coding function.";
-       reference
-         "ANSI T1.105-1995: Synchronous Optical Network (SONET)
-          Basic Description including Multiplex Structure, Rates,
-          and Formats
-
-          MEF63: Subscriber Layer 1 Service Attributes";
-     }
-
-     identity OC-48 {
-       base client-signal;
-       base coding-func;
-       description
-         "Client signal type of OC48;
-          OC-48 GR-253-CORE (N=48) coding function.";
-
-
-
-
-       reference
-         "ANSI T1.105-1995: Synchronous Optical Network (SONET)
-          Basic Description including Multiplex Structure, Rates,
-          and Formats
-
-          MEF63: Subscriber Layer 1 Service Attributes";
-     }
-
-     identity OC-192 {
-       base client-signal;
-       base coding-func;
-       description
-         "Client signal type of OC192;
-          OC-192 GR-253-CORE (N=192) coding function.";
-       reference
-         "ANSI T1.105-1995: Synchronous Optical Network (SONET)
-          Basic Description including Multiplex Structure, Rates,
-          and Formats
-
-          MEF63: Subscriber Layer 1 Service Attributes";
-     }
-
-     identity OC-768 {
-       base client-signal;
-       base coding-func;
-       description
-         "Client signal type of OC768;
-          OC-768 GR-253-CORE (N=768) coding function.";
-       reference
-         "ANSI T1.105-1995: Synchronous Optical Network (SONET)
-          Basic Description including Multiplex Structure, Rates,
-          and Formats
-
-          MEF63: Subscriber Layer 1 Service Attributes";
-     }
-
-     identity FC-100 {
-       base client-signal;
-       base coding-func;
-       description
-         "Client signal type of Fibre Channel FC-100;
-          FC-100 FC-FS-2 (1.0625 Gb/s) coding function.";
-       reference
-         "RFC7139: GMPLS Signaling Extensions for Control of Evolving
-          G.709 Optical Transport Networks
-
-          ITU-T G.709 v6.0 (06/2020): Interfaces for the Optical
-          Transport Network (OTN)
-
-
-
-
-          MEF63: Subscriber Layer 1 Service Attributes";
-     }
-
-     identity FC-200 {
-       base client-signal;
-       base coding-func;
-       description
-         "Client signal type of Fibre Channel FC-200;
-          FC-200 FC-FS-2 (2.125 Gb/s) coding function.";
-       reference
-         "RFC7139: GMPLS Signaling Extensions for Control of Evolving
-          G.709 Optical Transport Networks
-
-          ITU-T G.709 v6.0 (06/2020): Interfaces for the Optical
-          Transport Network (OTN)
-
-          MEF63: Subscriber Layer 1 Service Attributes";
-     }
-
-     identity FC-400 {
-       base client-signal;
-       base coding-func;
-       description
-         "Client signal type of Fibre Channel FC-400;
-          FC-400 FC-FS-2 (4.250 Gb/s) coding function.";
-       reference
-         "RFC7139: GMPLS Signaling Extensions for Control of Evolving
-          G.709 Optical Transport Networks
-
-          ITU-T G.709 v6.0 (06/2020): Interfaces for the Optical
-          Transport Network (OTN)
-
-          MEF63: Subscriber Layer 1 Service Attributes";
-     }
-
-     identity FC-800 {
-       base client-signal;
-       base coding-func;
-       description
-         "Client signal type of Fibre Channel FC-800;
-          FC-800 FC-FS-2 (8.500 Gb/s) coding function.";
-       reference
-         "RFC7139: GMPLS Signaling Extensions for Control of Evolving
-          G.709 Optical Transport Networks
-
-          ITU-T G.709 v6.0 (06/2020): Interfaces for the Optical
-          Transport Network (OTN)
-
-
-
-
-          MEF63: Subscriber Layer 1 Service Attributes";
-     }
-
-     identity FC-1200 {
-       base client-signal;
-       base coding-func;
-       description
-         "Client signal type of Fibre Channel FC-1200;
-          FC-1200 FC-10GFC (10.51875 Gb/s) coding function.";
-       reference
-         "RFC7139: GMPLS Signaling Extensions for Control of Evolving
-          G.709 Optical Transport Networks
-
-          ITU-T G.709 v6.0 (06/2020): Interfaces for the Optical
-          Transport Network (OTN)
-
-          MEF63: Subscriber Layer 1 Service Attributes";
-     }
-
-     identity FC-1600 {
-       base client-signal;
-       base coding-func;
-       description
-         "Client signal type of Fibre Channel FC-1600;
-          FC-1600 FC-FS-3 (14.025 Gb/s) coding function.";
-       reference
-         "RFC7139: GMPLS Signaling Extensions for Control of Evolving
-          G.709 Optical Transport Networks
-
-          ITU-T G.709 v6.0 (06/2020): Interfaces for the Optical
-          Transport Network (OTN)
-
-          MEF63: Subscriber Layer 1 Service Attributes";
-     }
-
-     identity FC-3200 {
-       base client-signal;
-       base coding-func;
-       description
-         "Client signal type of Fibre Channel FC-3200;
-          FC-3200 FC-FS-4 (28.05 Gb/s) coding function.";
-       reference
-         "RFC7139: GMPLS Signaling Extensions for Control of Evolving
-          G.709 Optical Transport Networks
-
-          ITU-T G.709 v6.0 (06/2020): Interfaces for the Optical
-          Transport Network (OTN)
-
-
-
-
-          MEF63: Subscriber Layer 1 Service Attributes";
-     }
-
-     identity FICON-4G {
-       base client-signal;
-       description
-         "Client signal type of Fibre Connection 4G";
-       reference
-         "RFC7139: GMPLS Signaling Extensions for Control of Evolving
-          G.709 Optical Transport Networks
-
-          ITU-T G.709 v6.0 (06/2020): Interfaces for the Optical
-          Transport Network (OTN)";
-     }
-
-     identity FICON-8G {
-       base client-signal;
-       description
-         "Client signal type of Fibre Connection 8G";
-       reference
-         "RFC7139: GMPLS Signaling Extensions for Control of Evolving
-          G.709 Optical Transport Networks
-
-          ITU-T G.709 v6.0 (06/2020): Interfaces for the Optical
-          Transport Network (OTN)";
-     }
-
-     identity ETH-1000X {
-       base coding-func;
-       description
-         "1000BASE-X PCS clause 36 coding function.";
-       reference
-         "MEF63: Subscriber Layer 1 Service Attributes";
-     }
-
-     identity ETH-10GW {
-       base coding-func;
-       description
-         "10GBASE-W (WAN PHY) PCS clause 49 and WIS clause 50
-          coding function.";
-       reference
-         "MEF63: Subscriber Layer 1 Service Attributes";
-     }
-
-     identity ETH-10GR {
-       base coding-func;
-       description
-         "10GBASE-R (LAN PHY) PCS clause 49 coding function.";
-
-
-
-
-       reference
-         "MEF63: Subscriber Layer 1 Service Attributes";
-     }
-
-     identity ETH-40GR {
-       base coding-func;
-       description
-         "40GBASE-R PCS clause 82 coding function.";
-       reference
-         "MEF63: Subscriber Layer 1 Service Attributes";
-     }
-
-     identity ETH-100GR {
-       base coding-func;
-       description
-         "100GBASE-R PCS clause 82 coding function.";
-       reference
-         "MEF63: Subscriber Layer 1 Service Attributes";
-     }
-
-     identity optical-interface-func {
-       description
-         "Base identity from which optical-interface-function
-          is derived.";
-       reference
-         "MEF63: Subscriber Layer 1 Service Attributes";
-     }
-
-     identity SX-PMD-1000 {
-       base optical-interface-func;
-       description
-         "SX-PMD-clause-38 Optical Interface function for
-         1000BASE-X PCS-36";
-       reference
-         "MEF63: Subscriber Layer 1 Service Attributes";
-     }
-
-     identity LX-PMD-1000 {
-       base optical-interface-func;
-       description
-         "LX-PMD-clause-38 Optical Interface function for
-          1000BASE-X PCS-36";
-       reference
-         "MEF63: Subscriber Layer 1 Service Attributes";
-     }
-
-     identity LX10-PMD-1000 {
-       base optical-interface-func;
-
-
-
-
-       description
-         "LX10-PMD-clause-59 Optical Interface function for
-          1000BASE-X PCS-36";
-       reference
-         "MEF63: Subscriber Layer 1 Service Attributes";
-     }
-
-     identity BX10-PMD-1000 {
-       base optical-interface-func;
-       description
-         "BX10-PMD-clause-59 Optical Interface function for
-          1000BASE-X PCS-36";
-       reference
-         "MEF63: Subscriber Layer 1 Service Attributes";
-     }
-
-     identity LW-PMD-10G {
-       base optical-interface-func;
-       description
-         "LW-PMD-clause-52 Optical Interface function for
-          10GBASE-W PCS-49-WIS-50";
-       reference
-         "MEF63: Subscriber Layer 1 Service Attributes";
-     }
-
-     identity EW-PMD-10G {
-       base optical-interface-func;
-       description
-         "EW-PMD-clause-52 Optical Interface function for
-          10GBASE-W PCS-49-WIS-50";
-       reference
-         "MEF63: Subscriber Layer 1 Service Attributes";
-     }
-
-     identity LR-PMD-10G {
-       base optical-interface-func;
-       description
-         "LR-PMD-clause-52 Optical Interface function for
-          10GBASE-R PCS-49";
-       reference
-         "MEF63: Subscriber Layer 1 Service Attributes";
-     }
-
-     identity ER-PMD-10G {
-       base optical-interface-func;
-       description
-         "ER-PMD-clause-52 Optical Interface function for
-          10GBASE-R PCS-49";
-
-
-
-
-       reference
-         "MEF63: Subscriber Layer 1 Service Attributes";
-     }
-
-     identity LR4-PMD-40G {
-       base optical-interface-func;
-       description
-         "LR4-PMD-clause-87 Optical Interface function for
-          40GBASE-R PCS-82";
-       reference
-         "MEF63: Subscriber Layer 1 Service Attributes";
-     }
-
-     identity ER4-PMD-40G {
-       base optical-interface-func;
-       description
-         "ER4-PMD-clause-87 Optical Interface function for
-          40GBASE-R PCS-82";
-       reference
-         "MEF63: Subscriber Layer 1 Service Attributes";
-     }
-
-     identity FR-PMD-40G {
-       base optical-interface-func;
-       description
-         "FR-PMD-clause-89 Optical Interface function for
-          40GBASE-R PCS-82";
-       reference
-         "MEF63: Subscriber Layer 1 Service Attributes";
-     }
-
-     identity LR4-PMD-100G {
-       base optical-interface-func;
-       description
-         "LR4-PMD-clause-88 Optical Interface function for
-          100GBASE-R PCS-82";
-       reference
-         "MEF63: Subscriber Layer 1 Service Attributes";
-     }
-
-     identity ER4-PMD-100G {
-       base optical-interface-func;
-       description
-         "ER4-PMD-clause-88 Optical Interface function for
-          100GBASE-R PCS-82";
-       reference
-         "MEF63: Subscriber Layer 1 Service Attributes";
-     }
-
-
-
-
-     /*
-      * Typedefs
-      */
-
-     typedef otn-tpn {
-       type uint16 {
-         range "1..4095";
-       }
-       description
-         "Tributary Port Number (TPN) for OTN. ";
-       reference
-         "RFC7139: GMPLS Signaling Extensions for Control of Evolving
-          G.709 Optical Transport Networks.";
-     }
-
-     typedef otn-ts {
-       type uint16 {
-         range "1..4095";
-       }
-       description
-         "Tributary Slot (TS) for OTN.";
-       reference
-         "RFC7139: GMPLS Signaling Extensions for Control of Evolving
-          G.709 Optical Transport Networks.";
-     }
-
-     typedef otn-label-range-type {
-       type enumeration {
-         enum trib-slot {
-           description
-             "Defines a range of OTN tributary slots (TS).";
-         }
-         enum trib-port {
-           description
-             "Defines a range of OTN tributary ports (TPN).";
-         }
-       }
-       description
-         "Defines the type of OTN label range: TS or TPN. ";
-     }
-
-     typedef gfp-k {
-       type enumeration {
-         enum 2 {
-           description
-             "The ODU2.ts rate (1,249,177.230 kbit/s) is used
-              to compute the rate of an ODUflex(GFP,n,2). ";
-         }
-
-
-
-
-         enum 3 {
-           description
-             "The ODU3.ts rate (1,254,470.354 kbit/s) is used
-              to compute the rate of an ODUflex(GFP,n,3). ";
-         }
-         enum 4 {
-           description
-             "The ODU4.ts rate (1,301,467.133 kbit/s) is used
-              to compute the rate of an ODUflex(GFP,n,4). ";
-         }
-       }
-       description
-         "The ODUk.ts used to compute the rate of an ODUflex(GFP,n,k)";
-       reference
-         "ITU-T G.709 v6.0 (06/2020), Table 7-8 and L.7: Interfaces for
-          the Optical Transport Network (OTN)";
-     }
-
-     typedef flexe-client-rate {
-       type union {
-         type uint16;
-         type enumeration {
-           enum "10G" {
-             description
-               "Represents a 10G FlexE Client signal (s=2)";
-           }
-           enum "40G" {
-             description
-               "Represents a 40G FlexE Client signal (s=8)";
-           }
-         }
-       }
-       description
-         "The FlexE Client signal rate (s x 5,156,250.000 kbit/s)
-          used to compute the rate of an ODUflex(IMP, s).
-          Valid values for s are s=2 (10G), s=4 (40G) and
-          s=5 x n (n x 25G).
-          In the first two cases an enumeration value
-          (either 10G or 40G) is used, while in the latter case
-          the value of n is used";
-       reference
-         "ITU-T G.709 v6.0 (06/2020), Table 7-2: Interfaces for the
-          Optical Transport Network (OTN)";
-     }
-
-     typedef odtu-flex-type {
-       type enumeration {
-         enum "2" {
-
-
-
-
-           description
-             "The ODTU2.ts ODTU type.";
-         }
-         enum "3" {
-           description
-             "The ODTU3.ts ODTU type.";
-         }
-         enum "4" {
-           description
-             "The ODTU4.ts ODTU type.";
-         }
-         enum "Cn" {
-           description
-             "The ODTUCn.ts ODTU type.";
-         }
-       }
-       description
-         "The type of Optical Data Tributary Unit (ODTU),
-         whose nominal bitrate is used to compute the number of
-         Tributary Slots (TS) required by an ODUflex LSP, according to
-         the (19-1a) and (20-1a) formulas defined in G.709.";
-       reference
-         "ITU-T G.709 v6.0 (06/2020), Table 7-7, clause 19.6 and
-         clause 20.5: Interfaces for the Optical Transport
-         Network (OTN)";
-     }
-
-     typedef bandwidth-scientific-notation {
-       type string {
-         pattern
-           '0(\.0?)?([eE](\+)?0?)?|'
-         + '[1-9](\.[0-9]{0,6})?[eE](\+)?(9[0-6]|[1-8][0-9]|0?[0-9])?';
-       }
-       units "bps";
-       description
-         "Bandwidth values, expressed using the scientific notation
-         in bits per second.
-
-         The encoding format is the external decimal-significant
-         character sequences specified in IEEE 754 and ISO/IEC C99
-         for 32-bit decimal floating-point numbers:
-         (-1)**(S) * 10**(Exponent) * (Significant),
-         where Significant uses 7 digits.
-
-         An implementation for this representation MAY use decimal32
-         or binary32. The range of the Exponent is from -95 to +96
-         for decimal32, and from -38 to +38 for binary32.
-         As a bandwidth value, the format is restricted to be
-
-
-
-
-         normalized, non-negative, and non-fraction:
-         n.dddddde{+}dd, N.DDDDDDE{+}DD, 0e0 or 0E0,
-         where 'd' and 'D' are decimal digits; 'n' and 'N' are
-         non-zero decimal digits; 'e' and 'E' indicate a power of ten.
-         Some examples are 0e0, 1e10, and 9.953e9.";
-       reference
-         "IEEE Std 754-2008: IEEE Standard for Floating-Point
-         Arithmetic.
-         ISO/IEC C99: Information technology - Programming
-         Languages - C.";
-     }
-
-     /*
-      * Groupings
-      */
-
-     grouping otn-link-bandwidth {
-       description
-         "Bandwidth attributes for OTN links";
-       container otn {
-         description
-           "Bandwidth attributes for OTN links";
-         list odulist {
-           key "odu-type";
-           description
-             "OTN bandwidth definition";
-           leaf odu-type {
-             type identityref {
-               base odu-type;
-             }
-             description "ODU type";
-           }
-           leaf number {
-             type uint16;
-             description "Number of ODUs";
-           }
-           leaf ts-number {
-             when 'derived-from-or-self(../odu-type,"ODUflex") or
-                   derived-from-or-self(../odu-type,
-                   "ODUflex-resizable")' {
-               description
-                 "Applicable when odu-type is ODUflex or
-                 ODUflex-resizable";
-             }
-             type uint16 {
-               range "1..4095";
-             }
-             description
-
-
-
-
-               "The number of Tributary Slots (TS) that
-               could be used by all the ODUflex LSPs.";
-           }
-         }
-       }
-     }
-
-     grouping otn-path-bandwidth {
-       description
-         "Bandwidth attributes for OTN paths.";
-       container otn {
-         description
-           "Bandwidth attributes for OTN paths.";
-         leaf odu-type {
-           type identityref {
-             base odu-type;
-           }
-           description "ODU type";
-         }
-         choice oduflex-type {
-           when 'derived-from-or-self(./odu-type,"ODUflex") or
-                 derived-from-or-self(./odu-type,
-                 "ODUflex-resizable")' {
-             description
-               "Applicable when odu-type is ODUflex or
-                ODUflex-resizable";
-           }
-           description
-             "Types of ODUflex used to compute the ODUflex
-              nominal bit rate.";
-           reference
-             "ITU-T G.709 v6.0 (06/2020), Table 7-2: Interfaces for the
-              Optical Transport Network (OTN)";
-           case generic {
-             leaf nominal-bit-rate {
-               type union {
-                 type l1-types:bandwidth-scientific-notation;
-                 type rt-types:bandwidth-ieee-float32;
-               }
-               mandatory true;
-               description
-                 "Nominal ODUflex bit rate.";
-             }
-           }
-           case cbr {
-             leaf client-type {
-               type identityref {
-                 base client-signal;
-
-
-
-
-               }
-               mandatory true;
-               description
-                 "The type of Constant Bit Rate (CBR) client signal
-                 of an ODUflex(CBR).";
-             }
-           }
-           case gfp-n-k {
-             leaf gfp-n {
-               type uint8 {
-                 range "1..80";
-               }
-               mandatory true;
-               description
-                 "The value of n for an ODUflex(GFP,n,k).";
-               reference
-                 "ITU-T G.709 v6.0 (06/2020), Tables 7-8 and L.7:
-                  Interfaces for the Optical Transport Network (OTN)";
-             }
-             leaf gfp-k {
-               type gfp-k;
-               description
-                 "The value of k for an ODUflex(GFP,n,k).
-
-                  If omitted, it is calculated from the value of gfp-n
-                  as described in Table 7-8 of G.709";
-               reference
-                 "ITU-T G.709 v6.0 (06/2020), Tables 7-8 and L.7:
-                  Interfaces for the Optical Transport Network (OTN)";
-             }
-           }
-           case flexe-client {
-             leaf flexe-client {
-               type flexe-client-rate;
-               mandatory true;
-               description
-                 "The rate of the FlexE-client for an ODUflex(IMP,s).";
-             }
-           }
-           case flexe-aware {
-             leaf flexe-aware-n {
-               type uint16;
-               mandatory true;
-               description
-                 "The rate of FlexE-aware client signal
-                  for ODUflex(FlexE-aware)";
-             }
-           }
-
-
-
-
-           case packet {
-             leaf opuflex-payload-rate {
-               type union {
-                 type l1-types:bandwidth-scientific-notation;
-                 type rt-types:bandwidth-ieee-float32;
-               }
-               mandatory true;
-               description
-                 "Either the GFP-F encapsulated packet client nominal
-                  bit rate for an ODUflex(GFP) or the 64b/66b encoded
-                  packet client nominal bit rate for an ODUflex(IMP).";
-             }
-           }
-         }
-       }
-     }
-
-     grouping otn-max-path-bandwidth {
-       description
-         "Maximum bandwidth attributes for OTN paths.";
-       container otn {
-         description
-           "Maximum bandwidth attributes for OTN paths.";
-         leaf odu-type {
-           type identityref {
-             base odu-type;
-           }
-           description "ODU type";
-         }
-         leaf max-ts-number {
-           when 'derived-from-or-self(../odu-type,"ODUflex") or
-                 derived-from-or-self(../odu-type,
-                 "ODUflex-resizable")' {
-             description
-               "Applicable when odu-type is ODUflex or
-                ODUflex-resizable";
-           }
-           type uint16 {
-             range "1..4095";
-           }
-           description
-             "The maximum number of Tributary Slots (TS) that could be
-             used  by an ODUflex LSP.";
-         }
-       }
-     }
-
-     grouping otn-label-range-info {
-
-
-
-
-       description
-         "Label range information for OTN.
-
-          This grouping SHOULD be used together with the
-          otn-label-start-end and otn-label-step groupings to provide
-          OTN technology-specific label information to the models which
-          use the label-restriction-info grouping defined in the module
-          ietf-te-types.";
-       container otn-label-range {
-         description
-           "Label range information for OTN.";
-         leaf range-type {
-           type otn-label-range-type;
-           description "The type of range (e.g., TPN or TS)
-             to which the label range applies";
-         }
-         leaf tsg {
-           type identityref {
-             base tributary-slot-granularity;
-           }
-           description
-             "Tributary slot granularity (TSG) to which the label range
-             applies.
-
-             This leaf MUST be present when the range-type is TS.
-
-             This leaf MAY be omitted when mapping an ODUk over an OTUk
-             Link. In this case the range-type is tpn, with only one
-             entry (ODUk), and the tpn range has only one value (1).";
-           reference
-             "ITU-T G.709 v6.0 (06/2020): Interfaces for the Optical
-             Transport Network (OTN)";
-         }
-         leaf-list odu-type-list {
-           type identityref {
-             base odu-type;
-           }
-           description
-             "List of ODU types to which the label range applies.
-
-             An Empty odu-type-list means that the label range
-             applies to all the supported ODU types.";
-         }
-         leaf priority {
-           type uint8 {
-             range 0..7;
-           }
-           description
-
-
-
-
-             "Priority in Interface Switching Capability
-             Descriptor (ISCD).";
-           reference
-             "RFC4203: OSPF Extensions in Support of Generalized
-             Multi-Protocol Label Switching (GMPLS)";
-         }
-       }
-     }
-
-     grouping otn-label-start-end {
-       description
-         "The OTN label-start or label-end used to specify an OTN label
-          range.
-
-          This grouping is dependent on the range-type defined in the
-          otn-label-range-info grouping.
-
-          This grouping SHOULD be used together with the
-          otn-label-range-info and otn-label-step groupings to provide
-          OTN technology-specific label information to the models which
-          use the label-restriction-info grouping defined in the module
-          ietf-te-types.";
-       container otn {
-         description
-           "Label start or label end for OTN.";
-         choice range-type {
-           description
-             "OTN label range type, either TPN range or TS range";
-           case trib-port {
-             leaf tpn {
-               when "../../../../otn-label-range/range-type =
-                     'trib-port'" {
-                 description
-                   "Valid only when range-type represented by
-                   trib-port";
-               }
-               type otn-tpn;
-               description
-                 "Tributary Port Number (TPN).";
-               reference
-                 "RFC7139: GMPLS Signaling Extensions for Control of
-                 Evolving G.709 Optical Transport Networks.";
-             }
-           }
-           case trib-slot {
-             leaf ts {
-               when "../../../../otn-label-range/range-type =
-                     'trib-slot'" {
-
-
-
-
-                 description
-                   "Valid only when range-type represented by
-                   trib-slot";
-               }
-               type otn-ts;
-               description
-                 "Tributary Slot (TS) number.";
-               reference
-                 "RFC7139: GMPLS Signaling Extensions for Control of
-                 Evolving G.709 Optical Transport Networks";
-             }
-           }
-         }
-       }
-     }
-
-     grouping otn-label-hop {
-       description "OTN Label";
-       reference
-         "RFC7139, section 6: GMPLS Signaling Extensions for Control of
-          Evolving G.709 Optical Transport Networks";
-       container otn {
-         description
-           "Label hop for OTN.";
-         leaf tpn {
-           type otn-tpn;
-           description
-             "Tributary Port Number (TPN).";
-           reference
-             "RFC7139: GMPLS Signaling Extensions for Control of
-             Evolving G.709 Optical Transport Networks.";
-         }
-         leaf tsg {
-           type identityref {
-             base tributary-slot-granularity;
-           }
-           description "Tributary Slot Granularity (TSG).";
-           reference
-             "ITU-T G.709 v6.0 (06/2020): Interfaces for the Optical
-             Transport Network (OTN)";
-         }
-         leaf ts-list {
-           type string {
-               pattern "([1-9][0-9]{0,3}(-[1-9][0-9]{0,3})?"
-                     + "(,[1-9][0-9]{0,3}(-[1-9][0-9]{0,3})?)*)";
-             }
-           description
-             "A list of available Tributary Slots (TS) ranging
-
-
-
-
-             between 1 and 4095. If multiple values or
-             ranges are given, they all MUST be disjoint
-             and MUST be in ascending order.
-             For example 1-20,25,50-1000.";
-           reference
-             "RFC 7139: GMPLS Signaling Extensions for Control
-             of Evolving G.709 Optical Transport Networks";
-         }
-       }
-     }
-
-     grouping otn-label-step {
-       description
-         "Label step for OTN.
-
-          This grouping is dependent on the range-type defined in the
-          otn-label-range-info grouping.
-
-          This grouping SHOULD be used together with the
-          otn-label-range-info and otn-label-start-end groupings to
-          provide OTN technology-specific label information to the
-          models which use the label-restriction-info grouping defined
-          in the module ietf-te-types.";
-       container otn {
-         description
-           "Label step for OTN";
-         choice range-type {
-           description
-             "OTN label range type, either TPN range or TS range";
-           case trib-port {
-             leaf tpn {
-               when "../../../otn-label-range/range-type =
-                     'trib-port'" {
-                 description
-                   "Valid only when range-type represented by
-                   trib-port";
-               }
-               type otn-tpn;
-               description
-                 "Label step which represents possible increments for
-                 Tributary Port Number (TPN).";
-               reference
-                 "RFC7139: GMPLS Signaling Extensions for Control of
-                 Evolving G.709 Optical Transport Networks.";
-             }
-           }
-           case trib-slot {
-             leaf ts {
-
-
-
-
-               when "../../../otn-label-range/range-type =
-                     'trib-slot'" {
-                 description
-                   "Valid only when range-type represented by
-                   trib-slot";
-               }
-               type otn-ts;
-               description
-                 "Label step which represents possible increments for
-                 Tributary Slot (TS) number.";
-               reference
-                 "RFC7139: GMPLS Signaling Extensions for Control of
-                 Evolving G.709 Optical Transport Networks.";
-             }
-           }
-         }
-       }
-     }
-   }
diff --git a/src/nbi/service/rest_server/nbi_plugins/ietf_network_new/yang/ietf-otn-topology@2023-07-06.yang b/src/nbi/service/rest_server/nbi_plugins/ietf_network_new/yang/ietf-otn-topology@2023-07-06.yang
deleted file mode 100644
index 587612e8e7acb1f2eedb329b2f13a1a0626f3181..0000000000000000000000000000000000000000
--- a/src/nbi/service/rest_server/nbi_plugins/ietf_network_new/yang/ietf-otn-topology@2023-07-06.yang
+++ /dev/null
@@ -1,2405 +0,0 @@
-   module ietf-otn-topology {
-     yang-version 1.1;
-     namespace "urn:ietf:params:xml:ns:yang:ietf-otn-topology";
-     prefix "otnt";
-
-     import ietf-network {
-       prefix "nw";
-       reference "RFC 8345: A YANG Data Model for Network Topologies";
-     }
-
-     import ietf-network-topology {
-       prefix "nt";
-       reference "RFC 8345: A YANG Data Model for Network Topologies";
-     }
-
-     import ietf-te-topology {
-       prefix "tet";
-       reference
-         "RFC 8795: YANG Data Model for Traffic Engineering
-          (TE) Topologies";
-     }
-
-     import ietf-layer1-types {
-       prefix "l1-types";
-       reference
-         "I-D.ietf-ccamp-layer1-types: A YANG Data Model
-          for Layer 1 Types";
-     }
-
-     organization
-       "IETF CCAMP Working Group";
-     contact
-       "WG Web: <https://datatracker.ietf.org/wg/ccamp/>
-        WG List: <mailto:ccamp@ietf.org>
-
-        Editor: Haomian Zheng
-                <mailto:zhenghaomian@huawei.com>
-
-        Editor: Italo Busi
-                <mailto:italo.busi@huawei.com>
-
-        Editor: Xufeng Liu
-                <mailto:xufeng.liu.ietf@gmail.com>
-
-        Editor: Sergio Belotti
-                <mailto:sergio.belotti@nokia.com>
-
-
-
-
-        Editor: Oscar Gonzalez de Dios
-                <mailto:oscar.gonzalezdedios@telefonica.com>";
-
-     description
-       "This module defines a protocol independent Layer 1/ODU topology
-        data model. 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-07-06 {
-       description
-         "Initial Revision";
-       reference
-         "RFC XXXX: A YANG Data Model for Optical Transport Network
-         Topology";
-       // RFC Ed.: replace XXXX with actual RFC number, update date
-       // information and remove this note
-     }
-
-     /*
-      * Groupings
-      */
-
-     grouping label-range-info {
-       description
-         "OTN technology-specific label range related information with
-         a presence container indicating that the label range is an
-         OTN technology-specific label range.
-
-         This grouping SHOULD be used together with the
-
-
-
-
-         otn-label-start-end and otn-label-step groupings to provide
-         OTN technology-specific label information to the models which
-         use the label-restriction-info grouping defined in the module
-         ietf-te-types.";
-       uses l1-types:otn-label-range-info {
-         refine otn-label-range {
-           presence
-             "Indicates the label range is an OTN label range.
-
-             This container MUST NOT be present if there are other
-             presence containers or attributes indicating another type
-             of label range.";
-         }
-       }
-     }
-
-    /*
-     * Data nodes
-     */
-
-     augment "/nw:networks/nw:network/nw:network-types/"
-           + "tet:te-topology" {
-       container otn-topology {
-         presence "indicates a topology type of Optical Transport
-                   Network (OTN)-electrical layer.";
-         description "OTN topology type";
-       }
-       description "augment network types to include OTN newtork";
-     }
-
-     augment "/nw:networks/nw:network/nw:node/tet:te"
-           + "/tet:te-node-attributes" {
-       when "../../../nw:network-types/tet:te-topology/"
-          + "otnt:otn-topology" {
-         description "Augment only for OTN network.";
-       }
-       description "Augment TE node attributes.";
-       container otn-node {
-         presence "The TE node is an OTN node.";
-         description
-           "Introduce new TE node type for OTN node.";
-       }
-     }
-
-     augment "/nw:networks/nw:network/nt:link/tet:te/"
-           + "tet:te-link-attributes" {
-       when "../../../nw:network-types/tet:te-topology/"
-          + "otnt:otn-topology" {
-
-
-
-
-         description "Augment only for OTN network.";
-       }
-       description "Augment link configuration";
-
-       container otn-link {
-         description
-           "Attributes of the OTN Link.";
-         leaf odtu-flex-type {
-           type l1-types:odtu-flex-type;
-           description
-             "The type of Optical Data Tributary Unit (ODTU)
-             whose nominal bitrate is used to compute the number of
-             Tributary Slots (TS) required by the ODUflex LSPs set up
-             on this OTN Link.";
-         }
-         leaf tsg {
-           type identityref {
-             base l1-types:tributary-slot-granularity;
-           }
-           description "Tributary slot granularity.";
-           reference
-             "ITU-T G.709 v6.0 (06/2020): Interfaces for the Optical
-             Transport Network (OTN)";
-         }
-         leaf distance {
-           type uint32;
-           description "distance in the unit of kilometers";
-         }
-       }
-       container client-svc {
-         presence
-           "When present, indicates that the Link supports Costant
-           Bit Rate (CBR) client signals.";
-         description
-           "Attributes of the Link supporting CBR client signals.";
-         leaf-list supported-client-signal {
-           type identityref {
-             base l1-types:client-signal;
-           }
-           min-elements 1;
-           description
-             "List of client signal types supported by the Link.";
-         }
-       }
-     }
-
-     augment "/nw:networks/nw:network/nw:node/nt:termination-point/"
-           + "tet:te" {
-
-
-
-
-       when "../../../nw:network-types/tet:te-topology/"
-          + "otnt:otn-topology" {
-         description "Augment only for OTN network";
-       }
-       description "OTN TP attributes config in ODU topology.";
-
-       container otn-ltp {
-         description
-           "Attributes of the OTN Link Termination Point (LTP).";
-         leaf odtu-flex-type {
-           type l1-types:odtu-flex-type;
-           description
-             "The type of Optical Data Tributary Unit (ODTU)
-             whose nominal bitrate is used to compute the number of
-             Tributary Slots (TS) required by the ODUflex LSPs set up
-             on this OTN Link Termination Point (LTP).";
-         }
-       }
-       container client-svc {
-         presence
-           "When present, indicates that the Link Termination Point
-           (LTP) supports Costant Bit Rate (CBR) client signals.";
-         description
-           "OTN LTP Service attributes.";
-         leaf-list supported-client-signal {
-           type identityref {
-             base l1-types:client-signal;
-           }
-           description
-             "List of client signal types supported by the LTP.";
-         }
-       }
-     }
-
-     /*
-      * Augment TE bandwidth
-      */
-
-     augment "/nw:networks/nw:network/nw:node/nt:termination-point/"
-           + "tet:te/"
-           + "tet:interface-switching-capability/tet:max-lsp-bandwidth/"
-           + "tet:te-bandwidth/tet:technology" {
-       when "../../../../../../nw:network-types/tet:te-topology/"
-          + "otnt:otn-topology" {
-         description
-           "Augmentation parameters apply only for networks with
-            OTN topology type.";
-       }
-
-
-
-
-       description
-         "Augment maximum LSP TE bandwidth for the link termination
-          point (LTP).";
-       case otn {
-         uses l1-types:otn-max-path-bandwidth {
-           description
-             "The odtu-flex-type attribute of the OTN Link Termination
-             Point (LTP) is used to compute the number of Tributary
-             Slots (TS) required by the ODUflex LSPs set up on this
-             OTN LTP.";
-         }
-       }
-     }
-
-     augment "/nw:networks/nw:network/nw:node/tet:te/"
-           + "tet:te-node-attributes/tet:connectivity-matrices/"
-           + "tet:path-constraints/tet:te-bandwidth/tet:technology" {
-       when "../../../../../../nw:network-types/tet:te-topology/"
-          + "otnt:otn-topology" {
-         description
-           "Augmentation parameters apply only for networks with
-            OTN topology type.";
-       }
-       description
-         "Augment TE bandwidth path constraints of the TE node
-          connectivity matrices.";
-       case otn {
-         uses l1-types:otn-link-bandwidth {
-           augment otn {
-             description
-               "Augment OTN link bandwidth information.";
-             leaf odtu-flex-type {
-               type l1-types:odtu-flex-type;
-               description
-                 "The type of Optical Data Tributary Unit (ODTU)
-                 whose nominal bitrate is used to compute the number of
-                 Tributary Slots (TS) required by the ODUflex LSPs
-                 set up along the underlay paths of these OTN
-                 connectivity matrices.";
-             }
-           }
-         }
-       }
-     }
-
-     augment "/nw:networks/nw:network/nw:node/tet:te/"
-           + "tet:te-node-attributes/tet:connectivity-matrices/"
-           + "tet:connectivity-matrix/"
-
-
-
-
-           + "tet:path-constraints/tet:te-bandwidth/tet:technology" {
-       when "../../../../../../../nw:network-types/tet:te-topology/"
-          + "otnt:otn-topology" {
-         description
-           "Augmentation parameters apply only for networks with
-            OTN topology type.";
-       }
-       description
-         "Augment TE bandwidth path constraints of the
-          connectivity matrix entry.";
-       case otn {
-         uses l1-types:otn-link-bandwidth {
-           augment otn {
-             description
-               "Augment OTN link bandwidth information.";
-             leaf odtu-flex-type {
-               type l1-types:odtu-flex-type;
-               description
-                 "The type of Optical Data Tributary Unit (ODTU)
-                 whose nominal bitrate is used to compute the number of
-                 Tributary Slots (TS) required by the ODUflex LSPs
-                 set up along the underlay path of this OTN
-                 connectivity matrix entry.";
-             }
-           }
-         }
-       }
-     }
-
-     augment "/nw:networks/nw:network/nw:node/tet:te/"
-           + "tet:information-source-entry/tet:connectivity-matrices/"
-           + "tet:path-constraints/tet:te-bandwidth/tet:technology" {
-       when "../../../../../../nw:network-types/tet:te-topology/"
-          + "otnt:otn-topology" {
-         description
-           "Augmentation parameters apply only for networks with
-            OTN topology type.";
-       }
-       description
-         "Augment TE bandwidth path constraints of the TE node
-          connectivity matrices information source.";
-       case otn {
-         uses l1-types:otn-link-bandwidth {
-           augment otn {
-             description
-               "Augment OTN link bandwidth information.";
-             leaf odtu-flex-type {
-               type l1-types:odtu-flex-type;
-
-
-
-
-               description
-                 "The type of Optical Data Tributary Unit (ODTU)
-                 whose nominal bitrate is used to compute the number of
-                 Tributary Slots (TS) required by the ODUflex LSPs
-                 set up along the underlay paths of these OTN
-                 connectivity matrices.";
-             }
-           }
-         }
-       }
-     }
-
-     augment "/nw:networks/nw:network/nw:node/tet:te/"
-           + "tet:information-source-entry/tet:connectivity-matrices/"
-           + "tet:connectivity-matrix/"
-           + "tet:path-constraints/tet:te-bandwidth/tet:technology" {
-       when "../../../../../../../nw:network-types/tet:te-topology/"
-          + "otnt:otn-topology" {
-         description
-           "Augmentation parameters apply only for networks with
-            OTN topology type.";
-       }
-       description
-         "Augment TE bandwidth path constraints of the
-          connectivity matrix entry information source";
-       case otn {
-         uses l1-types:otn-link-bandwidth {
-           augment otn {
-             description
-               "Augment OTN link bandwidth information.";
-             leaf odtu-flex-type {
-               type l1-types:odtu-flex-type;
-               description
-                 "The type of Optical Data Tributary Unit (ODTU)
-                 whose nominal bitrate is used to compute the number of
-                 Tributary Slots (TS) required by the ODUflex LSPs
-                 set up along the underlay path of this OTN
-                 connectivity matrix entry.";
-             }
-           }
-         }
-       }
-     }
-
-     augment "/nw:networks/nw:network/nw:node/tet:te/"
-           + "tet:tunnel-termination-point/"
-           + "tet:client-layer-adaptation/tet:switching-capability/"
-           + "tet:te-bandwidth/tet:technology" {
-
-
-
-
-       when "../../../../../../nw:network-types/tet:te-topology/"
-          + "otnt:otn-topology" {
-         description
-           "Augmentation parameters apply only for networks with
-            OTN topology type.";
-       }
-       description
-         "Augment client TE bandwidth of the tunnel termination point
-          (TTP)";
-       case otn {
-         uses l1-types:otn-link-bandwidth {
-           augment otn {
-             description
-               "Augment OTN link bandwidth information.";
-             leaf odtu-flex-type {
-               type l1-types:odtu-flex-type;
-               description
-                 "The type of Optical Data Tributary Unit (ODTU)
-                 whose nominal bitrate is used to compute the number of
-                 Tributary Slots (TS) required by the ODUflex LSPs
-                 terminated on this OTN Tunnel Termination Point
-                 (TTP).";
-             }
-           }
-         }
-       }
-     }
-
-     augment "/nw:networks/nw:network/nw:node/tet:te/"
-           + "tet:tunnel-termination-point/"
-           + "tet:local-link-connectivities/tet:path-constraints/"
-           + "tet:te-bandwidth/tet:technology" {
-       when "../../../../../../nw:network-types/tet:te-topology/"
-          + "otnt:otn-topology" {
-         description
-           "Augmentation parameters apply only for networks with
-            OTN topology type.";
-       }
-       description
-         "Augment TE bandwidth path constraints for the TTP
-          Local Link Connectivities.";
-       case otn {
-         uses l1-types:otn-link-bandwidth {
-           augment otn {
-             description
-               "Augment OTN link bandwidth information.";
-             leaf odtu-flex-type {
-               type l1-types:odtu-flex-type;
-
-
-
-
-               description
-                 "The type of Optical Data Tributary Unit (ODTU)
-                 whose nominal bitrate is used to compute the number of
-                 Tributary Slots (TS) required by the ODUflex LSPs
-                 set up along the underlay paths of these OTN Local
-                 Link Connectivities.";
-             }
-           }
-         }
-       }
-     }
-
-     augment "/nw:networks/nw:network/nw:node/tet:te/"
-           + "tet:tunnel-termination-point/"
-           + "tet:local-link-connectivities/"
-           + "tet:local-link-connectivity/tet:path-constraints/"
-           + "tet:te-bandwidth/tet:technology" {
-       when "../../../../../../../nw:network-types/tet:te-topology/"
-          + "otnt:otn-topology" {
-         description
-           "Augmentation parameters apply only for networks with
-            OTN topology type.";
-       }
-       description
-         "Augment TE bandwidth path constraints for the TTP
-          Local Link Connectivity entry.";
-       case otn {
-         uses l1-types:otn-link-bandwidth {
-           augment otn {
-             description
-               "Augment OTN link bandwidth information.";
-             leaf odtu-flex-type {
-               type l1-types:odtu-flex-type;
-               description
-                 "The type of Optical Data Tributary Unit (ODTU)
-                 whose nominal bitrate is used to compute the number of
-                 Tributary Slots (TS) required by the ODUflex LSPs
-                 set up along the underlay path of this OTN Local
-                 Link Connectivyt entry.";
-             }
-           }
-         }
-       }
-     }
-
-     augment "/nw:networks/nw:network/nt:link/tet:te/"
-           + "tet:te-link-attributes/"
-           + "tet:interface-switching-capability/tet:max-lsp-bandwidth/"
-
-
-
-
-           + "tet:te-bandwidth/tet:technology" {
-       when "../../../../../../nw:network-types/tet:te-topology/"
-          + "otnt:otn-topology" {
-         description
-           "Augmentation parameters apply only for networks with
-            OTN topology type.";
-       }
-       description
-         "Augment maximum LSP TE bandwidth for the TE link.";
-       case otn {
-         uses l1-types:otn-max-path-bandwidth {
-           description
-             "The odtu-flex-type attribute of the OTN Link is used
-             to compute the number of Tributary Slots (TS) required
-             by the ODUflex LSPs set up on this OTN Link.";
-         }
-       }
-     }
-
-     augment "/nw:networks/nw:network/nt:link/tet:te/"
-           + "tet:te-link-attributes/"
-           + "tet:max-link-bandwidth/"
-           + "tet:te-bandwidth" {
-       when "../../../../../nw:network-types/tet:te-topology/"
-          + "otnt:otn-topology" {
-         description
-           "Augmentation parameters apply only for networks with
-            OTN topology type.";
-       }
-       description
-         "Augment maximum TE bandwidth for the TE link";
-       uses l1-types:otn-link-bandwidth {
-         description
-           "The odtu-flex-type attribute of the OTN Link is used
-           to compute the number of Tributary Slots (TS) required
-           by the ODUflex LSPs set up on this OTN Link.";
-       }
-     }
-
-     augment "/nw:networks/nw:network/nt:link/tet:te/"
-           + "tet:te-link-attributes/"
-           + "tet:max-resv-link-bandwidth/"
-           + "tet:te-bandwidth" {
-       when "../../../../../nw:network-types/tet:te-topology/"
-          + "otnt:otn-topology" {
-         description
-           "Augmentation parameters apply only for networks with
-            OTN topology type.";
-
-
-
-
-       }
-       description
-         "Augment maximum reservable TE bandwidth for the TE link";
-       uses l1-types:otn-link-bandwidth {
-         description
-           "The odtu-flex-type attribute of the OTN Link is used
-           to compute the number of Tributary Slots (TS) required
-           by the ODUflex LSPs set up on this OTN Link.";
-       }
-     }
-
-     augment "/nw:networks/nw:network/nt:link/tet:te/"
-           + "tet:te-link-attributes/"
-           + "tet:unreserved-bandwidth/"
-           + "tet:te-bandwidth" {
-       when "../../../../../nw:network-types/tet:te-topology/"
-          + "otnt:otn-topology" {
-         description
-           "Augmentation parameters apply only for networks with
-            OTN topology type.";
-       }
-       description
-         "Augment unreserved TE bandwidth for the TE Link";
-       uses l1-types:otn-link-bandwidth {
-         description
-           "The odtu-flex-type attribute of the OTN Link is used
-           to compute the number of Tributary Slots (TS) required
-           by the ODUflex LSPs set up on this OTN Link.";
-       }
-     }
-
-     augment "/nw:networks/nw:network/nt:link/tet:te/"
-           + "tet:information-source-entry/"
-           + "tet:interface-switching-capability/"
-           + "tet:max-lsp-bandwidth/"
-           + "tet:te-bandwidth/tet:technology" {
-       when "../../../../../../nw:network-types/tet:te-topology/"
-          + "otnt:otn-topology" {
-         description
-           "Augmentation parameters apply only for networks with
-            OTN topology type.";
-       }
-       description
-         "Augment maximum LSP TE bandwidth for the TE link
-          information source";
-       case otn {
-         uses l1-types:otn-max-path-bandwidth {
-           description
-
-
-
-
-             "The odtu-flex-type attribute of the OTN Link is used
-             to compute the number of Tributary Slots (TS) required
-             by the ODUflex LSPs set up on this OTN Link.";
-         }
-       }
-     }
-
-     augment "/nw:networks/nw:network/nt:link/tet:te/"
-           + "tet:information-source-entry/"
-           + "tet:max-link-bandwidth/"
-           + "tet:te-bandwidth" {
-       when "../../../../../nw:network-types/tet:te-topology/"
-          + "otnt:otn-topology" {
-         description
-           "Augmentation parameters apply only for networks with
-            OTN topology type.";
-       }
-       description
-         "Augment maximum TE bandwidth for the TE link
-          information source";
-       uses l1-types:otn-link-bandwidth {
-         description
-           "The odtu-flex-type attribute of the OTN Link is used
-           to compute the number of Tributary Slots (TS) required
-           by the ODUflex LSPs set up on this OTN Link.";
-       }
-     }
-
-     augment "/nw:networks/nw:network/nt:link/tet:te/"
-           + "tet:information-source-entry/"
-           + "tet:max-resv-link-bandwidth/"
-           + "tet:te-bandwidth" {
-       when "../../../../../nw:network-types/tet:te-topology/"
-          + "otnt:otn-topology" {
-         description
-           "Augmentation parameters apply only for networks with
-            OTN topology type.";
-       }
-       description
-         "Augment maximum reservable TE bandwidth for the TE link
-          information-source";
-       uses l1-types:otn-link-bandwidth {
-         description
-           "The odtu-flex-type attribute of the OTN Link is used
-           to compute the number of Tributary Slots (TS) required
-           by the ODUflex LSPs set up on this OTN Link.";
-       }
-     }
-
-
-
-
-     augment "/nw:networks/nw:network/nt:link/tet:te/"
-           + "tet:information-source-entry/"
-           + "tet:unreserved-bandwidth/"
-           + "tet:te-bandwidth" {
-       when "../../../../../nw:network-types/tet:te-topology/"
-          + "otnt:otn-topology" {
-         description
-           "Augmentation parameters apply only for networks with
-            OTN topology type.";
-       }
-       description
-         "Augment unreserved TE bandwidth of the TE link
-          information source";
-       uses l1-types:otn-link-bandwidth {
-         description
-           "The odtu-flex-type attribute of the OTN Link is used
-           to compute the number of Tributary Slots (TS) required
-           by the ODUflex LSPs set up on this OTN Link.";
-       }
-     }
-
-     augment "/nw:networks/tet:te/tet:templates/"
-           + "tet:link-template/tet:te-link-attributes/"
-           + "tet:interface-switching-capability/"
-           + "tet:max-lsp-bandwidth/"
-           + "tet:te-bandwidth/tet:technology" {
-       description
-         "Augment maximum LSP TE bandwidth of the TE link
-          template";
-       case otn {
-         uses l1-types:otn-max-path-bandwidth {
-           description
-             "The odtu-flex-type attribute of the OTN Link is used
-             to compute the number of Tributary Slots (TS) required
-             by the ODUflex LSPs set up on the OTN Link that uses this
-             Link Template.";
-         }
-       }
-     }
-
-     augment "/nw:networks/tet:te/tet:templates/"
-           + "tet:link-template/tet:te-link-attributes/"
-           + "tet:max-link-bandwidth/"
-           + "tet:te-bandwidth" {
-       description
-         "Augment maximum TE bandwidth the TE link template";
-       uses l1-types:otn-link-bandwidth {
-         description
-
-
-
-
-           "The odtu-flex-type attribute of the OTN Link is used
-           to compute the number of Tributary Slots (TS) required
-           by the ODUflex LSPs set up on the OTN Link that uses this
-           Link Template.";
-       }
-     }
-
-     augment "/nw:networks/tet:te/tet:templates/"
-           + "tet:link-template/tet:te-link-attributes/"
-           + "tet:max-resv-link-bandwidth/"
-           + "tet:te-bandwidth" {
-       description
-         "Augment maximum reservable TE bandwidth for the TE link
-          template.";
-       uses l1-types:otn-link-bandwidth {
-         description
-           "The odtu-flex-type attribute of the OTN Link is used
-           to compute the number of Tributary Slots (TS) required
-           by the ODUflex LSPs set up on the OTN Link that uses this
-           Link Template.";
-       }
-     }
-
-     augment "/nw:networks/tet:te/tet:templates/"
-           + "tet:link-template/tet:te-link-attributes/"
-           + "tet:unreserved-bandwidth/"
-           + "tet:te-bandwidth" {
-       description
-         "Augment unreserved TE bandwidth the TE link template";
-       uses l1-types:otn-link-bandwidth {
-         description
-           "The odtu-flex-type attribute of the OTN Link is used
-           to compute the number of Tributary Slots (TS) required
-           by the ODUflex LSPs set up on the OTN Link that uses this
-           Link Template.";
-       }
-     }
-
-     /*
-      * Augment TE label range information
-      */
-
-     augment "/nw:networks/nw:network/nw:node/tet:te/"
-           + "tet:te-node-attributes/tet:connectivity-matrices/"
-           + "tet:label-restrictions/tet:label-restriction" {
-       when "../../../../../../nw:network-types/tet:te-topology/"
-          + "otnt:otn-topology" {
-         description
-
-
-
-
-           "Augmentation parameters apply only for networks with
-            OTN topology type.";
-       }
-       description
-         "Augment TE label range information for the TE node
-          connectivity matrices.";
-       uses label-range-info;
-     }
-
-     augment "/nw:networks/nw:network/nw:node/tet:te/"
-           + "tet:te-node-attributes/tet:connectivity-matrices/"
-           + "tet:connectivity-matrix/tet:from/"
-           + "tet:label-restrictions/tet:label-restriction" {
-       when "../../../../../../../../nw:network-types/tet:te-topology/"
-          + "otnt:otn-topology" {
-         description
-           "Augmentation parameters apply only for networks with
-            OTN topology type.";
-       }
-       description
-         "Augment TE label range information for the source LTP
-          of the connectivity matrix entry.";
-       uses label-range-info;
-     }
-
-     augment "/nw:networks/nw:network/nw:node/tet:te/"
-           + "tet:te-node-attributes/tet:connectivity-matrices/"
-           + "tet:connectivity-matrix/tet:to/"
-           + "tet:label-restrictions/tet:label-restriction" {
-       when "../../../../../../../../nw:network-types/tet:te-topology/"
-          + "otnt:otn-topology" {
-         description
-           "Augmentation parameters apply only for networks with
-            OTN topology type.";
-       }
-       description
-         "Augment TE label range information for the destination LTP
-          of the connectivity matrix entry.";
-       uses label-range-info;
-     }
-
-     augment "/nw:networks/nw:network/nw:node/tet:te/"
-           + "tet:information-source-entry/"
-           + "tet:connectivity-matrices/tet:label-restrictions/"
-           + "tet:label-restriction" {
-       when "../../../../../../nw:network-types/tet:te-topology/"
-          + "otnt:otn-topology" {
-         description
-
-
-
-
-           "Augmentation parameters apply only for networks with
-            OTN topology type.";
-       }
-       description
-         "Augment TE label range information for the TE node
-          connectivity matrices information source.";
-       uses label-range-info;
-     }
-
-     augment "/nw:networks/nw:network/nw:node/tet:te/"
-           + "tet:information-source-entry/tet:connectivity-matrices/"
-           + "tet:connectivity-matrix/"
-           + "tet:from/tet:label-restrictions/tet:label-restriction" {
-       when "../../../../../../../../nw:network-types/tet:te-topology/"
-          + "otnt:otn-topology" {
-         description
-           "Augmentation parameters apply only for networks with
-            OTN topology type.";
-       }
-       description
-         "Augment TE label range information for the source LTP
-          of the connectivity matrix entry information source.";
-       uses label-range-info;
-     }
-
-     augment "/nw:networks/nw:network/nw:node/tet:te/"
-           + "tet:information-source-entry/tet:connectivity-matrices/"
-           + "tet:connectivity-matrix/"
-           + "tet:to/tet:label-restrictions/tet:label-restriction" {
-       when "../../../../../../../../nw:network-types/tet:te-topology/"
-          + "otnt:otn-topology" {
-         description
-           "Augmentation parameters apply only for networks with
-            OTN topology type.";
-       }
-       description
-         "Augment TE label range information for the destination LTP
-          of the connectivity matrix entry information source.";
-       uses label-range-info;
-     }
-
-     augment "/nw:networks/nw:network/nw:node/tet:te/"
-           + "tet:tunnel-termination-point/"
-           + "tet:local-link-connectivities/"
-           + "tet:label-restrictions/tet:label-restriction" {
-       when "../../../../../../nw:network-types/tet:te-topology/"
-          + "otnt:otn-topology" {
-         description
-
-
-
-
-           "Augmentation parameters apply only for networks with
-            OTN topology type.";
-       }
-       description
-         "Augment TE label range information for the TTP
-          Local Link Connectivities.";
-       uses label-range-info;
-     }
-
-     augment "/nw:networks/nw:network/nw:node/tet:te/"
-           + "tet:tunnel-termination-point/"
-           + "tet:local-link-connectivities/"
-           + "tet:local-link-connectivity/"
-           + "tet:label-restrictions/tet:label-restriction" {
-       when "../../../../../../../nw:network-types/tet:te-topology/"
-          + "otnt:otn-topology" {
-         description
-           "Augmentation parameters apply only for networks with
-            OTN topology type.";
-       }
-       description
-         "Augment TE label range information for the TTP
-          Local Link Connectivity entry.";
-       uses label-range-info;
-     }
-
-     augment "/nw:networks/nw:network/nt:link/tet:te/"
-           + "tet:te-link-attributes/"
-           + "tet:label-restrictions/tet:label-restriction" {
-       when "../../../../../nw:network-types/tet:te-topology/"
-          + "otnt:otn-topology" {
-         description
-           "Augmentation parameters apply only for networks with
-            OTN topology type.";
-       }
-       description
-         "Augment TE label range information for the TE link.";
-       uses label-range-info;
-     }
-
-     augment "/nw:networks/nw:network/nt:link/tet:te/"
-           + "tet:information-source-entry/"
-           + "tet:label-restrictions/tet:label-restriction" {
-       when "../../../../../nw:network-types/tet:te-topology/"
-          + "otnt:otn-topology" {
-         description
-           "Augmentation parameters apply only for networks with
-            OTN topology type.";
-
-
-
-
-       }
-       description
-         "Augment TE label range information for the TE link
-          information source.";
-       uses label-range-info;
-     }
-
-     augment "/nw:networks/tet:te/tet:templates/"
-           + "tet:link-template/tet:te-link-attributes/"
-           + "tet:label-restrictions/tet:label-restriction" {
-       description
-         "Augment TE label range information for the TE link template.";
-       uses label-range-info;
-     }
-
-     /*
-      * Augment TE label
-      */
-
-     augment "/nw:networks/nw:network/nw:node/tet:te/"
-           + "tet:te-node-attributes/tet:connectivity-matrices/"
-           + "tet:label-restrictions/tet:label-restriction/"
-           + "tet:label-start/"
-           + "tet:te-label/tet:technology" {
-       when "../../../../../../../../nw:network-types/tet:te-topology/"
-          + "otnt:otn-topology" {
-         description
-           "Augmentation parameters apply only for networks with
-            OTN topology type.";
-       }
-       description
-         "Augment TE label range start for the TE node
-          connectivity matrices";
-       case otn {
-         uses l1-types:otn-label-start-end;
-       }
-     }
-
-     augment "/nw:networks/nw:network/nw:node/tet:te/"
-           + "tet:te-node-attributes/tet:connectivity-matrices/"
-           + "tet:label-restrictions/"
-           + "tet:label-restriction/tet:label-end/"
-           + "tet:te-label/tet:technology" {
-       when "../../../../../../../../nw:network-types/tet:te-topology/"
-          + "otnt:otn-topology" {
-         description
-           "Augmentation parameters apply only for networks with
-            OTN topology type.";
-
-
-
-
-       }
-       description
-         "Augment TE label range end for the TE node
-          connectivity matrices";
-       case otn {
-         uses l1-types:otn-label-start-end;
-       }
-     }
-
-     augment "/nw:networks/nw:network/nw:node/tet:te/"
-           + "tet:te-node-attributes/tet:connectivity-matrices/"
-           + "tet:label-restrictions/"
-           + "tet:label-restriction/tet:label-step/"
-           + "tet:technology" {
-       when "../../../../../../../nw:network-types/tet:te-topology/"
-          + "otnt:otn-topology" {
-         description
-           "Augmentation parameters apply only for networks with
-            OTN topology type.";
-       }
-       description
-         "Augment TE label range step for the TE node
-          connectivity matrices";
-       case otn {
-         uses l1-types:otn-label-step;
-       }
-     }
-
-     augment "/nw:networks/nw:network/nw:node/tet:te/"
-           + "tet:te-node-attributes/tet:connectivity-matrices/"
-           + "tet:underlay/tet:primary-path/tet:path-element/"
-           + "tet:type/tet:label/tet:label-hop/"
-           + "tet:te-label/tet:technology" {
-       when "../../../../../../../../../"
-          + "nw:network-types/tet:te-topology/"
-          + "otnt:otn-topology" {
-         description
-           "Augmentation parameters apply only for networks with
-            OTN topology type.";
-       }
-       description
-         "Augment TE label hop for the underlay primary path of the
-          TE node connectivity matrices";
-       case otn {
-         uses l1-types:otn-label-hop;
-       }
-     }
-
-
-
-
-     augment "/nw:networks/nw:network/nw:node/tet:te/"
-           + "tet:te-node-attributes/tet:connectivity-matrices/"
-           + "tet:underlay/tet:backup-path/tet:path-element/"
-           + "tet:type/tet:label/tet:label-hop/"
-           + "tet:te-label/tet:technology" {
-       when "../../../../../../../../../"
-          + "nw:network-types/tet:te-topology/"
-          + "otnt:otn-topology" {
-         description
-           "Augmentation parameters apply only for networks with
-            OTN topology type.";
-       }
-       description
-         "Augment TE label hop for the underlay backup path of the
-          TE node connectivity matrices";
-       case otn {
-         uses l1-types:otn-label-hop;
-       }
-     }
-
-     augment "/nw:networks/nw:network/nw:node/tet:te/"
-           + "tet:te-node-attributes/tet:connectivity-matrices/"
-           + "tet:optimizations/tet:algorithm/tet:metric/"
-           + "tet:optimization-metric/"
-           + "tet:explicit-route-exclude-objects/"
-           + "tet:route-object-exclude-object/"
-           + "tet:type/tet:label/tet:label-hop/"
-           + "tet:te-label/tet:technology" {
-       when "../../../../../../../../../../"
-          + "nw:network-types/tet:te-topology/"
-          + "otnt:otn-topology" {
-         description
-           "Augmentation parameters apply only for networks with
-            OTN topology type.";
-       }
-       description
-         "Augment TE label hop for the explicit route objects excluded
-          by the path computation of the TE node connectivity
-          matrices";
-       case otn {
-         uses l1-types:otn-label-hop;
-       }
-     }
-
-     augment "/nw:networks/nw:network/nw:node/tet:te/"
-           + "tet:te-node-attributes/tet:connectivity-matrices/"
-           + "tet:optimizations/tet:algorithm/tet:metric/"
-           + "tet:optimization-metric/"
-
-
-
-
-           + "tet:explicit-route-include-objects/"
-           + "tet:route-object-include-object/"
-           + "tet:type/tet:label/tet:label-hop/"
-           + "tet:te-label/tet:technology" {
-       when "../../../../../../../../../../"
-          + "nw:network-types/tet:te-topology/"
-          + "otnt:otn-topology" {
-         description
-           "Augmentation parameters apply only for networks with
-            OTN topology type.";
-       }
-       description
-         "Augment TE label hop for the explicit route objects included
-          by the path computation of the TE node connectivity
-          matrices";
-       case otn {
-         uses l1-types:otn-label-hop;
-       }
-     }
-
-     augment "/nw:networks/nw:network/nw:node/tet:te/"
-           + "tet:te-node-attributes/tet:connectivity-matrices/"
-           + "tet:path-properties/tet:path-route-objects/"
-           + "tet:path-route-object/tet:type/tet:label/tet:label-hop/"
-           + "tet:te-label/tet:technology" {
-       when "../../../../../../../../../"
-          + "nw:network-types/tet:te-topology/"
-          + "otnt:otn-topology" {
-         description
-           "Augmentation parameters apply only for networks with
-            OTN topology type.";
-       }
-       description
-         "Augment TE label hop for the computed path route objects
-          of the TE node connectivity matrices";
-       case otn {
-         uses l1-types:otn-label-hop;
-       }
-     }
-
-     augment "/nw:networks/nw:network/nw:node/tet:te/"
-           + "tet:te-node-attributes/tet:connectivity-matrices/"
-           + "tet:connectivity-matrix/tet:from/"
-           + "tet:label-restrictions/tet:label-restriction/"
-           + "tet:label-start/"
-           + "tet:te-label/tet:technology" {
-       when "../../../../../../../../../../"
-          + "nw:network-types/tet:te-topology/"
-
-
-
-
-          + "otnt:otn-topology" {
-         description
-           "Augmentation parameters apply only for networks with
-            OTN topology type.";
-       }
-       description
-         "Augment TE label range start for the source LTP
-          of the connectivity matrix entry.";
-       case otn {
-         uses l1-types:otn-label-start-end;
-       }
-     }
-
-     augment "/nw:networks/nw:network/nw:node/tet:te/"
-           + "tet:te-node-attributes/tet:connectivity-matrices/"
-           + "tet:connectivity-matrix/tet:from/"
-           + "tet:label-restrictions/tet:label-restriction/"
-           + "tet:label-end/"
-           + "tet:te-label/tet:technology" {
-       when "../../../../../../../../../../"
-          + "nw:network-types/tet:te-topology/"
-          + "otnt:otn-topology" {
-         description
-           "Augmentation parameters apply only for networks with
-            OTN topology type.";
-       }
-       description
-         "Augment TE label range end for the source LTP
-          of the connectivity matrix entry.";
-       case otn {
-         uses l1-types:otn-label-start-end;
-       }
-     }
-
-     augment "/nw:networks/nw:network/nw:node/tet:te/"
-           + "tet:te-node-attributes/tet:connectivity-matrices/"
-           + "tet:connectivity-matrix/tet:from/"
-           + "tet:label-restrictions/tet:label-restriction/"
-           + "tet:label-step/"
-           + "tet:technology" {
-       when "../../../../../../../../../"
-          + "nw:network-types/tet:te-topology/"
-          + "otnt:otn-topology" {
-         description
-           "Augmentation parameters apply only for networks with
-            OTN topology type.";
-       }
-       description
-
-
-
-
-         "Augment TE label range step for the source LTP
-          of the connectivity matrix entry.";
-       case otn {
-         uses l1-types:otn-label-step;
-       }
-     }
-
-     augment "/nw:networks/nw:network/nw:node/tet:te/"
-           + "tet:te-node-attributes/tet:connectivity-matrices/"
-           + "tet:connectivity-matrix/tet:to/"
-           + "tet:label-restrictions/tet:label-restriction/"
-           + "tet:label-start/"
-           + "tet:te-label/tet:technology" {
-       when "../../../../../../../../../../"
-          + "nw:network-types/tet:te-topology/"
-          + "otnt:otn-topology" {
-         description
-           "Augmentation parameters apply only for networks with
-            OTN topology type.";
-       }
-       description
-         "Augment TE label range start for the destination LTP
-          of the connectivity matrix entry.";
-       case otn {
-         uses l1-types:otn-label-start-end;
-       }
-     }
-
-     augment "/nw:networks/nw:network/nw:node/tet:te/"
-           + "tet:te-node-attributes/tet:connectivity-matrices/"
-           + "tet:connectivity-matrix/tet:to/"
-           + "tet:label-restrictions/tet:label-restriction/"
-           + "tet:label-end/"
-           + "tet:te-label/tet:technology" {
-       when "../../../../../../../../../../"
-          + "nw:network-types/tet:te-topology/"
-          + "otnt:otn-topology" {
-         description
-           "Augmentation parameters apply only for networks with
-            OTN topology type.";
-       }
-       description
-         "Augment TE label range end for the destination LTP
-          of the connectivity matrix entry.";
-       case otn {
-         uses l1-types:otn-label-start-end;
-       }
-     }
-
-
-
-
-     augment "/nw:networks/nw:network/nw:node/tet:te/"
-           + "tet:te-node-attributes/tet:connectivity-matrices/"
-           + "tet:connectivity-matrix/tet:to/"
-           + "tet:label-restrictions/tet:label-restriction/"
-           + "tet:label-step/"
-           + "tet:technology" {
-       when "../../../../../../../../../"
-          + "nw:network-types/tet:te-topology/"
-          + "otnt:otn-topology" {
-         description
-           "Augmentation parameters apply only for networks with
-            OTN topology type.";
-       }
-       description
-         "Augment TE label range step for the destination LTP
-          of the connectivity matrix entry.";
-       case otn {
-         uses l1-types:otn-label-step;
-       }
-     }
-
-     augment "/nw:networks/nw:network/nw:node/tet:te/"
-           + "tet:te-node-attributes/tet:connectivity-matrices/"
-           + "tet:connectivity-matrix/"
-           + "tet:underlay/tet:primary-path/tet:path-element/"
-           + "tet:type/tet:label/tet:label-hop/"
-           + "tet:te-label/tet:technology" {
-       when "../../../../../../../../../../"
-          + "nw:network-types/tet:te-topology/"
-          + "otnt:otn-topology" {
-         description
-           "Augmentation parameters apply only for networks with
-            OTN topology type.";
-       }
-       description
-         "Augment TE label hop for the underlay primary path
-          of the connectivity matrix entry.";
-       case otn {
-         uses l1-types:otn-label-hop;
-       }
-     }
-
-     augment "/nw:networks/nw:network/nw:node/tet:te/"
-           + "tet:te-node-attributes/tet:connectivity-matrices/"
-           + "tet:connectivity-matrix/"
-           + "tet:underlay/tet:backup-path/tet:path-element/"
-           + "tet:type/tet:label/tet:label-hop/"
-           + "tet:te-label/tet:technology" {
-
-
-
-
-       when "../../../../../../../../../../"
-          + "nw:network-types/tet:te-topology/"
-          + "otnt:otn-topology" {
-         description
-           "Augmentation parameters apply only for networks with
-            OTN topology type.";
-       }
-       description
-         "Augment TE label hop for the underlay backup path
-          of the connectivity matrix entry.";
-       case otn {
-         uses l1-types:otn-label-hop;
-       }
-     }
-
-     augment "/nw:networks/nw:network/nw:node/tet:te/"
-           + "tet:te-node-attributes/tet:connectivity-matrices/"
-           + "tet:connectivity-matrix/tet:optimizations/"
-           + "tet:algorithm/tet:metric/tet:optimization-metric/"
-           + "tet:explicit-route-exclude-objects/"
-           + "tet:route-object-exclude-object/tet:type/"
-           + "tet:label/tet:label-hop/tet:te-label/tet:technology" {
-       when "../../../../../../../../../../../"
-          + "nw:network-types/tet:te-topology/"
-          + "otnt:otn-topology" {
-         description
-           "Augmentation parameters apply only for networks with
-            OTN topology type.";
-       }
-       description
-         "Augment TE label hop for the explicit route objects excluded
-          by the path computation of the connectivity matrix entry.";
-       case otn {
-         uses l1-types:otn-label-hop;
-       }
-     }
-
-     augment "/nw:networks/nw:network/nw:node/tet:te/"
-           + "tet:te-node-attributes/tet:connectivity-matrices/"
-           + "tet:connectivity-matrix/tet:optimizations/"
-           + "tet:algorithm/tet:metric/tet:optimization-metric/"
-           + "tet:explicit-route-include-objects/"
-           + "tet:route-object-include-object/tet:type/"
-           + "tet:label/tet:label-hop/tet:te-label/tet:technology" {
-       when "../../../../../../../../../../../"
-          + "nw:network-types/tet:te-topology/"
-          + "otnt:otn-topology" {
-         description
-
-
-
-
-           "Augmentation parameters apply only for networks with
-            OTN topology type.";
-       }
-       description
-         "Augment TE label hop for the explicit route objects included
-          by the path computation of the connectivity matrix entry.";
-       case otn {
-         uses l1-types:otn-label-hop;
-       }
-     }
-
-     augment "/nw:networks/nw:network/nw:node/tet:te/"
-           + "tet:te-node-attributes/tet:connectivity-matrices/"
-           + "tet:connectivity-matrix/"
-           + "tet:path-properties/tet:path-route-objects/"
-           + "tet:path-route-object/tet:type/"
-           + "tet:label/tet:label-hop/tet:te-label/tet:technology" {
-       when "../../../../../../../../../../"
-          + "nw:network-types/tet:te-topology/"
-          + "otnt:otn-topology" {
-         description
-           "Augmentation parameters apply only for networks with
-            OTN topology type.";
-       }
-       description
-         "Augment TE label hop for the computed path route objects
-          of the connectivity matrix entry.";
-       case otn {
-         uses l1-types:otn-label-hop;
-       }
-     }
-
-     augment "/nw:networks/nw:network/nw:node/tet:te/"
-           + "tet:information-source-entry/"
-           + "tet:connectivity-matrices/tet:label-restrictions/"
-           + "tet:label-restriction/"
-           + "tet:label-start/tet:te-label/tet:technology" {
-       when "../../../../../../../../"
-          + "nw:network-types/tet:te-topology/"
-          + "otnt:otn-topology" {
-         description
-           "Augmentation parameters apply only for networks with
-            OTN topology type.";
-       }
-       description
-         "Augment TE label range start for the TE node connectivity
-          matrices information source.";
-       case otn {
-
-
-
-
-         uses l1-types:otn-label-start-end;
-       }
-     }
-
-     augment "/nw:networks/nw:network/nw:node/tet:te/"
-           + "tet:information-source-entry/"
-           + "tet:connectivity-matrices/tet:label-restrictions/"
-           + "tet:label-restriction/"
-           + "tet:label-end/tet:te-label/tet:technology" {
-       when "../../../../../../../../"
-          + "nw:network-types/tet:te-topology/"
-          + "otnt:otn-topology" {
-         description
-           "Augmentation parameters apply only for networks with
-            OTN topology type.";
-       }
-       description
-         "Augment TE label range end for the TE node connectivity
-          matrices information source.";
-       case otn {
-         uses l1-types:otn-label-start-end;
-       }
-     }
-
-     augment "/nw:networks/nw:network/nw:node/tet:te/"
-           + "tet:information-source-entry/"
-           + "tet:connectivity-matrices/tet:label-restrictions/"
-           + "tet:label-restriction/"
-           + "tet:label-step/tet:technology" {
-       when "../../../../../../../"
-          + "nw:network-types/tet:te-topology/"
-          + "otnt:otn-topology" {
-         description
-           "Augmentation parameters apply only for networks with
-            OTN topology type.";
-       }
-       description
-         "Augment TE label range step for the TE node connectivity
-          matrices information source.";
-       case otn {
-         uses l1-types:otn-label-step;
-       }
-     }
-
-     augment "/nw:networks/nw:network/nw:node/tet:te/"
-           + "tet:information-source-entry/tet:connectivity-matrices/"
-           + "tet:underlay/tet:primary-path/tet:path-element/tet:type/"
-           + "tet:label/tet:label-hop/tet:te-label/tet:technology" {
-
-
-
-
-       when "../../../../../../../../../"
-          + "nw:network-types/tet:te-topology/"
-          + "otnt:otn-topology" {
-         description
-           "Augmentation parameters apply only for networks with
-            OTN topology type.";
-       }
-       description
-         "Augment TE label hop for the underlay primary path
-          of the TE node connectivity matrices of the information
-          source entry.";
-       case otn {
-         uses l1-types:otn-label-hop;
-       }
-     }
-
-     augment "/nw:networks/nw:network/nw:node/tet:te/"
-           + "tet:information-source-entry/tet:connectivity-matrices/"
-           + "tet:underlay/tet:backup-path/tet:path-element/tet:type/"
-           + "tet:label/tet:label-hop/tet:te-label/tet:technology" {
-       when "../../../../../../../../../"
-          + "nw:network-types/tet:te-topology/"
-          + "otnt:otn-topology" {
-         description
-           "Augmentation parameters apply only for networks with
-            OTN topology type.";
-       }
-       description
-         "Augment TE label hop for the underlay backup path
-          of the TE node connectivity matrices of the information
-          source entry.";
-       case otn {
-         uses l1-types:otn-label-hop;
-       }
-     }
-
-     augment "/nw:networks/nw:network/nw:node/tet:te/"
-           + "tet:information-source-entry/tet:connectivity-matrices/"
-           + "tet:optimizations/tet:algorithm/tet:metric/"
-           + "tet:optimization-metric/"
-           + "tet:explicit-route-exclude-objects/"
-           + "tet:route-object-exclude-object/tet:type/"
-           + "tet:label/tet:label-hop/tet:te-label/tet:technology" {
-       when "../../../../../../../../../../"
-          + "nw:network-types/tet:te-topology/"
-          + "otnt:otn-topology" {
-         description
-           "Augmentation parameters apply only for networks with
-
-
-
-
-            OTN topology type.";
-       }
-       description
-         "Augment TE label hop for the explicit route objects excluded
-          by the path computation of the TE node connectivity matrices
-          information source.";
-       case otn {
-         uses l1-types:otn-label-hop;
-       }
-     }
-
-     augment "/nw:networks/nw:network/nw:node/tet:te/"
-           + "tet:information-source-entry/tet:connectivity-matrices/"
-           + "tet:optimizations/tet:algorithm/tet:metric/"
-           + "tet:optimization-metric/"
-           + "tet:explicit-route-include-objects/"
-           + "tet:route-object-include-object/tet:type/"
-           + "tet:label/tet:label-hop/tet:te-label/tet:technology" {
-       when "../../../../../../../../../../"
-          + "nw:network-types/tet:te-topology/"
-          + "otnt:otn-topology" {
-         description
-           "Augmentation parameters apply only for networks with
-            OTN topology type.";
-       }
-       description
-         "Augment TE label hop for the explicit route objects included
-          by the path computation of the TE node connectivity matrices
-          information source.";
-       case otn {
-         uses l1-types:otn-label-hop;
-       }
-     }
-
-     augment "/nw:networks/nw:network/nw:node/tet:te/"
-           + "tet:information-source-entry/tet:connectivity-matrices/"
-           + "tet:path-properties/tet:path-route-objects/"
-           + "tet:path-route-object/tet:type/"
-           + "tet:label/tet:label-hop/tet:te-label/tet:technology" {
-       when "../../../../../../../../../"
-          + "nw:network-types/tet:te-topology/"
-          + "otnt:otn-topology" {
-         description
-           "Augmentation parameters apply only for networks with
-            OTN topology type.";
-       }
-       description
-         "Augment TE label hop for the computed path route objects
-
-
-
-
-          of the TE node connectivity matrices information source.";
-       case otn {
-         uses l1-types:otn-label-hop;
-       }
-     }
-
-     augment "/nw:networks/nw:network/nw:node/tet:te/"
-           + "tet:information-source-entry/tet:connectivity-matrices/"
-           + "tet:connectivity-matrix/"
-           + "tet:from/tet:label-restrictions/"
-           + "tet:label-restriction/"
-           + "tet:label-start/tet:te-label/tet:technology" {
-       when "../../../../../../../../../../"
-          + "nw:network-types/tet:te-topology/"
-          + "otnt:otn-topology" {
-         description
-           "Augmentation parameters apply only for networks with
-            OTN topology type.";
-       }
-       description
-         "Augment TE label range start for the source LTP
-          of the connectivity matrix entry information source.";
-       case otn {
-         uses l1-types:otn-label-start-end;
-       }
-     }
-     augment "/nw:networks/nw:network/nw:node/tet:te/"
-           + "tet:information-source-entry/tet:connectivity-matrices/"
-           + "tet:connectivity-matrix/"
-           + "tet:from/tet:label-restrictions/"
-           + "tet:label-restriction/"
-           + "tet:label-end/tet:te-label/tet:technology" {
-       when "../../../../../../../../../../"
-          + "nw:network-types/tet:te-topology/"
-          + "otnt:otn-topology" {
-         description
-           "Augmentation parameters apply only for networks with
-            OTN topology type.";
-       }
-       description
-         "Augment TE label range end for the source LTP
-          of the connectivity matrix entry information source.";
-       case otn {
-         uses l1-types:otn-label-start-end;
-       }
-     }
-
-     augment "/nw:networks/nw:network/nw:node/tet:te/"
-
-
-
-
-           + "tet:information-source-entry/tet:connectivity-matrices/"
-           + "tet:connectivity-matrix/"
-           + "tet:from/tet:label-restrictions/"
-           + "tet:label-restriction/"
-           + "tet:label-step/tet:technology" {
-       when "../../../../../../../../../"
-          + "nw:network-types/tet:te-topology/"
-          + "otnt:otn-topology" {
-         description
-           "Augmentation parameters apply only for networks with
-            OTN topology type.";
-       }
-       description
-         "Augment TE label range step for the source LTP
-          of the connectivity matrix entry information source.";
-       case otn {
-         uses l1-types:otn-label-step;
-       }
-     }
-
-     augment "/nw:networks/nw:network/nw:node/tet:te/"
-           + "tet:information-source-entry/tet:connectivity-matrices/"
-           + "tet:connectivity-matrix/"
-           + "tet:to/tet:label-restrictions/tet:label-restriction/"
-           + "tet:label-start/tet:te-label/tet:technology" {
-       when "../../../../../../../../../../"
-          + "nw:network-types/tet:te-topology/"
-          + "otnt:otn-topology" {
-         description
-           "Augmentation parameters apply only for networks with
-            OTN topology type.";
-       }
-       description
-         "Augment TE label range start for the destination LTP
-          of the connectivity matrix entry information source.";
-       case otn {
-         uses l1-types:otn-label-start-end;
-       }
-     }
-
-     augment "/nw:networks/nw:network/nw:node/tet:te/"
-           + "tet:information-source-entry/tet:connectivity-matrices/"
-           + "tet:connectivity-matrix/"
-           + "tet:to/tet:label-restrictions/tet:label-restriction/"
-           + "tet:label-end/tet:te-label/tet:technology" {
-       when "../../../../../../../../../../"
-          + "nw:network-types/tet:te-topology/"
-          + "otnt:otn-topology" {
-
-
-
-
-         description
-           "Augmentation parameters apply only for networks with
-            OTN topology type.";
-       }
-       description
-         "Augment TE label range end for the destination LTP
-          of the connectivity matrix entry information source.";
-       case otn {
-         uses l1-types:otn-label-start-end;
-       }
-     }
-
-     augment "/nw:networks/nw:network/nw:node/tet:te/"
-           + "tet:information-source-entry/tet:connectivity-matrices/"
-           + "tet:connectivity-matrix/"
-           + "tet:to/tet:label-restrictions/tet:label-restriction/"
-           + "tet:label-step/tet:technology" {
-       when "../../../../../../../../../"
-          + "nw:network-types/tet:te-topology/"
-          + "otnt:otn-topology" {
-         description
-           "Augmentation parameters apply only for networks with
-            OTN topology type.";
-       }
-       description
-         "Augment TE label range step for the destination LTP
-          of the connectivity matrix entry information source.";
-       case otn {
-         uses l1-types:otn-label-step;
-       }
-     }
-
-     augment "/nw:networks/nw:network/nw:node/tet:te/"
-           + "tet:information-source-entry/tet:connectivity-matrices/"
-           + "tet:connectivity-matrix/"
-           + "tet:underlay/tet:primary-path/tet:path-element/tet:type/"
-           + "tet:label/tet:label-hop/tet:te-label/tet:technology" {
-       when "../../../../../../../../../../"
-          + "nw:network-types/tet:te-topology/"
-          + "otnt:otn-topology" {
-         description
-           "Augmentation parameters apply only for networks with
-            OTN topology type.";
-       }
-       description
-         "Augment TE label hop for the underlay primary path
-          of the connectivity matrix entry information source.";
-       case otn {
-
-
-
-
-         uses l1-types:otn-label-hop;
-       }
-     }
-
-     augment "/nw:networks/nw:network/nw:node/tet:te/"
-           + "tet:information-source-entry/tet:connectivity-matrices/"
-           + "tet:connectivity-matrix/"
-           + "tet:underlay/tet:backup-path/tet:path-element/tet:type/"
-           + "tet:label/tet:label-hop/tet:te-label/tet:technology" {
-       when "../../../../../../../../../../"
-          + "nw:network-types/tet:te-topology/"
-          + "otnt:otn-topology" {
-         description
-           "Augmentation parameters apply only for networks with
-            OTN topology type.";
-       }
-       description
-         "Augment TE label hop for the underlay backup path
-          of the connectivity matrix entry information source.";
-       case otn {
-         uses l1-types:otn-label-hop;
-       }
-     }
-
-     augment "/nw:networks/nw:network/nw:node/tet:te/"
-           + "tet:information-source-entry/tet:connectivity-matrices/"
-           + "tet:connectivity-matrix/"
-           + "tet:optimizations/tet:algorithm/tet:metric/"
-           + "tet:optimization-metric/"
-           + "tet:explicit-route-exclude-objects/"
-           + "tet:route-object-exclude-object/tet:type/"
-           + "tet:label/tet:label-hop/tet:te-label/tet:technology" {
-       when "../../../../../../../../../../../"
-          + "nw:network-types/tet:te-topology/"
-          + "otnt:otn-topology" {
-         description
-           "Augmentation parameters apply only for networks with
-            OTN topology type.";
-       }
-       description
-         "Augment TE label hop for the explicit route objects excluded
-          by the path computation of the connectivity matrix entry
-          information source.";
-       case otn {
-         uses l1-types:otn-label-hop;
-       }
-     }
-
-
-
-
-     augment "/nw:networks/nw:network/nw:node/tet:te/"
-           + "tet:information-source-entry/tet:connectivity-matrices/"
-           + "tet:connectivity-matrix/"
-           + "tet:optimizations/tet:algorithm/tet:metric/"
-           + "tet:optimization-metric/"
-           + "tet:explicit-route-include-objects/"
-           + "tet:route-object-include-object/tet:type/"
-           + "tet:label/tet:label-hop/tet:te-label/tet:technology" {
-       when "../../../../../../../../../../../"
-          + "nw:network-types/tet:te-topology/"
-          + "otnt:otn-topology" {
-         description
-           "Augmentation parameters apply only for networks with
-            OTN topology type.";
-       }
-       description
-         "Augment TE label hop for the explicit route objects included
-          by the path computation of the connectivity matrix entry
-          information source.";
-       case otn {
-         uses l1-types:otn-label-hop;
-       }
-     }
-
-     augment "/nw:networks/nw:network/nw:node/tet:te/"
-           + "tet:information-source-entry/tet:connectivity-matrices/"
-           + "tet:connectivity-matrix/"
-           + "tet:path-properties/tet:path-route-objects/"
-           + "tet:path-route-object/tet:type/"
-           + "tet:label/tet:label-hop/tet:te-label/tet:technology" {
-       when "../../../../../../../../../../"
-          + "nw:network-types/tet:te-topology/"
-          + "otnt:otn-topology" {
-         description
-           "Augmentation parameters apply only for networks with
-            OTN topology type.";
-       }
-       description
-         "Augment TE label hop for the computed path route objects
-          of the connectivity matrix entry information source.";
-       case otn {
-         uses l1-types:otn-label-hop;
-       }
-     }
-
-     augment "/nw:networks/nw:network/nw:node/tet:te/"
-         + "tet:tunnel-termination-point/"
-         + "tet:local-link-connectivities/"
-
-
-
-
-         + "tet:label-restrictions/tet:label-restriction/"
-         + "tet:label-start/"
-         + "tet:te-label/tet:technology" {
-       when "../../../../../../../../"
-          + "nw:network-types/tet:te-topology/"
-          + "otnt:otn-topology" {
-         description
-           "Augmentation parameters apply only for networks with
-            OTN topology type.";
-       }
-       description
-         "Augment TE label range start for the TTP
-          Local Link Connectivities.";
-       case otn {
-         uses l1-types:otn-label-start-end;
-       }
-     }
-
-     augment "/nw:networks/nw:network/nw:node/tet:te/"
-           + "tet:tunnel-termination-point/"
-           + "tet:local-link-connectivities/"
-           + "tet:label-restrictions/tet:label-restriction/"
-           + "tet:label-end/"
-           + "tet:te-label/tet:technology"{
-       when "../../../../../../../../"
-          + "nw:network-types/tet:te-topology/"
-          + "otnt:otn-topology" {
-         description
-           "Augmentation parameters apply only for networks with
-            OTN topology type.";
-       }
-       description
-         "Augment TE label range end for the TTP
-          Local Link Connectivities.";
-       case otn {
-         uses l1-types:otn-label-start-end;
-       }
-     }
-
-     augment "/nw:networks/nw:network/nw:node/tet:te/"
-           + "tet:tunnel-termination-point/"
-           + "tet:local-link-connectivities/"
-           + "tet:label-restrictions/tet:label-restriction/"
-           + "tet:label-step/"
-           + "tet:technology"{
-       when "../../../../../../../"
-          + "nw:network-types/tet:te-topology/"
-          + "otnt:otn-topology" {
-
-
-
-
-         description
-           "Augmentation parameters apply only for networks with
-            OTN topology type.";
-       }
-       description
-         "Augment TE label range step for the TTP
-          Local Link Connectivities.";
-       case otn {
-         uses l1-types:otn-label-step;
-       }
-     }
-
-     augment "/nw:networks/nw:network/nw:node/tet:te/"
-           + "tet:tunnel-termination-point/"
-           + "tet:local-link-connectivities/"
-           + "tet:underlay/tet:primary-path/tet:path-element/tet:type/"
-           + "tet:label/tet:label-hop/tet:te-label/tet:technology" {
-       when "../../../../../../../../../"
-          + "nw:network-types/tet:te-topology/"
-          + "otnt:otn-topology" {
-         description
-           "Augmentation parameters apply only for networks with
-            OTN topology type.";
-       }
-       description
-         "Augment TE label hop for the underlay primary path
-          of the TTP Local Link Connectivities.";
-       case otn {
-         uses l1-types:otn-label-hop;
-       }
-     }
-
-     augment "/nw:networks/nw:network/nw:node/tet:te/"
-           + "tet:tunnel-termination-point/"
-           + "tet:local-link-connectivities/"
-           + "tet:underlay/tet:backup-path/tet:path-element/tet:type/"
-           + "tet:label/tet:label-hop/tet:te-label/tet:technology" {
-       when "../../../../../../../../../"
-          + "nw:network-types/tet:te-topology/"
-          + "otnt:otn-topology" {
-         description
-           "Augmentation parameters apply only for networks with
-            OTN topology type.";
-       }
-       description
-         "Augment TE label hop for the underlay backup path
-          of the TTP Local Link Connectivities.";
-       case otn {
-
-
-
-
-         uses l1-types:otn-label-hop;
-       }
-     }
-
-     augment "/nw:networks/nw:network/nw:node/tet:te/"
-           + "tet:tunnel-termination-point/"
-           + "tet:local-link-connectivities/"
-           + "tet:optimizations/tet:algorithm/tet:metric/"
-           + "tet:optimization-metric/"
-           + "tet:explicit-route-exclude-objects/"
-           + "tet:route-object-exclude-object/tet:type/"
-           + "tet:label/tet:label-hop/tet:te-label/tet:technology" {
-       when "../../../../../../../../../../"
-          + "nw:network-types/tet:te-topology/"
-          + "otnt:otn-topology" {
-         description
-           "Augmentation parameters apply only for networks with
-            OTN topology type.";
-       }
-       description
-         "Augment TE label hop for the explicit route objects excluded
-          by the path computation of the TTP Local Link
-          Connectivities.";
-       case otn {
-         uses l1-types:otn-label-hop;
-       }
-     }
-
-     augment "/nw:networks/nw:network/nw:node/tet:te/"
-           + "tet:tunnel-termination-point/"
-           + "tet:local-link-connectivities/"
-           + "tet:optimizations/tet:algorithm/tet:metric/"
-           + "tet:optimization-metric/"
-           + "tet:explicit-route-include-objects/"
-           + "tet:route-object-include-object/tet:type/"
-           + "tet:label/tet:label-hop/tet:te-label/tet:technology" {
-       when "../../../../../../../../../../"
-          + "nw:network-types/tet:te-topology/"
-          + "otnt:otn-topology" {
-         description
-           "Augmentation parameters apply only for networks with
-            OTN topology type.";
-       }
-       description
-         "Augment TE label hop for the explicit route objects included
-          by the path computation of the TTP Local Link
-          Connectivities.";
-       case otn {
-
-
-
-
-         uses l1-types:otn-label-hop;
-       }
-     }
-
-     augment "/nw:networks/nw:network/nw:node/tet:te/"
-           + "tet:tunnel-termination-point/"
-           + "tet:local-link-connectivities/"
-           + "tet:path-properties/tet:path-route-objects/"
-           + "tet:path-route-object/tet:type/"
-           + "tet:label/tet:label-hop/tet:te-label/tet:technology" {
-       when "../../../../../../../../../"
-          + "nw:network-types/tet:te-topology/"
-          + "otnt:otn-topology" {
-         description
-           "Augmentation parameters apply only for networks with
-            OTN topology type.";
-       }
-       description
-         "Augment TE label hop for the computed path route objects
-          of the TTP Local Link Connectivities.";
-       case otn {
-         uses l1-types:otn-label-hop;
-       }
-     }
-
-     augment "/nw:networks/nw:network/nw:node/tet:te/"
-           + "tet:tunnel-termination-point/"
-           + "tet:local-link-connectivities/"
-           + "tet:local-link-connectivity/"
-           + "tet:label-restrictions/tet:label-restriction/"
-           + "tet:label-start/tet:te-label/tet:technology" {
-       when "../../../../../../../../../"
-          + "nw:network-types/tet:te-topology/"
-          + "otnt:otn-topology" {
-         description
-           "Augmentation parameters apply only for networks with
-            OTN topology type.";
-       }
-       description
-         "Augment TE label range start for the TTP
-          Local Link Connectivity entry.";
-       case otn {
-         uses l1-types:otn-label-start-end;
-       }
-     }
-
-     augment "/nw:networks/nw:network/nw:node/tet:te/"
-           + "tet:tunnel-termination-point/"
-
-
-
-
-           + "tet:local-link-connectivities/"
-           + "tet:local-link-connectivity/"
-           + "tet:label-restrictions/tet:label-restriction/"
-           + "tet:label-end/tet:te-label/tet:technology" {
-       when "../../../../../../../../../"
-          + "nw:network-types/tet:te-topology/"
-          + "otnt:otn-topology" {
-         description
-           "Augmentation parameters apply only for networks with
-            OTN topology type.";
-       }
-       description
-         "Augment TE label range end for the TTP
-          Local Link Connectivity entry.";
-       case otn {
-         uses l1-types:otn-label-start-end;
-       }
-     }
-
-     augment "/nw:networks/nw:network/nw:node/tet:te/"
-           + "tet:tunnel-termination-point/"
-           + "tet:local-link-connectivities/"
-           + "tet:local-link-connectivity/"
-           + "tet:label-restrictions/tet:label-restriction/"
-           + "tet:label-step/tet:technology" {
-       when "../../../../../../../../"
-          + "nw:network-types/tet:te-topology/"
-          + "otnt:otn-topology" {
-         description
-           "Augmentation parameters apply only for networks with
-            OTN topology type.";
-       }
-       description
-         "Augment TE label range step for the TTP
-          Local Link Connectivity entry.";
-       case otn {
-         uses l1-types:otn-label-step;
-       }
-     }
-
-     augment "/nw:networks/nw:network/nw:node/tet:te/"
-           + "tet:tunnel-termination-point/"
-           + "tet:local-link-connectivities/"
-           + "tet:local-link-connectivity/"
-           + "tet:underlay/tet:primary-path/tet:path-element/tet:type/"
-           + "tet:label/tet:label-hop/tet:te-label/tet:technology" {
-       when "../../../../../../../../../../"
-          + "nw:network-types/tet:te-topology/"
-
-
-
-
-          + "otnt:otn-topology" {
-         description
-           "Augmentation parameters apply only for networks with
-            OTN topology type.";
-       }
-       description
-         "Augment TE label hop for the underlay primary path
-          of the TTP Local Link Connectivity entry.";
-       case otn {
-         uses l1-types:otn-label-hop;
-       }
-     }
-
-     augment "/nw:networks/nw:network/nw:node/tet:te/"
-           + "tet:tunnel-termination-point/"
-           + "tet:local-link-connectivities/"
-           + "tet:local-link-connectivity/"
-           + "tet:underlay/tet:backup-path/tet:path-element/tet:type/"
-           + "tet:label/tet:label-hop/tet:te-label/tet:technology" {
-       when "../../../../../../../../../../"
-          + "nw:network-types/tet:te-topology/"
-          + "otnt:otn-topology" {
-         description
-           "Augmentation parameters apply only for networks with
-            OTN topology type.";
-       }
-       description
-         "Augment TE label hop for the underlay backup path
-          of the TTP Local Link Connectivity entry.";
-       case otn {
-         uses l1-types:otn-label-hop;
-       }
-     }
-
-     augment "/nw:networks/nw:network/nw:node/tet:te/"
-           + "tet:tunnel-termination-point/"
-           + "tet:local-link-connectivities/"
-           + "tet:local-link-connectivity/"
-           + "tet:optimizations/tet:algorithm/tet:metric/"
-           + "tet:optimization-metric/"
-           + "tet:explicit-route-exclude-objects/"
-           + "tet:route-object-exclude-object/tet:type/"
-           + "tet:label/tet:label-hop/tet:te-label/tet:technology" {
-       when "../../../../../../../../../../../"
-          + "nw:network-types/tet:te-topology/"
-          + "otnt:otn-topology" {
-         description
-           "Augmentation parameters apply only for networks with
-
-
-
-
-            OTN topology type.";
-       }
-       description
-         "Augment TE label hop for the explicit route objects excluded
-          by the path computation of the TTP Local Link
-          Connectivity entry.";
-       case otn {
-         uses l1-types:otn-label-hop;
-       }
-     }
-
-     augment "/nw:networks/nw:network/nw:node/tet:te/"
-           + "tet:tunnel-termination-point/"
-           + "tet:local-link-connectivities/"
-           + "tet:local-link-connectivity/"
-           + "tet:optimizations/tet:algorithm/tet:metric/"
-           + "tet:optimization-metric/"
-           + "tet:explicit-route-include-objects/"
-           + "tet:route-object-include-object/tet:type/"
-           + "tet:label/tet:label-hop/tet:te-label/tet:technology" {
-       when "../../../../../../../../../../../"
-          + "nw:network-types/tet:te-topology/"
-          + "otnt:otn-topology" {
-         description
-           "Augmentation parameters apply only for networks with
-            OTN topology type.";
-       }
-       description
-         "Augment TE label hop for the explicit route objects included
-          by the path computation of the TTP Local Link
-          Connectivity entry.";
-       case otn {
-         uses l1-types:otn-label-hop;
-       }
-     }
-
-     augment "/nw:networks/nw:network/nw:node/tet:te/"
-           + "tet:tunnel-termination-point/"
-           + "tet:local-link-connectivities/"
-           + "tet:local-link-connectivity/"
-           + "tet:path-properties/tet:path-route-objects/"
-           + "tet:path-route-object/tet:type/"
-           + "tet:label/tet:label-hop/tet:te-label/tet:technology" {
-       when "../../../../../../../../../../"
-          + "nw:network-types/tet:te-topology/"
-          + "otnt:otn-topology" {
-         description
-           "Augmentation parameters apply only for networks with
-
-
-
-
-            OTN topology type.";
-       }
-       description
-         "Augment TE label hop for the computed path route objects
-          of the TTP Local Link Connectivity entry.";
-       case otn {
-         uses l1-types:otn-label-hop;
-       }
-     }
-     augment "/nw:networks/nw:network/nt:link/tet:te/"
-           + "tet:te-link-attributes/"
-           + "tet:underlay/tet:primary-path/tet:path-element/tet:type/"
-           + "tet:label/tet:label-hop/tet:te-label/tet:technology" {
-       when "../../../../../../../../"
-          + "nw:network-types/tet:te-topology/"
-          + "otnt:otn-topology" {
-         description
-           "Augmentation parameters apply only for networks with
-            OTN topology type.";
-       }
-       description
-         "Augment TE label hop for the underlay primary path
-          of the TE link.";
-       case otn {
-         uses l1-types:otn-label-hop;
-       }
-     }
-
-     augment "/nw:networks/nw:network/nt:link/tet:te/"
-           + "tet:te-link-attributes/"
-           + "tet:underlay/tet:backup-path/tet:path-element/tet:type/"
-           + "tet:label/tet:label-hop/tet:te-label/tet:technology" {
-       when "../../../../../../../../"
-          + "nw:network-types/tet:te-topology/"
-          + "otnt:otn-topology" {
-         description
-           "Augmentation parameters apply only for networks with
-            OTN topology type.";
-       }
-       description
-         "Augment TE label hop for the underlay backup path
-          of the TE link.";
-       case otn {
-         uses l1-types:otn-label-hop;
-       }
-     }
-
-     augment "/nw:networks/nw:network/nt:link/tet:te/"
-
-
-
-
-           + "tet:te-link-attributes/"
-           + "tet:label-restrictions/tet:label-restriction/"
-           + "tet:label-start/tet:te-label/tet:technology" {
-       when "../../../../../../../nw:network-types/tet:te-topology/"
-          + "otnt:otn-topology" {
-         description
-           "Augmentation parameters apply only for networks with
-            OTN topology type.";
-       }
-       description
-         "Augment TE label range start for the TE link.";
-       case otn {
-         uses l1-types:otn-label-start-end;
-       }
-     }
-
-     augment "/nw:networks/nw:network/nt:link/tet:te/"
-           + "tet:te-link-attributes/"
-           + "tet:label-restrictions/tet:label-restriction/"
-           + "tet:label-end/tet:te-label/tet:technology" {
-       when "../../../../../../../nw:network-types/tet:te-topology/"
-          + "otnt:otn-topology" {
-         description
-           "Augmentation parameters apply only for networks with
-            OTN topology type.";
-       }
-       description
-         "Augment TE label range end for the TE link.";
-       case otn {
-         uses l1-types:otn-label-start-end;
-       }
-     }
-
-     augment "/nw:networks/nw:network/nt:link/tet:te/"
-           + "tet:te-link-attributes/"
-           + "tet:label-restrictions/tet:label-restriction/"
-           + "tet:label-step/tet:technology" {
-       when "../../../../../../nw:network-types/tet:te-topology/"
-          + "otnt:otn-topology" {
-         description
-           "Augmentation parameters apply only for networks with
-            OTN topology type.";
-       }
-       description
-         "Augment TE label range step for the TE link.";
-       case otn {
-         uses l1-types:otn-label-step;
-       }
-
-
-
-
-     }
-
-     augment "/nw:networks/nw:network/nt:link/tet:te/"
-           + "tet:information-source-entry/"
-           + "tet:label-restrictions/tet:label-restriction/"
-           + "tet:label-start/tet:te-label/tet:technology" {
-       when "../../../../../../../nw:network-types/tet:te-topology/"
-          + "otnt:otn-topology" {
-         description
-           "Augmentation parameters apply only for networks with
-            OTN topology type.";
-       }
-       description
-         "Augment TE label range start for the TE link
-          information source.";
-       case otn {
-         uses l1-types:otn-label-start-end;
-       }
-     }
-
-     augment "/nw:networks/nw:network/nt:link/tet:te/"
-           + "tet:information-source-entry/"
-           + "tet:label-restrictions/tet:label-restriction/"
-           + "tet:label-end/tet:te-label/tet:technology" {
-       when "../../../../../../../nw:network-types/tet:te-topology/"
-          + "otnt:otn-topology" {
-         description
-           "Augmentation parameters apply only for networks with
-            OTN topology type.";
-       }
-       description
-         "Augment TE label range end for the TE link
-          information source.";
-       case otn {
-         uses l1-types:otn-label-start-end;
-       }
-     }
-
-     augment "/nw:networks/nw:network/nt:link/tet:te/"
-           + "tet:information-source-entry/"
-           + "tet:label-restrictions/tet:label-restriction/"
-           + "tet:label-step/tet:technology" {
-       when "../../../../../../nw:network-types/tet:te-topology/"
-          + "otnt:otn-topology" {
-         description
-           "Augmentation parameters apply only for networks with
-            OTN topology type.";
-       }
-
-
-
-
-       description
-         "Augment TE label range step for the TE link
-          information source.";
-       case otn {
-         uses l1-types:otn-label-step;
-       }
-     }
-
-     augment "/nw:networks/tet:te/tet:templates/"
-           + "tet:link-template/tet:te-link-attributes/"
-           + "tet:underlay/tet:primary-path/tet:path-element/tet:type/"
-           + "tet:label/tet:label-hop/tet:te-label/tet:technology" {
-       description
-         "Augment TE label hop for the underlay primary path
-          of the TE link template.";
-       case otn {
-         uses l1-types:otn-label-hop;
-       }
-     }
-
-     augment "/nw:networks/tet:te/tet:templates/"
-           + "tet:link-template/tet:te-link-attributes/"
-           + "tet:underlay/tet:backup-path/tet:path-element/tet:type/"
-           + "tet:label/tet:label-hop/tet:te-label/tet:technology" {
-       description
-         "Augment TE label hop for the underlay backup path
-          of the TE link template.";
-       case otn {
-         uses l1-types:otn-label-hop;
-       }
-     }
-
-     augment "/nw:networks/tet:te/tet:templates/"
-           + "tet:link-template/tet:te-link-attributes/"
-           + "tet:label-restrictions/tet:label-restriction/"
-           + "tet:label-start/tet:te-label/tet:technology" {
-       description
-         "Augment TE label range start for the TE link template.";
-       case otn {
-         uses l1-types:otn-label-start-end;
-       }
-     }
-
-     augment "/nw:networks/tet:te/tet:templates/"
-           + "tet:link-template/tet:te-link-attributes/"
-           + "tet:label-restrictions/tet:label-restriction/"
-           + "tet:label-end/tet:te-label/tet:technology" {
-       description
-
-
-
-
-         "Augment TE label range end for the TE link template.";
-       case otn {
-         uses l1-types:otn-label-start-end;
-       }
-     }
-
-     augment "/nw:networks/tet:te/tet:templates/"
-           + "tet:link-template/tet:te-link-attributes/"
-           + "tet:label-restrictions/tet:label-restriction/"
-           + "tet:label-step/tet:technology" {
-       description
-         "Augment TE label range step for the TE link template.";
-       case otn {
-         uses l1-types:otn-label-step;
-       }
-     }
-   }
diff --git a/src/nbi/service/rest_server/nbi_plugins/ietf_network_new/yang/ietf-te-packet-types@2020-06-10.yang b/src/nbi/service/rest_server/nbi_plugins/ietf_network_new/yang/ietf-te-packet-types@2020-06-10.yang
deleted file mode 100644
index 8e7d4aafadcc34ec21dbf553d72852dc64624c4a..0000000000000000000000000000000000000000
--- a/src/nbi/service/rest_server/nbi_plugins/ietf_network_new/yang/ietf-te-packet-types@2020-06-10.yang
+++ /dev/null
@@ -1,475 +0,0 @@
-module ietf-te-packet-types {
-  yang-version 1.1;
-  namespace "urn:ietf:params:xml:ns:yang:ietf-te-packet-types";
-  prefix te-packet-types;
-
-  /* Import TE generic types */
-
-  import ietf-te-types {
-    prefix te-types;
-    reference
-      "RFC 8776: Common YANG Data Types for Traffic Engineering";
-  }
-
-  organization
-    "IETF Traffic Engineering Architecture and Signaling (TEAS)
-     Working Group";
-  contact
-    "WG Web:   <https://datatracker.ietf.org/wg/teas/>
-     WG List:  <mailto:teas@ietf.org>
-
-     Editor:   Tarek Saad
-               <mailto:tsaad@juniper.net>
-
-     Editor:   Rakesh Gandhi
-               <mailto:rgandhi@cisco.com>
-
-     Editor:   Vishnu Pavan Beeram
-               <mailto:vbeeram@juniper.net>
-
-     Editor:   Xufeng Liu
-               <mailto:xufeng.liu.ietf@gmail.com>
-
-     Editor:   Igor Bryskin
-               <mailto:i_bryskin@yahoo.com>";
-  description
-    "This YANG module contains a collection of generally useful YANG
-     data type definitions specific to MPLS TE.  The model fully
-     conforms to the Network Management Datastore Architecture
-     (NMDA).
-
-     Copyright (c) 2020 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 Simplified 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 8776; see the
-     RFC itself for full legal notices.";
-
-  revision 2020-06-10 {
-    description
-      "Latest revision of TE MPLS types.";
-    reference
-      "RFC 8776: Common YANG Data Types for Traffic Engineering";
-  }
-
-  /**
-   * Typedefs
-   */
-
-  typedef te-bandwidth-requested-type {
-    type enumeration {
-      enum specified {
-        description
-          "Bandwidth is explicitly specified.";
-      }
-      enum auto {
-        description
-          "Bandwidth is automatically computed.";
-      }
-    }
-    description
-      "Enumerated type for specifying whether bandwidth is
-       explicitly specified or automatically computed.";
-  }
-
-  typedef te-class-type {
-    type uint8;
-    description
-      "Diffserv-TE Class-Type.  Defines a set of Traffic Trunks
-       crossing a link that is governed by a specific set of
-       bandwidth constraints.  Class-Type is used for the purposes
-       of link bandwidth allocation, constraint-based routing, and
-       admission control.";
-    reference
-      "RFC 4124: Protocol Extensions for Support of Diffserv-aware
-       MPLS Traffic Engineering";
-  }
-
-  typedef bc-type {
-    type uint8 {
-      range "0..7";
-    }
-    description
-      "Diffserv-TE bandwidth constraints as defined in RFC 4124.";
-    reference
-      "RFC 4124: Protocol Extensions for Support of Diffserv-aware
-       MPLS Traffic Engineering";
-  }
-
-  typedef bandwidth-kbps {
-    type uint64;
-    units "Kbps";
-    description
-      "Bandwidth values, expressed in kilobits per second.";
-  }
-
-  typedef bandwidth-mbps {
-    type uint64;
-    units "Mbps";
-    description
-      "Bandwidth values, expressed in megabits per second.";
-  }
-
-  typedef bandwidth-gbps {
-    type uint64;
-    units "Gbps";
-    description
-      "Bandwidth values, expressed in gigabits per second.";
-  }
-
-  identity backup-protection-type {
-    description
-      "Base identity for the backup protection type.";
-  }
-
-  identity backup-protection-link {
-    base backup-protection-type;
-    description
-      "Backup provides link protection only.";
-  }
-
-  identity backup-protection-node-link {
-    base backup-protection-type;
-    description
-      "Backup offers node (preferred) or link protection.";
-  }
-
-  identity bc-model-type {
-    description
-      "Base identity for the Diffserv-TE Bandwidth Constraints
-       Model type.";
-    reference
-      "RFC 4124: Protocol Extensions for Support of Diffserv-aware
-       MPLS Traffic Engineering";
-  }
-
-  identity bc-model-rdm {
-    base bc-model-type;
-    description
-      "Russian Dolls Bandwidth Constraints Model type.";
-    reference
-      "RFC 4127: Russian Dolls Bandwidth Constraints Model for
-                 Diffserv-aware MPLS Traffic Engineering";
-  }
-
-  identity bc-model-mam {
-    base bc-model-type;
-    description
-      "Maximum Allocation Bandwidth Constraints Model type.";
-    reference
-      "RFC 4125: Maximum Allocation Bandwidth Constraints Model for
-                 Diffserv-aware MPLS Traffic Engineering";
-  }
-
-  identity bc-model-mar {
-    base bc-model-type;
-    description
-      "Maximum Allocation with Reservation Bandwidth Constraints
-       Model type.";
-    reference
-      "RFC 4126: Max Allocation with Reservation Bandwidth
-       Constraints Model for Diffserv-aware MPLS Traffic Engineering
-       & Performance Comparisons";
-  }
-
-  grouping performance-metrics-attributes-packet {
-    description
-      "Contains PM attributes.";
-    uses te-types:performance-metrics-attributes {
-      augment "performance-metrics-one-way" {
-        leaf one-way-min-delay {
-          type uint32 {
-            range "0..16777215";
-          }
-          description
-            "One-way minimum delay or latency in microseconds.";
-        }
-        leaf one-way-min-delay-normality {
-          type te-types:performance-metrics-normality;
-          default "normal";
-          description
-            "One-way minimum delay or latency normality.";
-        }
-        leaf one-way-max-delay {
-          type uint32 {
-            range "0..16777215";
-          }
-          description
-            "One-way maximum delay or latency in microseconds.";
-        }
-        leaf one-way-max-delay-normality {
-          type te-types:performance-metrics-normality;
-          default "normal";
-          description
-            "One-way maximum delay or latency normality.";
-        }
-        leaf one-way-delay-variation {
-          type uint32 {
-            range "0..16777215";
-          }
-          description
-            "One-way delay variation in microseconds.";
-          reference
-            "RFC 5481: Packet Delay Variation Applicability
-             Statement, Section 4.2";
-        }
-        leaf one-way-delay-variation-normality {
-          type te-types:performance-metrics-normality;
-          default "normal";
-          description
-            "One-way delay variation normality.";
-          reference
-            "RFC 7471: OSPF Traffic Engineering (TE) Metric
-             Extensions
-             RFC 7823: Performance-Based Path Selection for
-             Explicitly Routed Label Switched Paths (LSPs) Using
-             TE Metric Extensions
-             RFC 8570: IS-IS Traffic Engineering (TE) Metric
-             Extensions";
-        }
-        leaf one-way-packet-loss {
-          type decimal64 {
-            fraction-digits 6;
-            range "0..50.331642";
-          }
-          description
-            "One-way packet loss as a percentage of the total traffic
-             sent over a configurable interval.  The finest precision
-             is 0.000003%, where the maximum is 50.331642%.";
-          reference
-            "RFC 8570: IS-IS Traffic Engineering (TE) Metric
-             Extensions, Section 4.4";
-        }
-        leaf one-way-packet-loss-normality {
-          type te-types:performance-metrics-normality;
-          default "normal";
-          description
-            "Packet loss normality.";
-          reference
-            "RFC 7471: OSPF Traffic Engineering (TE) Metric
-             Extensions
-             RFC 7823: Performance-Based Path Selection for
-             Explicitly Routed Label Switched Paths (LSPs) Using
-             TE Metric Extensions
-             RFC 8570: IS-IS Traffic Engineering (TE) Metric
-             Extensions";
-        }
-        description
-          "PM one-way packet-specific augmentation for a generic PM
-           grouping.";
-      }
-      augment "performance-metrics-two-way" {
-        leaf two-way-min-delay {
-          type uint32 {
-            range "0..16777215";
-          }
-          default "0";
-          description
-            "Two-way minimum delay or latency in microseconds.";
-        }
-        leaf two-way-min-delay-normality {
-          type te-types:performance-metrics-normality;
-          default "normal";
-          description
-            "Two-way minimum delay or latency normality.";
-          reference
-            "RFC 7471: OSPF Traffic Engineering (TE) Metric
-             Extensions
-             RFC 7823: Performance-Based Path Selection for
-             Explicitly Routed Label Switched Paths (LSPs) Using
-             TE Metric Extensions
-             RFC 8570: IS-IS Traffic Engineering (TE) Metric
-             Extensions";
-        }
-        leaf two-way-max-delay {
-          type uint32 {
-            range "0..16777215";
-          }
-          default "0";
-          description
-            "Two-way maximum delay or latency in microseconds.";
-        }
-        leaf two-way-max-delay-normality {
-          type te-types:performance-metrics-normality;
-          default "normal";
-          description
-            "Two-way maximum delay or latency normality.";
-          reference
-            "RFC 7471: OSPF Traffic Engineering (TE) Metric
-             Extensions
-             RFC 7823: Performance-Based Path Selection for
-             Explicitly Routed Label Switched Paths (LSPs) Using
-             TE Metric Extensions
-             RFC 8570: IS-IS Traffic Engineering (TE) Metric
-             Extensions";
-        }
-        leaf two-way-delay-variation {
-          type uint32 {
-            range "0..16777215";
-          }
-          default "0";
-          description
-            "Two-way delay variation in microseconds.";
-          reference
-            "RFC 5481: Packet Delay Variation Applicability
-             Statement, Section 4.2";
-        }
-        leaf two-way-delay-variation-normality {
-          type te-types:performance-metrics-normality;
-          default "normal";
-          description
-            "Two-way delay variation normality.";
-          reference
-            "RFC 7471: OSPF Traffic Engineering (TE) Metric
-             Extensions
-             RFC 7823: Performance-Based Path Selection for
-             Explicitly Routed Label Switched Paths (LSPs) Using
-             TE Metric Extensions
-             RFC 8570: IS-IS Traffic Engineering (TE) Metric
-             Extensions";
-        }
-        leaf two-way-packet-loss {
-          type decimal64 {
-            fraction-digits 6;
-            range "0..50.331642";
-          }
-          default "0";
-          description
-            "Two-way packet loss as a percentage of the total traffic
-             sent over a configurable interval.  The finest precision
-             is 0.000003%.";
-        }
-        leaf two-way-packet-loss-normality {
-          type te-types:performance-metrics-normality;
-          default "normal";
-          description
-            "Two-way packet loss normality.";
-        }
-        description
-          "PM two-way packet-specific augmentation for a generic PM
-           grouping.";
-        reference
-          "RFC 7471: OSPF Traffic Engineering (TE) Metric Extensions
-           RFC 7823: Performance-Based Path Selection for
-           Explicitly Routed Label Switched Paths (LSPs) Using
-           TE Metric Extensions
-           RFC 8570: IS-IS Traffic Engineering (TE) Metric
-           Extensions";
-      }
-    }
-  }
-
-  grouping one-way-performance-metrics-packet {
-    description
-      "One-way packet PM throttle grouping.";
-    leaf one-way-min-delay {
-      type uint32 {
-        range "0..16777215";
-      }
-      default "0";
-      description
-        "One-way minimum delay or latency in microseconds.";
-    }
-    leaf one-way-max-delay {
-      type uint32 {
-        range "0..16777215";
-      }
-      default "0";
-      description
-        "One-way maximum delay or latency in microseconds.";
-    }
-    leaf one-way-delay-variation {
-      type uint32 {
-        range "0..16777215";
-      }
-      default "0";
-      description
-        "One-way delay variation in microseconds.";
-    }
-    leaf one-way-packet-loss {
-      type decimal64 {
-        fraction-digits 6;
-        range "0..50.331642";
-      }
-      default "0";
-      description
-        "One-way packet loss as a percentage of the total traffic
-         sent over a configurable interval.  The finest precision is
-         0.000003%.";
-    }
-  }
-
-  grouping two-way-performance-metrics-packet {
-    description
-      "Two-way packet PM throttle grouping.";
-    leaf two-way-min-delay {
-      type uint32 {
-        range "0..16777215";
-      }
-      default "0";
-      description
-        "Two-way minimum delay or latency in microseconds.";
-    }
-    leaf two-way-max-delay {
-      type uint32 {
-        range "0..16777215";
-      }
-      default "0";
-      description
-        "Two-way maximum delay or latency in microseconds.";
-    }
-    leaf two-way-delay-variation {
-      type uint32 {
-        range "0..16777215";
-      }
-      default "0";
-      description
-        "Two-way delay variation in microseconds.";
-    }
-    leaf two-way-packet-loss {
-      type decimal64 {
-        fraction-digits 6;
-        range "0..50.331642";
-      }
-      default "0";
-      description
-        "Two-way packet loss as a percentage of the total traffic
-         sent over a configurable interval.  The finest precision is
-         0.000003%.";
-    }
-  }
-
-  grouping performance-metrics-throttle-container-packet {
-    description
-      "Packet PM threshold grouping.";
-    uses te-types:performance-metrics-throttle-container {
-      augment "throttle/threshold-out" {
-        uses one-way-performance-metrics-packet;
-        uses two-way-performance-metrics-packet;
-        description
-          "PM threshold-out packet augmentation for a
-           generic grouping.";
-      }
-      augment "throttle/threshold-in" {
-        uses one-way-performance-metrics-packet;
-        uses two-way-performance-metrics-packet;
-        description
-          "PM threshold-in packet augmentation for a
-           generic grouping.";
-      }
-      augment "throttle/threshold-accelerated-advertisement" {
-        uses one-way-performance-metrics-packet;
-        uses two-way-performance-metrics-packet;
-        description
-          "PM accelerated advertisement packet augmentation for a
-           generic grouping.";
-      }
-    }
-  }
-}
diff --git a/src/nbi/service/rest_server/nbi_plugins/ietf_network_new/yang/ietf-te-topology@2020-08-06.yang b/src/nbi/service/rest_server/nbi_plugins/ietf_network_new/yang/ietf-te-topology@2020-08-06.yang
deleted file mode 100644
index 6d76a77b21ba5609094a670290e5bd81562c3022..0000000000000000000000000000000000000000
--- a/src/nbi/service/rest_server/nbi_plugins/ietf_network_new/yang/ietf-te-topology@2020-08-06.yang
+++ /dev/null
@@ -1,1952 +0,0 @@
-module ietf-te-topology {
-  yang-version 1.1;
-  namespace "urn:ietf:params:xml:ns:yang:ietf-te-topology";
-  prefix tet;
-
-  import ietf-yang-types {
-    prefix yang;
-    reference
-      "RFC 6991: Common YANG Data Types";
-  }
-  import ietf-inet-types {
-    prefix inet;
-    reference
-      "RFC 6991: Common YANG Data Types";
-  }
-  import ietf-te-types {
-    prefix te-types;
-    reference
-      "RFC 8776: Common YANG Data Types for Traffic Engineering";
-  }
-  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";
-  }
-
-  organization
-    "IETF Traffic Engineering Architecture and Signaling (TEAS)
-     Working Group";
-  contact
-    "WG Web:   <https://datatracker.ietf.org/wg/teas/>
-     WG List:  <mailto:teas@ietf.org>
-
-     Editor:   Xufeng Liu
-               <mailto:xufeng.liu.ietf@gmail.com>
-
-     Editor:   Igor Bryskin
-               <mailto:i_bryskin@yahoo.com>
-
-     Editor:   Vishnu Pavan Beeram
-               <mailto:vbeeram@juniper.net>
-
-     Editor:   Tarek Saad
-               <mailto:tsaad@juniper.net>
-
-     Editor:   Himanshu Shah
-               <mailto:hshah@ciena.com>
-
-     Editor:   Oscar Gonzalez de Dios
-               <mailto:oscar.gonzalezdedios@telefonica.com>";
-  description
-    "This YANG module defines a TE topology model for representing,
-     retrieving, and manipulating technology-agnostic TE topologies.
-
-     Copyright (c) 2020 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 Simplified 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 8795; see the
-     RFC itself for full legal notices.";
-
-  revision 2020-08-06 {
-    description
-      "Initial revision.";
-    reference
-      "RFC 8795: YANG Data Model for Traffic Engineering (TE)
-       Topologies";
-  }
-
-  /*
-   * Features
-   */
-
-  feature nsrlg {
-    description
-      "This feature indicates that the system supports NSRLGs
-       (Non-Shared Risk Link Groups).";
-  }
-
-  feature te-topology-hierarchy {
-    description
-      "This feature indicates that the system allows an underlay
-       and/or overlay TE topology hierarchy.";
-  }
-
-  feature template {
-    description
-      "This feature indicates that the system supports
-       template configuration.";
-  }
-
-  /*
-   * Typedefs
-   */
-
-  typedef geographic-coordinate-degree {
-    type decimal64 {
-      fraction-digits 8;
-    }
-    description
-      "Decimal degree (DD) used to express latitude and longitude
-       geographic coordinates.";
-  }
-  // geographic-coordinate-degree
-
-  typedef te-info-source {
-    type enumeration {
-      enum unknown {
-        description
-          "The source is unknown.";
-      }
-      enum locally-configured {
-        description
-          "Configured entity.";
-      }
-      enum ospfv2 {
-        description
-          "OSPFv2.";
-      }
-      enum ospfv3 {
-        description
-          "OSPFv3.";
-      }
-      enum isis {
-        description
-          "IS-IS.";
-      }
-      enum bgp-ls {
-        description
-          "BGP-LS.";
-        reference
-          "RFC 7752: North-Bound Distribution of Link-State and
-           Traffic Engineering (TE) Information Using BGP";
-      }
-      enum system-processed {
-        description
-          "System-processed entity.";
-      }
-      enum other {
-        description
-          "Other source.";
-      }
-    }
-    description
-      "Describes the type of source that has provided the
-       related information, and the source's credibility.";
-  }
-  // te-info-source
-
-  /*
-   * Groupings
-   */
-
-  grouping connectivity-matrix-entry-path-attributes {
-    description
-      "Attributes of a connectivity matrix entry.";
-    leaf is-allowed {
-      type boolean;
-      description
-        "'true' - switching is allowed;
-         'false' - switching is disallowed.";
-    }
-    container underlay {
-      if-feature "te-topology-hierarchy";
-      description
-        "Attributes of the TE link underlay.";
-      reference
-        "RFC 4206: Label Switched Paths (LSP) Hierarchy with
-         Generalized Multi-Protocol Label Switching (GMPLS)
-         Traffic Engineering (TE)";
-      uses te-link-underlay-attributes;
-    }
-    uses te-types:generic-path-constraints;
-    uses te-types:generic-path-optimization;
-    uses te-types:generic-path-properties;
-  }
-  // connectivity-matrix-entry-path-attributes
-
-  grouping geolocation-container {
-    description
-      "Contains a GPS location.";
-    container geolocation {
-      config false;
-      description
-        "Contains a GPS location.";
-      leaf altitude {
-        type int64;
-        units "millimeters";
-        description
-          "Distance above sea level.";
-      }
-      leaf latitude {
-        type geographic-coordinate-degree {
-          range "-90..90";
-        }
-        description
-          "Relative position north or south on the Earth's surface.";
-      }
-      leaf longitude {
-        type geographic-coordinate-degree {
-          range "-180..180";
-        }
-        description
-          "Angular distance east or west on the Earth's surface.";
-      }
-    }
-    // geolocation
-  }
-  // geolocation-container
-
-  grouping information-source-state-attributes {
-    description
-      "The attributes identifying the source that has provided the
-       related information, and the source's credibility.";
-    leaf credibility-preference {
-      type uint16;
-      description
-        "The preference value for calculating the Traffic
-         Engineering database credibility value used for
-         tie-break selection between different information-source
-         values.  A higher value is preferable.";
-    }
-    leaf logical-network-element {
-      type string;
-      description
-        "When applicable, this is the name of a logical network
-         element from which the information is learned.";
-    }
-    leaf network-instance {
-      type string;
-      description
-        "When applicable, this is the name of a network instance
-         from which the information is learned.";
-    }
-  }
-  // information-source-state-attributes
-
-  grouping information-source-per-link-attributes {
-    description
-      "Per-node container of the attributes identifying the source
-       that has provided the related information, and the source's
-       credibility.";
-    leaf information-source {
-      type te-info-source;
-      config false;
-      description
-        "Indicates the type of information source.";
-    }
-    leaf information-source-instance {
-      type string;
-      config false;
-      description
-        "The name indicating the instance of the information
-         source.";
-    }
-    container information-source-state {
-      config false;
-      description
-        "Contains state attributes related to the information
-         source.";
-      uses information-source-state-attributes;
-      container topology {
-        description
-          "When the information is processed by the system,
-           the attributes in this container indicate which topology
-           is used to generate the result information.";
-        uses nt:link-ref;
-      }
-    }
-  }
-  // information-source-per-link-attributes
-
-  grouping information-source-per-node-attributes {
-    description
-      "Per-node container of the attributes identifying the source
-       that has provided the related information, and the source's
-       credibility.";
-    leaf information-source {
-      type te-info-source;
-      config false;
-      description
-        "Indicates the type of information source.";
-    }
-    leaf information-source-instance {
-      type string;
-      config false;
-      description
-        "The name indicating the instance of the information
-         source.";
-    }
-    container information-source-state {
-      config false;
-      description
-        "Contains state attributes related to the information
-         source.";
-      uses information-source-state-attributes;
-      container topology {
-        description
-          "When the information is processed by the system,
-           the attributes in this container indicate which topology
-           is used to generate the result information.";
-        uses nw:node-ref;
-      }
-    }
-  }
-  // information-source-per-node-attributes
-
-  grouping interface-switching-capability-list {
-    description
-      "List of Interface Switching Capability Descriptors (ISCDs).";
-    list interface-switching-capability {
-      key "switching-capability encoding";
-      description
-        "List of ISCDs for this link.";
-      reference
-        "RFC 3471: Generalized Multi-Protocol Label Switching (GMPLS)
-         Signaling Functional Description
-         RFC 4203: OSPF Extensions in Support of Generalized
-         Multi-Protocol Label Switching (GMPLS)";
-      leaf switching-capability {
-        type identityref {
-          base te-types:switching-capabilities;
-        }
-        description
-          "Switching capability for this interface.";
-      }
-      leaf encoding {
-        type identityref {
-          base te-types:lsp-encoding-types;
-        }
-        description
-          "Encoding supported by this interface.";
-      }
-      uses te-link-iscd-attributes;
-    }
-    // interface-switching-capability
-  }
-  // interface-switching-capability-list
-
-  grouping statistics-per-link {
-    description
-      "Statistics attributes per TE link.";
-    leaf discontinuity-time {
-      type yang:date-and-time;
-      description
-        "The time of the most recent occasion at which any one or
-         more of this interface's counters suffered a
-         discontinuity.  If no such discontinuities have occurred
-         since the last re-initialization of the local management
-         subsystem, then this node contains the time the local
-         management subsystem re-initialized itself.";
-    }
-    /* Administrative attributes */
-    leaf disables {
-      type yang:counter32;
-      description
-        "Number of times that a link was disabled.";
-    }
-    leaf enables {
-      type yang:counter32;
-      description
-        "Number of times that a link was enabled.";
-    }
-    leaf maintenance-clears {
-      type yang:counter32;
-      description
-        "Number of times that a link was taken out of maintenance.";
-    }
-    leaf maintenance-sets {
-      type yang:counter32;
-      description
-        "Number of times that a link was put in maintenance.";
-    }
-    leaf modifies {
-      type yang:counter32;
-      description
-        "Number of times that a link was modified.";
-    }
-    /* Operational attributes */
-    leaf downs {
-      type yang:counter32;
-      description
-        "Number of times that a link was set to an operational state
-         of 'down'.";
-    }
-    leaf ups {
-      type yang:counter32;
-      description
-        "Number of times that a link was set to an operational state
-         of 'up'.";
-    }
-    /* Recovery attributes */
-    leaf fault-clears {
-      type yang:counter32;
-      description
-        "Number of times that a link experienced a fault-clear
-         event.";
-    }
-    leaf fault-detects {
-      type yang:counter32;
-      description
-        "Number of times that a link experienced fault detection.";
-    }
-    leaf protection-switches {
-      type yang:counter32;
-      description
-        "Number of times that a link experienced protection
-         switchover.";
-    }
-    leaf protection-reverts {
-      type yang:counter32;
-      description
-        "Number of times that a link experienced protection
-         reversion.";
-    }
-    leaf restoration-failures {
-      type yang:counter32;
-      description
-        "Number of times that a link experienced restoration
-         failure.";
-    }
-    leaf restoration-starts {
-      type yang:counter32;
-      description
-        "Number of times that a link experienced restoration
-         start.";
-    }
-    leaf restoration-successes {
-      type yang:counter32;
-      description
-        "Number of times that a link experienced restoration
-         success.";
-    }
-    leaf restoration-reversion-failures {
-      type yang:counter32;
-      description
-        "Number of times that a link experienced restoration
-         reversion failure.";
-    }
-    leaf restoration-reversion-starts {
-      type yang:counter32;
-      description
-        "Number of times that a link experienced restoration
-         reversion start.";
-    }
-    leaf restoration-reversion-successes {
-      type yang:counter32;
-      description
-        "Number of times that a link experienced restoration
-         reversion success.";
-    }
-  }
-  // statistics-per-link
-
-  grouping statistics-per-node {
-    description
-      "Statistics attributes per TE node.";
-    leaf discontinuity-time {
-      type yang:date-and-time;
-      description
-        "The time of the most recent occasion at which any one or
-         more of this interface's counters suffered a
-         discontinuity.  If no such discontinuities have occurred
-         since the last re-initialization of the local management
-         subsystem, then this node contains the time the local
-         management subsystem re-initialized itself.";
-    }
-    container node {
-      description
-        "Contains statistics attributes at the TE node level.";
-      leaf disables {
-        type yang:counter32;
-        description
-          "Number of times that a node was disabled.";
-      }
-      leaf enables {
-        type yang:counter32;
-        description
-          "Number of times that a node was enabled.";
-      }
-      leaf maintenance-sets {
-        type yang:counter32;
-        description
-          "Number of times that a node was put in maintenance.";
-      }
-      leaf maintenance-clears {
-        type yang:counter32;
-        description
-          "Number of times that a node was taken out of
-           maintenance.";
-      }
-      leaf modifies {
-        type yang:counter32;
-        description
-          "Number of times that a node was modified.";
-      }
-    }
-    // node
-    container connectivity-matrix-entry {
-      description
-        "Contains statistics attributes at the level of a
-         connectivity matrix entry.";
-      leaf creates {
-        type yang:counter32;
-        description
-          "Number of times that a connectivity matrix entry was
-           created.";
-        reference
-          "RFC 6241: Network Configuration Protocol (NETCONF),
-                     Section 7.2, 'create' operation";
-      }
-      leaf deletes {
-        type yang:counter32;
-        description
-          "Number of times that a connectivity matrix entry was
-           deleted.";
-        reference
-          "RFC 6241: Network Configuration Protocol (NETCONF),
-                     Section 7.2, 'delete' operation";
-      }
-      leaf disables {
-        type yang:counter32;
-        description
-          "Number of times that a connectivity matrix entry was
-           disabled.";
-      }
-      leaf enables {
-        type yang:counter32;
-        description
-          "Number of times that a connectivity matrix entry was
-           enabled.";
-      }
-      leaf modifies {
-        type yang:counter32;
-        description
-          "Number of times that a connectivity matrix entry was
-           modified.";
-      }
-    }
-    // connectivity-matrix-entry
-  }
-  // statistics-per-node
-
-  grouping statistics-per-ttp {
-    description
-      "Statistics attributes per TE TTP (Tunnel Termination Point).";
-    leaf discontinuity-time {
-      type yang:date-and-time;
-      description
-        "The time of the most recent occasion at which any one or
-         more of this interface's counters suffered a
-         discontinuity.  If no such discontinuities have occurred
-         since the last re-initialization of the local management
-         subsystem, then this node contains the time the local
-         management subsystem re-initialized itself.";
-    }
-    container tunnel-termination-point {
-      description
-        "Contains statistics attributes at the TE TTP level.";
-      /* Administrative attributes */
-      leaf disables {
-        type yang:counter32;
-        description
-          "Number of times that a TTP was disabled.";
-      }
-      leaf enables {
-        type yang:counter32;
-        description
-          "Number of times that a TTP was enabled.";
-      }
-      leaf maintenance-clears {
-        type yang:counter32;
-        description
-          "Number of times that a TTP was taken out of maintenance.";
-      }
-      leaf maintenance-sets {
-        type yang:counter32;
-        description
-          "Number of times that a TTP was put in maintenance.";
-      }
-      leaf modifies {
-        type yang:counter32;
-        description
-          "Number of times that a TTP was modified.";
-      }
-      /* Operational attributes */
-      leaf downs {
-        type yang:counter32;
-        description
-          "Number of times that a TTP was set to an operational state
-           of 'down'.";
-      }
-      leaf ups {
-        type yang:counter32;
-        description
-          "Number of times that a TTP was set to an operational state
-           of 'up'.";
-      }
-      leaf in-service-clears {
-        type yang:counter32;
-        description
-          "Number of times that a TTP was taken out of service
-           (TE tunnel was released).";
-      }
-      leaf in-service-sets {
-        type yang:counter32;
-        description
-          "Number of times that a TTP was put in service by a TE
-           tunnel (TE tunnel was set up).";
-      }
-    }
-    // tunnel-termination-point
-    container local-link-connectivity {
-      description
-        "Contains statistics attributes at the TE LLCL (Local Link
-         Connectivity List) level.";
-      leaf creates {
-        type yang:counter32;
-        description
-          "Number of times that an LLCL entry was created.";
-        reference
-          "RFC 6241: Network Configuration Protocol (NETCONF),
-                     Section 7.2, 'create' operation";
-      }
-      leaf deletes {
-        type yang:counter32;
-        description
-          "Number of times that an LLCL entry was deleted.";
-        reference
-          "RFC 6241: Network Configuration Protocol (NETCONF),
-                     Section 7.2, 'delete' operation";
-      }
-      leaf disables {
-        type yang:counter32;
-        description
-          "Number of times that an LLCL entry was disabled.";
-      }
-      leaf enables {
-        type yang:counter32;
-        description
-          "Number of times that an LLCL entry was enabled.";
-      }
-      leaf modifies {
-        type yang:counter32;
-        description
-          "Number of times that an LLCL entry was modified.";
-      }
-    }
-    // local-link-connectivity
-  }
-  // statistics-per-ttp
-
-  grouping te-link-augment {
-    description
-      "Augmentation for a TE link.";
-    uses te-link-config;
-    uses te-link-state-derived;
-    container statistics {
-      config false;
-      description
-        "Statistics data.";
-      uses statistics-per-link;
-    }
-  }
-  // te-link-augment
-
-  grouping te-link-config {
-    description
-      "TE link configuration grouping.";
-    choice bundle-stack-level {
-      description
-        "The TE link can be partitioned into bundled links or
-         component links.";
-      case bundle {
-        container bundled-links {
-          description
-            "A set of bundled links.";
-          reference
-            "RFC 4201: Link Bundling in MPLS Traffic
-             Engineering (TE)";
-          list bundled-link {
-            key "sequence";
-            description
-              "Specifies a bundled interface that is
-               further partitioned.";
-            leaf sequence {
-              type uint32;
-              description
-                "Identifies the sequence in the bundle.";
-            }
-          }
-        }
-      }
-      case component {
-        container component-links {
-          description
-            "A set of component links.";
-          list component-link {
-            key "sequence";
-            description
-              "Specifies a component interface that is
-               sufficient to unambiguously identify the
-               appropriate resources.";
-            leaf sequence {
-              type uint32;
-              description
-                "Identifies the sequence in the bundle.";
-            }
-            leaf src-interface-ref {
-              type string;
-              description
-                "Reference to a component link interface on the
-                 source node.";
-            }
-            leaf des-interface-ref {
-              type string;
-              description
-                "Reference to a component link interface on the
-                 destination node.";
-            }
-          }
-        }
-      }
-    }
-    // bundle-stack-level
-    leaf-list te-link-template {
-      if-feature "template";
-      type leafref {
-        path "../../../../te/templates/link-template/name";
-      }
-      description
-        "The reference to a TE link template.";
-    }
-    uses te-link-config-attributes;
-  }
-  // te-link-config
-
-  grouping te-link-config-attributes {
-    description
-      "Link configuration attributes in a TE topology.";
-    container te-link-attributes {
-      description
-        "Link attributes in a TE topology.";
-      leaf access-type {
-        type te-types:te-link-access-type;
-        description
-          "Link access type, which can be point-to-point or
-           multi-access.";
-      }
-      container external-domain {
-        description
-          "For an inter-domain link, specifies the attributes of
-           the remote end of the link, to facilitate the signaling at
-           the local end.";
-        uses nw:network-ref;
-        leaf remote-te-node-id {
-          type te-types:te-node-id;
-          description
-            "Remote TE node identifier, used together with
-             'remote-te-link-tp-id' to identify the remote Link
-             Termination Point (LTP) in a different domain.";
-        }
-        leaf remote-te-link-tp-id {
-          type te-types:te-tp-id;
-          description
-            "Remote TE LTP identifier, used together with
-             'remote-te-node-id' to identify the remote LTP in a
-             different domain.";
-        }
-      }
-      leaf is-abstract {
-        type empty;
-        description
-          "Present if the link is abstract.";
-      }
-      leaf name {
-        type string;
-        description
-          "Link name.";
-      }
-      container underlay {
-        if-feature "te-topology-hierarchy";
-        description
-          "Attributes of the TE link underlay.";
-        reference
-          "RFC 4206: Label Switched Paths (LSP) Hierarchy with
-           Generalized Multi-Protocol Label Switching (GMPLS)
-           Traffic Engineering (TE)";
-        uses te-link-underlay-attributes;
-      }
-      leaf admin-status {
-        type te-types:te-admin-status;
-        description
-          "The administrative state of the link.";
-      }
-      uses te-link-info-attributes;
-    }
-    // te-link-attributes
-  }
-  // te-link-config-attributes
-
-  grouping te-link-info-attributes {
-    description
-      "Advertised TE information attributes.";
-    leaf link-index {
-      type uint64;
-      description
-        "The link identifier.  If OSPF is used, this object
-         represents an ospfLsdbID.  If IS-IS is used, this object
-         represents an isisLSPID.  If a locally configured link is
-         used, this object represents a unique value, which is
-         locally defined in a router.";
-    }
-    leaf administrative-group {
-      type te-types:admin-groups;
-      description
-        "Administrative group or color of the link.
-         This attribute covers both administrative groups (defined
-         in RFCs 3630 and 5305) and Extended Administrative Groups
-         (defined in RFC 7308).";
-      reference
-        "RFC 3630: Traffic Engineering (TE) Extensions to OSPF
-         Version 2
-         RFC 5305: IS-IS Extensions for Traffic Engineering
-         RFC 7308: Extended Administrative Groups in MPLS Traffic
-         Engineering (MPLS-TE)";
-    }
-    uses interface-switching-capability-list;
-    uses te-types:label-set-info;
-    leaf link-protection-type {
-      type identityref {
-        base te-types:link-protection-type;
-      }
-      description
-        "Link Protection Type desired for this link.";
-      reference
-        "RFC 4202: Routing Extensions in Support of
-         Generalized Multi-Protocol Label Switching (GMPLS)";
-    }
-    container max-link-bandwidth {
-      uses te-types:te-bandwidth;
-      description
-        "Maximum bandwidth that can be seen on this link in this
-         direction.  Units are in bytes per second.";
-      reference
-        "RFC 3630: Traffic Engineering (TE) Extensions to OSPF
-         Version 2
-         RFC 5305: IS-IS Extensions for Traffic Engineering";
-    }
-    container max-resv-link-bandwidth {
-      uses te-types:te-bandwidth;
-      description
-        "Maximum amount of bandwidth that can be reserved in this
-         direction in this link.  Units are in bytes per second.";
-      reference
-        "RFC 3630: Traffic Engineering (TE) Extensions to OSPF
-         Version 2
-         RFC 5305: IS-IS Extensions for Traffic Engineering";
-    }
-    list unreserved-bandwidth {
-      key "priority";
-      max-elements 8;
-      description
-        "Unreserved bandwidth for priority levels 0-7.  Units are in
-         bytes per second.";
-      reference
-        "RFC 3630: Traffic Engineering (TE) Extensions to OSPF
-         Version 2
-         RFC 5305: IS-IS Extensions for Traffic Engineering";
-      leaf priority {
-        type uint8 {
-          range "0..7";
-        }
-        description
-          "Priority.";
-      }
-      uses te-types:te-bandwidth;
-    }
-    leaf te-default-metric {
-      type uint32;
-      description
-        "Traffic Engineering metric.";
-      reference
-        "RFC 3630: Traffic Engineering (TE) Extensions to OSPF
-         Version 2
-         RFC 5305: IS-IS Extensions for Traffic Engineering";
-    }
-    leaf te-delay-metric {
-      type uint32;
-      description
-        "Traffic Engineering delay metric.";
-      reference
-        "RFC 7471: OSPF Traffic Engineering (TE) Metric Extensions";
-    }
-    leaf te-igp-metric {
-      type uint32;
-      description
-        "IGP metric used for Traffic Engineering.";
-      reference
-        "RFC 3785: Use of Interior Gateway Protocol (IGP) Metric as a
-         second MPLS Traffic Engineering (TE) Metric";
-    }
-    container te-srlgs {
-      description
-        "Contains a list of SRLGs.";
-      leaf-list value {
-        type te-types:srlg;
-        description
-          "SRLG value.";
-        reference
-          "RFC 4202: Routing Extensions in Support of
-           Generalized Multi-Protocol Label Switching (GMPLS)";
-      }
-    }
-    container te-nsrlgs {
-      if-feature "nsrlg";
-      description
-        "Contains a list of NSRLGs (Non-Shared Risk Link Groups).
-         When an abstract TE link is configured, this list specifies
-         the request that underlay TE paths need to be mutually
-         disjoint with other TE links in the same groups.";
-      leaf-list id {
-        type uint32;
-        description
-          "NSRLG ID, uniquely configured within a topology.";
-        reference
-          "RFC 4872: RSVP-TE Extensions in Support of End-to-End
-           Generalized Multi-Protocol Label Switching (GMPLS)
-           Recovery";
-      }
-    }
-  }
-  // te-link-info-attributes
-
-  grouping te-link-iscd-attributes {
-    description
-      "TE link ISCD attributes.";
-    reference
-      "RFC 4203: OSPF Extensions in Support of Generalized
-       Multi-Protocol Label Switching (GMPLS), Section 1.4";
-    list max-lsp-bandwidth {
-      key "priority";
-      max-elements 8;
-      description
-        "Maximum Label Switched Path (LSP) bandwidth at
-         priorities 0-7.";
-      leaf priority {
-        type uint8 {
-          range "0..7";
-        }
-        description
-          "Priority.";
-      }
-      uses te-types:te-bandwidth;
-    }
-  }
-  // te-link-iscd-attributes
-
-  grouping te-link-state-derived {
-    description
-      "Link state attributes in a TE topology.";
-    leaf oper-status {
-      type te-types:te-oper-status;
-      config false;
-      description
-        "The current operational state of the link.";
-    }
-    leaf is-transitional {
-      type empty;
-      config false;
-      description
-        "Present if the link is transitional; used as an
-         alternative approach in lieu of 'inter-layer-lock-id'
-         for path computation in a TE topology covering multiple
-         layers or multiple regions.";
-      reference
-        "RFC 5212: Requirements for GMPLS-Based Multi-Region and
-         Multi-Layer Networks (MRN/MLN)
-         RFC 6001: Generalized MPLS (GMPLS) Protocol Extensions
-         for Multi-Layer and Multi-Region Networks (MLN/MRN)";
-    }
-    uses information-source-per-link-attributes;
-    list information-source-entry {
-      key "information-source information-source-instance";
-      config false;
-      description
-        "A list of information sources learned, including the source
-         that is used.";
-      uses information-source-per-link-attributes;
-      uses te-link-info-attributes;
-    }
-    container recovery {
-      config false;
-      description
-        "Status of the recovery process.";
-      leaf restoration-status {
-        type te-types:te-recovery-status;
-        description
-          "Restoration status.";
-      }
-      leaf protection-status {
-        type te-types:te-recovery-status;
-        description
-          "Protection status.";
-      }
-    }
-    container underlay {
-      if-feature "te-topology-hierarchy";
-      config false;
-      description
-        "State attributes for the TE link underlay.";
-      leaf dynamic {
-        type boolean;
-        description
-          "'true' if the underlay is dynamically created.";
-      }
-      leaf committed {
-        type boolean;
-        description
-          "'true' if the underlay is committed.";
-      }
-    }
-  }
-  // te-link-state-derived
-
-  grouping te-link-underlay-attributes {
-    description
-      "Attributes for the TE link underlay.";
-    reference
-      "RFC 4206: Label Switched Paths (LSP) Hierarchy with
-       Generalized Multi-Protocol Label Switching (GMPLS)
-       Traffic Engineering (TE)";
-    leaf enabled {
-      type boolean;
-      description
-        "'true' if the underlay is enabled.
-         'false' if the underlay is disabled.";
-    }
-    container primary-path {
-      description
-        "The service path on the underlay topology that
-         supports this link.";
-      uses nw:network-ref;
-      list path-element {
-        key "path-element-id";
-        description
-          "A list of path elements describing the service path.";
-        leaf path-element-id {
-          type uint32;
-          description
-            "To identify the element in a path.";
-        }
-        uses te-path-element;
-      }
-    }
-    // primary-path
-    list backup-path {
-      key "index";
-      description
-        "A list of backup service paths on the underlay topology that
-         protect the underlay primary path.  If the primary path is
-         not protected, the list contains zero elements.  If the
-         primary path is protected, the list contains one or more
-         elements.";
-      leaf index {
-        type uint32;
-        description
-          "A sequence number to identify a backup path.";
-      }
-      uses nw:network-ref;
-      list path-element {
-        key "path-element-id";
-        description
-          "A list of path elements describing the backup service
-           path.";
-        leaf path-element-id {
-          type uint32;
-          description
-            "To identify the element in a path.";
-        }
-        uses te-path-element;
-      }
-    }
-    // backup-path
-    leaf protection-type {
-      type identityref {
-        base te-types:lsp-protection-type;
-      }
-      description
-        "Underlay protection type desired for this link.";
-    }
-    container tunnel-termination-points {
-      description
-        "Underlay TTPs desired for this link.";
-      leaf source {
-        type binary;
-        description
-          "Source TTP identifier.";
-      }
-      leaf destination {
-        type binary;
-        description
-          "Destination TTP identifier.";
-      }
-    }
-    container tunnels {
-      description
-        "Underlay TE tunnels supporting this TE link.";
-      leaf sharing {
-        type boolean;
-        default "true";
-        description
-          "'true' if the underlay tunnel can be shared with other
-           TE links;
-           'false' if the underlay tunnel is dedicated to this
-           TE link.
-           This leaf is the default option for all TE tunnels
-           and may be overridden by the per-TE-tunnel value.";
-      }
-      list tunnel {
-        key "tunnel-name";
-        description
-          "Zero, one, or more underlay TE tunnels that support this
-           TE link.";
-        leaf tunnel-name {
-          type string;
-          description
-            "A tunnel name uniquely identifies an underlay TE tunnel,
-             used together with the 'source-node' value for this
-             link.";
-          reference
-            "RFC 3209: RSVP-TE: Extensions to RSVP for LSP Tunnels";
-        }
-        leaf sharing {
-          type boolean;
-          description
-            "'true' if the underlay tunnel can be shared with other
-             TE links;
-             'false' if the underlay tunnel is dedicated to this
-             TE link.";
-        }
-      }
-      // tunnel
-    }
-    // tunnels
-  }
-  // te-link-underlay-attributes
-
-  grouping te-node-augment {
-    description
-      "Augmentation for a TE node.";
-    uses te-node-config;
-    uses te-node-state-derived;
-    container statistics {
-      config false;
-      description
-        "Statistics data.";
-      uses statistics-per-node;
-    }
-    list tunnel-termination-point {
-      key "tunnel-tp-id";
-      description
-        "A termination point can terminate a tunnel.";
-      leaf tunnel-tp-id {
-        type binary;
-        description
-          "TTP identifier.";
-      }
-      uses te-node-tunnel-termination-point-config;
-      leaf oper-status {
-        type te-types:te-oper-status;
-        config false;
-        description
-          "The current operational state of the TTP.";
-      }
-      uses geolocation-container;
-      container statistics {
-        config false;
-        description
-          "Statistics data.";
-        uses statistics-per-ttp;
-      }
-      // Relationship to other TTPs
-      list supporting-tunnel-termination-point {
-        key "node-ref tunnel-tp-ref";
-        description
-          "Identifies the TTPs on which this TTP depends.";
-        leaf node-ref {
-          type inet:uri;
-          description
-            "This leaf identifies the node in which the supporting
-             TTP is present.
-             This node is either the supporting node or a node in
-             an underlay topology.";
-        }
-        leaf tunnel-tp-ref {
-          type binary;
-          description
-            "Reference to a TTP that is in either the supporting node
-             or a node in an underlay topology.";
-        }
-      }
-      // supporting-tunnel-termination-point
-    }
-    // tunnel-termination-point
-  }
-  // te-node-augment
-
-  grouping te-node-config {
-    description
-      "TE node configuration grouping.";
-    leaf-list te-node-template {
-      if-feature "template";
-      type leafref {
-        path "../../../../te/templates/node-template/name";
-      }
-      description
-        "The reference to a TE node template.";
-    }
-    uses te-node-config-attributes;
-  }
-  // te-node-config
-
-  grouping te-node-config-attributes {
-    description
-      "Configuration node attributes in a TE topology.";
-    container te-node-attributes {
-      description
-        "Contains node attributes in a TE topology.";
-      leaf admin-status {
-        type te-types:te-admin-status;
-        description
-          "The administrative state of the link.";
-      }
-      uses te-node-connectivity-matrices;
-      uses te-node-info-attributes;
-    }
-  }
-  // te-node-config-attributes
-
-  grouping te-node-config-attributes-template {
-    description
-      "Configuration node attributes for a template in a TE
-       topology.";
-    container te-node-attributes {
-      description
-        "Contains node attributes in a TE topology.";
-      leaf admin-status {
-        type te-types:te-admin-status;
-        description
-          "The administrative state of the link.";
-      }
-      uses te-node-info-attributes;
-    }
-  }
-  // te-node-config-attributes-template
-
-  grouping te-node-connectivity-matrices {
-    description
-      "Connectivity matrix on a TE node.";
-    container connectivity-matrices {
-      description
-        "Contains a connectivity matrix on a TE node.";
-      leaf number-of-entries {
-        type uint16;
-        description
-          "The number of connectivity matrix entries.
-           If this number is specified in the configuration request,
-           the number is the requested number of entries, which may
-           not all be listed in the list;
-           if this number is reported in the state data,
-           the number is the current number of operational entries.";
-      }
-      uses te-types:label-set-info;
-      uses connectivity-matrix-entry-path-attributes;
-      list connectivity-matrix {
-        key "id";
-        description
-          "Represents a node's switching limitations, i.e.,
-           limitations in the interconnecting network TE links
-           across the node.";
-        reference
-          "RFC 7579: General Network Element Constraint Encoding
-           for GMPLS-Controlled Networks";
-        leaf id {
-          type uint32;
-          description
-            "Identifies the connectivity matrix entry.";
-        }
-      }
-      // connectivity-matrix
-    }
-    // connectivity-matrices
-  }
-  // te-node-connectivity-matrices
-
-  grouping te-node-connectivity-matrix-attributes {
-    description
-      "Termination point references of a connectivity matrix entry.";
-    container from {
-      description
-        "Reference to a source LTP.";
-      leaf tp-ref {
-        type leafref {
-          path "../../../../../../nt:termination-point/nt:tp-id";
-        }
-        description
-          "Relative reference to a termination point.";
-      }
-      uses te-types:label-set-info;
-    }
-    container to {
-      description
-        "Reference to a destination LTP.";
-      leaf tp-ref {
-        type leafref {
-          path "../../../../../../nt:termination-point/nt:tp-id";
-        }
-        description
-          "Relative reference to a termination point.";
-      }
-      uses te-types:label-set-info;
-    }
-    uses connectivity-matrix-entry-path-attributes;
-  }
-  // te-node-connectivity-matrix-attributes
-
-  grouping te-node-info-attributes {
-    description
-      "Advertised TE information attributes.";
-    leaf domain-id {
-      type uint32;
-      description
-        "Identifies the domain to which this node belongs.
-         This attribute is used to support inter-domain links.";
-      reference
-        "RFC 5152: A Per-Domain Path Computation Method for
-         Establishing Inter-Domain Traffic Engineering (TE)
-         Label Switched Paths (LSPs)
-         RFC 5316: ISIS Extensions in Support of Inter-Autonomous
-         System (AS) MPLS and GMPLS Traffic Engineering
-         RFC 5392: OSPF Extensions in Support of Inter-Autonomous
-         System (AS) MPLS and GMPLS Traffic Engineering";
-    }
-    leaf is-abstract {
-      type empty;
-      description
-        "Present if the node is abstract; not present if the node
-         is actual.";
-    }
-    leaf name {
-      type string;
-      description
-        "Node name.";
-    }
-    leaf-list signaling-address {
-      type inet:ip-address;
-      description
-        "The node's signaling address.";
-    }
-    container underlay-topology {
-      if-feature "te-topology-hierarchy";
-      description
-        "When an abstract node encapsulates a topology, the
-         attributes in this container point to said topology.";
-      uses nw:network-ref;
-    }
-  }
-  // te-node-info-attributes
-
-  grouping te-node-state-derived {
-    description
-      "Node state attributes in a TE topology.";
-    leaf oper-status {
-      type te-types:te-oper-status;
-      config false;
-      description
-        "The current operational state of the node.";
-    }
-    uses geolocation-container;
-    leaf is-multi-access-dr {
-      type empty;
-      config false;
-      description
-        "The presence of this attribute indicates that this TE node
-         is a pseudonode elected as a designated router.";
-      reference
-        "RFC 1195: Use of OSI IS-IS for Routing in TCP/IP and Dual
-         Environments
-         RFC 3630: Traffic Engineering (TE) Extensions to OSPF
-         Version 2";
-    }
-    uses information-source-per-node-attributes;
-    list information-source-entry {
-      key "information-source information-source-instance";
-      config false;
-      description
-        "A list of information sources learned, including the source
-         that is used.";
-      uses information-source-per-node-attributes;
-      uses te-node-connectivity-matrices;
-      uses te-node-info-attributes;
-    }
-  }
-  // te-node-state-derived
-
-  grouping te-node-tunnel-termination-point-config {
-    description
-      "Termination capability of a TTP on a TE node.";
-    uses te-node-tunnel-termination-point-config-attributes;
-    container local-link-connectivities {
-      description
-        "Contains an LLCL for a TTP on a TE node.";
-      leaf number-of-entries {
-        type uint16;
-        description
-          "The number of LLCL entries.
-           If this number is specified in the configuration request,
-           the number is the requested number of entries, which may
-           not all be listed in the list;
-           if this number is reported in the state data,
-           the number is the current number of operational entries.";
-      }
-      uses te-types:label-set-info;
-      uses connectivity-matrix-entry-path-attributes;
-    }
-  }
-  // te-node-tunnel-termination-point-config
-
-  grouping te-node-tunnel-termination-point-config-attributes {
-    description
-      "Configuration attributes of a TTP on a TE node.";
-    leaf admin-status {
-      type te-types:te-admin-status;
-      description
-        "The administrative state of the TTP.";
-    }
-    leaf name {
-      type string;
-      description
-        "A descriptive name for the TTP.";
-    }
-    leaf switching-capability {
-      type identityref {
-        base te-types:switching-capabilities;
-      }
-      description
-        "Switching capability for this interface.";
-    }
-    leaf encoding {
-      type identityref {
-        base te-types:lsp-encoding-types;
-      }
-      description
-        "Encoding supported by this interface.";
-    }
-    leaf-list inter-layer-lock-id {
-      type uint32;
-      description
-        "Inter-layer lock ID, used for path computation in a TE
-         topology covering multiple layers or multiple regions.";
-      reference
-        "RFC 5212: Requirements for GMPLS-Based Multi-Region and
-         Multi-Layer Networks (MRN/MLN)
-         RFC 6001: Generalized MPLS (GMPLS) Protocol Extensions
-         for Multi-Layer and Multi-Region Networks (MLN/MRN)";
-    }
-    leaf protection-type {
-      type identityref {
-        base te-types:lsp-protection-type;
-      }
-      description
-        "The protection type that this TTP is capable of.";
-    }
-    container client-layer-adaptation {
-      description
-        "Contains capability information to support a client-layer
-         adaptation in a multi-layer topology.";
-      list switching-capability {
-        key "switching-capability encoding";
-        description
-          "List of supported switching capabilities.";
-        reference
-          "RFC 4202: Routing Extensions in Support of
-           Generalized Multi-Protocol Label Switching (GMPLS)
-           RFC 6001: Generalized MPLS (GMPLS) Protocol Extensions
-           for Multi-Layer and Multi-Region Networks (MLN/MRN)";
-        leaf switching-capability {
-          type identityref {
-            base te-types:switching-capabilities;
-          }
-          description
-            "Switching capability for the client-layer adaptation.";
-        }
-        leaf encoding {
-          type identityref {
-            base te-types:lsp-encoding-types;
-          }
-          description
-            "Encoding supported by the client-layer adaptation.";
-        }
-        uses te-types:te-bandwidth;
-      }
-    }
-  }
-  // te-node-tunnel-termination-point-config-attributes
-
-  grouping te-node-tunnel-termination-point-llc-list {
-    description
-      "LLCL of a TTP on a TE node.";
-    list local-link-connectivity {
-      key "link-tp-ref";
-      description
-        "The termination capabilities between the TTP and the LTP.
-         This capability information can be used to compute
-         the tunnel path.
-         The Interface Adjustment Capability Descriptors (IACDs)
-         (defined in RFC 6001) on each LTP can be derived from
-         this list.";
-      reference
-        "RFC 6001: Generalized MPLS (GMPLS) Protocol Extensions
-         for Multi-Layer and Multi-Region Networks (MLN/MRN)";
-      leaf link-tp-ref {
-        type leafref {
-          path "../../../../../nt:termination-point/nt:tp-id";
-        }
-        description
-          "LTP.";
-      }
-      uses te-types:label-set-info;
-      uses connectivity-matrix-entry-path-attributes;
-    }
-  }
-  // te-node-tunnel-termination-point-llc-list
-
-  grouping te-path-element {
-    description
-      "A group of attributes defining an element in a TE path,
-       such as a TE node, TE link, TE atomic resource, or label.";
-    uses te-types:explicit-route-hop;
-  }
-  // te-path-element
-
-  grouping te-termination-point-augment {
-    description
-      "Augmentation for a TE termination point.";
-    leaf te-tp-id {
-      type te-types:te-tp-id;
-      description
-        "An identifier that uniquely identifies a TE termination
-         point.";
-    }
-    container te {
-      must '../te-tp-id';
-      presence "TE support";
-      description
-        "Indicates TE support.";
-      uses te-termination-point-config;
-      leaf oper-status {
-        type te-types:te-oper-status;
-        config false;
-        description
-          "The current operational state of the LTP.";
-      }
-      uses geolocation-container;
-    }
-  }
-  // te-termination-point-augment
-
-  grouping te-termination-point-config {
-    description
-      "TE termination point configuration grouping.";
-    leaf admin-status {
-      type te-types:te-admin-status;
-      description
-        "The administrative state of the LTP.";
-    }
-    leaf name {
-      type string;
-      description
-        "A descriptive name for the LTP.";
-    }
-    uses interface-switching-capability-list;
-    leaf inter-domain-plug-id {
-      type binary;
-      description
-        "A network-wide unique number that identifies on the
-         network a connection that supports a given inter-domain
-         TE link.  This is a more flexible alternative to specifying
-         'remote-te-node-id' and 'remote-te-link-tp-id' on a TE link
-         when the provider either does not know 'remote-te-node-id'
-         and 'remote-te-link-tp-id' or needs to give the client the
-         flexibility to mix and match multiple topologies.";
-    }
-    leaf-list inter-layer-lock-id {
-      type uint32;
-      description
-        "Inter-layer lock ID, used for path computation in a TE
-         topology covering multiple layers or multiple regions.";
-      reference
-        "RFC 5212: Requirements for GMPLS-Based Multi-Region and
-         Multi-Layer Networks (MRN/MLN)
-         RFC 6001: Generalized MPLS (GMPLS) Protocol Extensions
-         for Multi-Layer and Multi-Region Networks (MLN/MRN)";
-    }
-  }
-  // te-termination-point-config
-
-  grouping te-topologies-augment {
-    description
-      "Augmentation for TE topologies.";
-    container te {
-      presence "TE support";
-      description
-        "Indicates TE support.";
-      container templates {
-        description
-          "Configuration parameters for templates used for a TE
-           topology.";
-        list node-template {
-          if-feature "template";
-          key "name";
-          leaf name {
-            type te-types:te-template-name;
-            description
-              "The name to identify a TE node template.";
-          }
-          description
-            "The list of TE node templates used to define sharable
-             and reusable TE node attributes.";
-          uses template-attributes;
-          uses te-node-config-attributes-template;
-        }
-        // node-template
-        list link-template {
-          if-feature "template";
-          key "name";
-          leaf name {
-            type te-types:te-template-name;
-            description
-              "The name to identify a TE link template.";
-          }
-          description
-            "The list of TE link templates used to define sharable
-             and reusable TE link attributes.";
-          uses template-attributes;
-          uses te-link-config-attributes;
-        }
-        // link-template
-      }
-      // templates
-    }
-    // te
-  }
-  // te-topologies-augment
-
-  grouping te-topology-augment {
-    description
-      "Augmentation for a TE topology.";
-    uses te-types:te-topology-identifier;
-    container te {
-      must '../te-topology-identifier/provider-id'
-         + ' and ../te-topology-identifier/client-id'
-         + ' and ../te-topology-identifier/topology-id';
-      presence "TE support";
-      description
-        "Indicates TE support.";
-      uses te-topology-config;
-      uses geolocation-container;
-    }
-  }
-  // te-topology-augment
-
-  grouping te-topology-config {
-    description
-      "TE topology configuration grouping.";
-    leaf name {
-      type string;
-      description
-        "Name of the TE topology.  This attribute is optional and can
-         be specified by the operator to describe the TE topology,
-         which can be useful when 'network-id' (RFC 8345) is not
-         descriptive and not modifiable because of being generated
-         by the system.";
-      reference
-        "RFC 8345: A YANG Data Model for Network Topologies";
-    }
-    leaf preference {
-      type uint8 {
-        range "1..255";
-      }
-      description
-        "Specifies a preference for this topology.  A lower number
-         indicates a higher preference.";
-    }
-    leaf optimization-criterion {
-      type identityref {
-        base te-types:objective-function-type;
-      }
-      description
-        "Optimization criterion applied to this topology.";
-      reference
-        "RFC 3272: Overview and Principles of Internet Traffic
-         Engineering";
-    }
-    list nsrlg {
-      if-feature "nsrlg";
-      key "id";
-      description
-        "List of NSRLGs (Non-Shared Risk Link Groups).";
-      reference
-        "RFC 4872: RSVP-TE Extensions in Support of End-to-End
-         Generalized Multi-Protocol Label Switching (GMPLS)
-         Recovery";
-      leaf id {
-        type uint32;
-        description
-          "Identifies the NSRLG entry.";
-      }
-      leaf disjointness {
-        type te-types:te-path-disjointness;
-        description
-          "The type of resource disjointness.";
-      }
-    }
-    // nsrlg
-  }
-  // te-topology-config
-
-  grouping template-attributes {
-    description
-      "Common attributes for all templates.";
-    leaf priority {
-      type uint16;
-      description
-        "The preference value for resolving conflicts between
-         different templates.  When two or more templates specify
-         values for one configuration attribute, the value from the
-         template with the highest priority is used.
-         A lower number indicates a higher priority.  The highest
-         priority is 0.";
-    }
-    leaf reference-change-policy {
-      type enumeration {
-        enum no-action {
-          description
-            "When an attribute changes in this template, the
-             configuration node referring to this template does
-             not take any action.";
-        }
-        enum not-allowed {
-          description
-            "When any configuration object has a reference to this
-             template, changing this template is not allowed.";
-        }
-        enum cascade {
-          description
-            "When an attribute changes in this template, the
-             configuration object referring to this template applies
-             the new attribute value to the corresponding
-             configuration.";
-        }
-      }
-      description
-        "This attribute specifies the action taken for a
-         configuration node that has a reference to this template.";
-    }
-  }
-  // template-attributes
-
-  /*
-   * Data nodes
-   */
-
-  augment "/nw:networks/nw:network/nw:network-types" {
-    description
-      "Introduces a new network type for a TE topology.";
-    container te-topology {
-      presence "Indicates a TE topology";
-      description
-        "Its presence identifies the TE topology type.";
-    }
-  }
-
-  augment "/nw:networks" {
-    description
-      "Augmentation parameters for TE topologies.";
-    uses te-topologies-augment;
-  }
-
-  augment "/nw:networks/nw:network" {
-    when 'nw:network-types/tet:te-topology' {
-      description
-        "Augmentation parameters apply only for networks with a
-         TE topology type.";
-    }
-    description
-      "Configuration parameters for a TE topology.";
-    uses te-topology-augment;
-  }
-
-  augment "/nw:networks/nw:network/nw:node" {
-    when '../nw:network-types/tet:te-topology' {
-      description
-        "Augmentation parameters apply only for networks with a
-         TE topology type.";
-    }
-    description
-      "Configuration parameters for TE at the node level.";
-    leaf te-node-id {
-      type te-types:te-node-id;
-      description
-        "The identifier of a node in the TE topology.
-         A node is specific to a topology to which it belongs.";
-    }
-    container te {
-      must '../te-node-id' {
-        description
-          "'te-node-id' is mandatory.";
-      }
-      must 'count(../nw:supporting-node)<=1' {
-        description
-          "For a node in a TE topology, there cannot be more
-           than one supporting node.  If multiple nodes are
-           abstracted, the 'underlay-topology' field is used.";
-      }
-      presence "TE support";
-      description
-        "Indicates TE support.";
-      uses te-node-augment;
-    }
-  }
-
-  augment "/nw:networks/nw:network/nt:link" {
-    when '../nw:network-types/tet:te-topology' {
-      description
-        "Augmentation parameters apply only for networks with a
-         TE topology type.";
-    }
-    description
-      "Configuration parameters for TE at the link level.";
-    container te {
-      must 'count(../nt:supporting-link)<=1' {
-        description
-          "For a link in a TE topology, there cannot be more
-           than one supporting link.  If one or more link paths are
-           abstracted, the underlay is used.";
-      }
-      presence "TE support";
-      description
-        "Indicates TE support.";
-      uses te-link-augment;
-    }
-  }
-
-  augment "/nw:networks/nw:network/nw:node/"
-        + "nt:termination-point" {
-    when '../../nw:network-types/tet:te-topology' {
-      description
-        "Augmentation parameters apply only for networks with a
-         TE topology type.";
-    }
-    description
-      "Configuration parameters for TE at the termination point
-       level.";
-    uses te-termination-point-augment;
-  }
-
-  augment "/nw:networks/nw:network/nt:link/te/bundle-stack-level/"
-        + "bundle/bundled-links/bundled-link" {
-    when '../../../../nw:network-types/tet:te-topology' {
-      description
-        "Augmentation parameters apply only for networks with a
-         TE topology type.";
-    }
-    description
-      "Augmentation for a TE bundled link.";
-    leaf src-tp-ref {
-      type leafref {
-        path "../../../../../nw:node[nw:node-id = "
-           + "current()/../../../../nt:source/"
-           + "nt:source-node]/"
-           + "nt:termination-point/nt:tp-id";
-        require-instance true;
-      }
-      description
-        "Reference to another TE termination point on the
-         same source node.";
-    }
-    leaf des-tp-ref {
-      type leafref {
-        path "../../../../../nw:node[nw:node-id = "
-           + "current()/../../../../nt:destination/"
-           + "nt:dest-node]/"
-           + "nt:termination-point/nt:tp-id";
-        require-instance true;
-      }
-      description
-        "Reference to another TE termination point on the
-         same destination node.";
-    }
-  }
-
-  augment "/nw:networks/nw:network/nw:node/te/"
-        + "information-source-entry/connectivity-matrices/"
-        + "connectivity-matrix" {
-    when '../../../../../nw:network-types/tet:te-topology' {
-      description
-        "Augmentation parameters apply only for networks with a
-         TE topology type.";
-    }
-    description
-      "Augmentation for the TE node connectivity matrix.";
-    uses te-node-connectivity-matrix-attributes;
-  }
-
-  augment "/nw:networks/nw:network/nw:node/te/te-node-attributes/"
-        + "connectivity-matrices/connectivity-matrix" {
-    when '../../../../../nw:network-types/tet:te-topology' {
-      description
-        "Augmentation parameters apply only for networks with a
-         TE topology type.";
-    }
-    description
-      "Augmentation for the TE node connectivity matrix.";
-    uses te-node-connectivity-matrix-attributes;
-  }
-
-  augment "/nw:networks/nw:network/nw:node/te/"
-        + "tunnel-termination-point/local-link-connectivities" {
-    when '../../../../nw:network-types/tet:te-topology' {
-      description
-        "Augmentation parameters apply only for networks with a
-         TE topology type.";
-    }
-    description
-      "Augmentation for TE node TTP LLCs (Local Link
-       Connectivities).";
-    uses te-node-tunnel-termination-point-llc-list;
-  }
-}
diff --git a/src/nbi/service/rest_server/nbi_plugins/ietf_network_new/yang/ietf-te-types@2020-06-10.yang b/src/nbi/service/rest_server/nbi_plugins/ietf_network_new/yang/ietf-te-types@2020-06-10.yang
deleted file mode 100644
index 6fc0544dede2128f3e91f8cf5a39caa8cc49ab6e..0000000000000000000000000000000000000000
--- a/src/nbi/service/rest_server/nbi_plugins/ietf_network_new/yang/ietf-te-types@2020-06-10.yang
+++ /dev/null
@@ -1,3379 +0,0 @@
-module ietf-te-types {
-  yang-version 1.1;
-  namespace "urn:ietf:params:xml:ns:yang:ietf-te-types";
-  prefix te-types;
-
-  import ietf-inet-types {
-    prefix inet;
-    reference
-      "RFC 6991: Common YANG Data Types";
-  }
-  import ietf-yang-types {
-    prefix yang;
-    reference
-      "RFC 6991: Common YANG Data Types";
-  }
-  import ietf-routing-types {
-    prefix rt-types;
-    reference
-      "RFC 8294: Common YANG Data Types for the Routing Area";
-  }
-
-  organization
-    "IETF Traffic Engineering Architecture and Signaling (TEAS)
-     Working Group";
-  contact
-    "WG Web:   <https://datatracker.ietf.org/wg/teas/>
-     WG List:  <mailto:teas@ietf.org>
-
-     Editor:   Tarek Saad
-               <mailto:tsaad@juniper.net>
-
-     Editor:   Rakesh Gandhi
-               <mailto:rgandhi@cisco.com>
-
-     Editor:   Vishnu Pavan Beeram
-               <mailto:vbeeram@juniper.net>
-
-     Editor:   Xufeng Liu
-               <mailto:xufeng.liu.ietf@gmail.com>
-
-     Editor:   Igor Bryskin
-               <mailto:i_bryskin@yahoo.com>";
-  description
-    "This YANG module contains a collection of generally useful
-     YANG data type definitions specific to TE.  The model fully
-     conforms to the Network Management Datastore Architecture
-     (NMDA).
-
-     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.
-
-     Copyright (c) 2020 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 Simplified 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 8776; see the
-     RFC itself for full legal notices.";
-
-  revision 2020-06-10 {
-    description
-      "Latest revision of TE types.";
-    reference
-      "RFC 8776: Common YANG Data Types for Traffic Engineering";
-  }
-
-  /**
-   * Typedefs
-   */
-
-  typedef admin-group {
-    type yang:hex-string {
-      /* 01:02:03:04 */
-      length "1..11";
-    }
-    description
-      "Administrative group / resource class / color representation
-       in 'hex-string' type.
-       The most significant byte in the hex-string is the farthest
-       to the left in the byte sequence.  Leading zero bytes in the
-       configured value may be omitted for brevity.";
-    reference
-      "RFC 3630: Traffic Engineering (TE) Extensions to OSPF
-       Version 2
-       RFC 5305: IS-IS Extensions for Traffic Engineering
-       RFC 7308: Extended Administrative Groups in MPLS Traffic
-       Engineering (MPLS-TE)";
-  }
-
-  typedef admin-groups {
-    type union {
-      type admin-group;
-      type extended-admin-group;
-    }
-    description
-      "Derived types for TE administrative groups.";
-  }
-
-  typedef extended-admin-group {
-    type yang:hex-string;
-    description
-      "Extended administrative group / resource class / color
-       representation in 'hex-string' type.
-       The most significant byte in the hex-string is the farthest
-       to the left in the byte sequence.  Leading zero bytes in the
-       configured value may be omitted for brevity.";
-    reference
-      "RFC 7308: Extended Administrative Groups in MPLS Traffic
-       Engineering (MPLS-TE)";
-  }
-
-  typedef path-attribute-flags {
-    type union {
-      type identityref {
-        base session-attributes-flags;
-      }
-      type identityref {
-        base lsp-attributes-flags;
-      }
-    }
-    description
-      "Path attributes flags type.";
-  }
-
-  typedef performance-metrics-normality {
-    type enumeration {
-      enum unknown {
-        value 0;
-        description
-          "Unknown.";
-      }
-      enum normal {
-        value 1;
-        description
-          "Normal.  Indicates that the anomalous bit is not set.";
-      }
-      enum abnormal {
-        value 2;
-        description
-          "Abnormal.  Indicates that the anomalous bit is set.";
-      }
-    }
-    description
-      "Indicates whether a performance metric is normal (anomalous
-       bit not set), abnormal (anomalous bit set), or unknown.";
-    reference
-      "RFC 7471: OSPF Traffic Engineering (TE) Metric Extensions
-       RFC 7823: Performance-Based Path Selection for Explicitly
-       Routed Label Switched Paths (LSPs) Using TE Metric
-       Extensions
-       RFC 8570: IS-IS Traffic Engineering (TE) Metric Extensions";
-  }
-
-  typedef srlg {
-    type uint32;
-    description
-      "SRLG type.";
-    reference
-      "RFC 4203: OSPF Extensions in Support of Generalized
-       Multi-Protocol Label Switching (GMPLS)
-       RFC 5307: IS-IS Extensions in Support of Generalized
-       Multi-Protocol Label Switching (GMPLS)";
-  }
-
-  typedef te-common-status {
-    type enumeration {
-      enum up {
-        description
-          "Enabled.";
-      }
-      enum down {
-        description
-          "Disabled.";
-      }
-      enum testing {
-        description
-          "In some test mode.";
-      }
-      enum preparing-maintenance {
-        description
-          "The resource is disabled in the control plane to prepare
-           for a graceful shutdown for maintenance purposes.";
-        reference
-          "RFC 5817: Graceful Shutdown in MPLS and Generalized MPLS
-           Traffic Engineering Networks";
-      }
-      enum maintenance {
-        description
-          "The resource is disabled in the data plane for maintenance
-           purposes.";
-      }
-      enum unknown {
-        description
-          "Status is unknown.";
-      }
-    }
-    description
-      "Defines a type representing the common states of a TE
-       resource.";
-  }
-
-  typedef te-bandwidth {
-    type string {
-      pattern '0[xX](0((\.0?)?[pP](\+)?0?|(\.0?))|'
-            + '1(\.([\da-fA-F]{0,5}[02468aAcCeE]?)?)?'
-            + '[pP](\+)?(12[0-7]|'
-            + '1[01]\d|0?\d?\d)?)|0[xX][\da-fA-F]{1,8}|\d+'
-            + '(,(0[xX](0((\.0?)?[pP](\+)?0?|(\.0?))|'
-            + '1(\.([\da-fA-F]{0,5}[02468aAcCeE]?)?)?'
-            + '[pP](\+)?(12[0-7]|'
-            + '1[01]\d|0?\d?\d)?)|0[xX][\da-fA-F]{1,8}|\d+))*';
-    }
-    description
-      "This is the generic bandwidth type.  It is a string containing
-       a list of numbers separated by commas, where each of these
-       numbers can be non-negative decimal, hex integer, or
-       hex float:
-
-       (dec | hex | float)[*(','(dec | hex | float))]
-
-       For the packet-switching type, the string encoding follows
-       the type 'bandwidth-ieee-float32' as defined in RFC 8294
-       (e.g., 0x1p10), where the units are in bytes per second.
-
-       For the Optical Transport Network (OTN) switching type,
-       a list of integers can be used, such as '0,2,3,1', indicating
-       two ODU0s and one ODU3.  ('ODU' stands for 'Optical Data
-       Unit'.)  For Dense Wavelength Division Multiplexing (DWDM),
-       a list of pairs of slot numbers and widths can be used,
-       such as '0,2,3,3', indicating a frequency slot 0 with
-       slot width 2 and a frequency slot 3 with slot width 3.
-       Canonically, the string is represented as all lowercase and in
-       hex, where the prefix '0x' precedes the hex number.";
-    reference
-      "RFC 8294: Common YANG Data Types for the Routing Area
-       ITU-T Recommendation G.709: Interfaces for the
-       optical transport network";
-  }
-
-  typedef te-ds-class {
-    type uint8 {
-      range "0..7";
-    }
-    description
-      "The Differentiated Services Class-Type of traffic.";
-    reference
-      "RFC 4124: Protocol Extensions for Support of Diffserv-aware
-       MPLS Traffic Engineering, Section 4.3.1";
-  }
-
-  typedef te-global-id {
-    type uint32;
-    description
-      "An identifier to uniquely identify an operator, which can be
-       either a provider or a client.
-       The definition of this type is taken from RFCs 6370 and 5003.
-       This attribute type is used solely to provide a globally
-       unique context for TE topologies.";
-    reference
-      "RFC 5003: Attachment Individual Identifier (AII) Types for
-       Aggregation
-       RFC 6370: MPLS Transport Profile (MPLS-TP) Identifiers";
-  }
-
-  typedef te-hop-type {
-    type enumeration {
-      enum loose {
-        description
-          "A loose hop in an explicit path.";
-      }
-      enum strict {
-        description
-          "A strict hop in an explicit path.";
-      }
-    }
-    description
-      "Enumerated type for specifying loose or strict paths.";
-    reference
-      "RFC 3209: RSVP-TE: Extensions to RSVP for LSP Tunnels,
-       Section 4.3.3";
-  }
-
-  typedef te-link-access-type {
-    type enumeration {
-      enum point-to-point {
-        description
-          "The link is point-to-point.";
-      }
-      enum multi-access {
-        description
-          "The link is multi-access, including broadcast and NBMA.";
-      }
-    }
-    description
-      "Defines a type representing the access type of a TE link.";
-    reference
-      "RFC 3630: Traffic Engineering (TE) Extensions to OSPF
-       Version 2";
-  }
-
-  typedef te-label-direction {
-    type enumeration {
-      enum forward {
-        description
-          "Label allocated for the forward LSP direction.";
-      }
-      enum reverse {
-        description
-          "Label allocated for the reverse LSP direction.";
-      }
-    }
-    description
-      "Enumerated type for specifying the forward or reverse
-       label.";
-  }
-
-  typedef te-link-direction {
-    type enumeration {
-      enum incoming {
-        description
-          "The explicit route represents an incoming link on
-           a node.";
-      }
-      enum outgoing {
-        description
-          "The explicit route represents an outgoing link on
-           a node.";
-      }
-    }
-    description
-      "Enumerated type for specifying the direction of a link on
-       a node.";
-  }
-
-  typedef te-metric {
-    type uint32;
-    description
-      "TE metric.";
-    reference
-      "RFC 3785: Use of Interior Gateway Protocol (IGP) Metric as a
-       second MPLS Traffic Engineering (TE) Metric";
-  }
-
-  typedef te-node-id {
-    type yang:dotted-quad;
-    description
-      "A type representing the identifier for a node in a TE
-       topology.
-       The identifier is represented as 4 octets in dotted-quad
-       notation.
-       This attribute MAY be mapped to the Router Address TLV
-       described in Section 2.4.1 of RFC 3630, the TE Router ID
-       described in Section 3 of RFC 6827, the Traffic Engineering
-       Router ID TLV described in Section 4.3 of RFC 5305, or the
-       TE Router ID TLV described in Section 3.2.1 of RFC 6119.
-       The reachability of such a TE node MAY be achieved by a
-       mechanism such as that described in Section 6.2 of RFC 6827.";
-    reference
-      "RFC 3630: Traffic Engineering (TE) Extensions to OSPF
-       Version 2, Section 2.4.1
-       RFC 5305: IS-IS Extensions for Traffic Engineering,
-       Section 4.3
-       RFC 6119: IPv6 Traffic Engineering in IS-IS, Section 3.2.1
-       RFC 6827: Automatically Switched Optical Network (ASON)
-       Routing for OSPFv2 Protocols, Section 3";
-  }
-
-  typedef te-oper-status {
-    type te-common-status;
-    description
-      "Defines a type representing the operational status of
-       a TE resource.";
-  }
-
-  typedef te-admin-status {
-    type te-common-status;
-    description
-      "Defines a type representing the administrative status of
-       a TE resource.";
-  }
-
-  typedef te-path-disjointness {
-    type bits {
-      bit node {
-        position 0;
-        description
-          "Node disjoint.";
-      }
-      bit link {
-        position 1;
-        description
-          "Link disjoint.";
-      }
-      bit srlg {
-        position 2;
-        description
-          "SRLG (Shared Risk Link Group) disjoint.";
-      }
-    }
-    description
-      "Type of the resource disjointness for a TE tunnel path.";
-    reference
-      "RFC 4872: RSVP-TE Extensions in Support of End-to-End
-       Generalized Multi-Protocol Label Switching (GMPLS) Recovery";
-  }
-
-  typedef te-recovery-status {
-    type enumeration {
-      enum normal {
-        description
-          "Both the recovery span and the working span are fully
-           allocated and active, data traffic is being
-           transported over (or selected from) the working
-           span, and no trigger events are reported.";
-      }
-      enum recovery-started {
-        description
-          "The recovery action has been started but not completed.";
-      }
-      enum recovery-succeeded {
-        description
-          "The recovery action has succeeded.  The working span has
-           reported a failure/degrade condition, and the user traffic
-           is being transported (or selected) on the recovery span.";
-      }
-      enum recovery-failed {
-        description
-          "The recovery action has failed.";
-      }
-      enum reversion-started {
-        description
-          "The reversion has started.";
-      }
-      enum reversion-succeeded {
-        description
-          "The reversion action has succeeded.";
-      }
-      enum reversion-failed {
-        description
-          "The reversion has failed.";
-      }
-      enum recovery-unavailable {
-        description
-          "The recovery is unavailable, as a result of either an
-           operator's lockout command or a failure condition
-           detected on the recovery span.";
-      }
-      enum recovery-admin {
-        description
-          "The operator has issued a command to switch the user
-           traffic to the recovery span.";
-      }
-      enum wait-to-restore {
-        description
-          "The recovery domain is recovering from a failure/degrade
-           condition on the working span that is being controlled by
-           the Wait-to-Restore (WTR) timer.";
-      }
-    }
-    description
-      "Defines the status of a recovery action.";
-    reference
-      "RFC 4427: Recovery (Protection and Restoration) Terminology
-       for Generalized Multi-Protocol Label Switching (GMPLS)
-       RFC 6378: MPLS Transport Profile (MPLS-TP) Linear Protection";
-  }
-
-  typedef te-template-name {
-    type string {
-      pattern '/?([a-zA-Z0-9\-_.]+)(/[a-zA-Z0-9\-_.]+)*';
-    }
-    description
-      "A type for the name of a TE node template or TE link
-       template.";
-  }
-
-  typedef te-topology-event-type {
-    type enumeration {
-      enum add {
-        value 0;
-        description
-          "A TE node or TE link has been added.";
-      }
-      enum remove {
-        value 1;
-        description
-          "A TE node or TE link has been removed.";
-      }
-      enum update {
-        value 2;
-        description
-          "A TE node or TE link has been updated.";
-      }
-    }
-    description
-      "TE event type for notifications.";
-  }
-
-  typedef te-topology-id {
-    type union {
-      type string {
-        length "0";
-        // empty string
-      }
-      type string {
-        pattern '([a-zA-Z0-9\-_.]+:)*'
-              + '/?([a-zA-Z0-9\-_.]+)(/[a-zA-Z0-9\-_.]+)*';
-      }
-    }
-    description
-      "An identifier for a topology.
-       It is optional to have one or more prefixes at the beginning,
-       separated by colons.  The prefixes can be 'network-types' as
-       defined in the 'ietf-network' module in RFC 8345, to help the
-       user better understand the topology before further inquiry
-       is made.";
-    reference
-      "RFC 8345: A YANG Data Model for Network Topologies";
-  }
-
-  typedef te-tp-id {
-    type union {
-      type uint32;
-      // Unnumbered
-      type inet:ip-address;
-      // IPv4 or IPv6 address
-    }
-    description
-      "An identifier for a TE link endpoint on a node.
-       This attribute is mapped to a local or remote link identifier
-       as defined in RFCs 3630 and 5305.";
-    reference
-      "RFC 3630: Traffic Engineering (TE) Extensions to OSPF
-       Version 2
-       RFC 5305: IS-IS Extensions for Traffic Engineering";
-  }
-
-  /* TE features */
-
-  feature p2mp-te {
-    description
-      "Indicates support for Point-to-Multipoint TE (P2MP-TE).";
-    reference
-      "RFC 4875: Extensions to Resource Reservation Protocol -
-       Traffic Engineering (RSVP-TE) for Point-to-Multipoint TE
-       Label Switched Paths (LSPs)";
-  }
-
-  feature frr-te {
-    description
-      "Indicates support for TE Fast Reroute (FRR).";
-    reference
-      "RFC 4090: Fast Reroute Extensions to RSVP-TE for LSP Tunnels";
-  }
-
-  feature extended-admin-groups {
-    description
-      "Indicates support for TE link extended administrative
-       groups.";
-    reference
-      "RFC 7308: Extended Administrative Groups in MPLS Traffic
-       Engineering (MPLS-TE)";
-  }
-
-  feature named-path-affinities {
-    description
-      "Indicates support for named path affinities.";
-  }
-
-  feature named-extended-admin-groups {
-    description
-      "Indicates support for named extended administrative groups.";
-  }
-
-  feature named-srlg-groups {
-    description
-      "Indicates support for named SRLG groups.";
-  }
-
-  feature named-path-constraints {
-    description
-      "Indicates support for named path constraints.";
-  }
-
-  feature path-optimization-metric {
-    description
-      "Indicates support for path optimization metrics.";
-  }
-
-  feature path-optimization-objective-function {
-    description
-      "Indicates support for path optimization objective functions.";
-  }
-
-  /*
-   * Identities
-   */
-
-  identity session-attributes-flags {
-    description
-      "Base identity for the RSVP-TE session attributes flags.";
-  }
-
-  identity local-protection-desired {
-    base session-attributes-flags;
-    description
-      "Local protection is desired.";
-    reference
-      "RFC 3209: RSVP-TE: Extensions to RSVP for LSP Tunnels,
-       Section 4.7.1";
-  }
-
-  identity se-style-desired {
-    base session-attributes-flags;
-    description
-      "Shared explicit style, to allow the LSP to be established
-       and share resources with the old LSP.";
-    reference
-      "RFC 3209: RSVP-TE: Extensions to RSVP for LSP Tunnels";
-  }
-
-  identity local-recording-desired {
-    base session-attributes-flags;
-    description
-      "Label recording is desired.";
-    reference
-      "RFC 3209: RSVP-TE: Extensions to RSVP for LSP Tunnels,
-       Section 4.7.1";
-  }
-
-  identity bandwidth-protection-desired {
-    base session-attributes-flags;
-    description
-      "Requests FRR bandwidth protection on LSRs, if present.";
-    reference
-      "RFC 4090: Fast Reroute Extensions to RSVP-TE for LSP Tunnels";
-  }
-
-  identity node-protection-desired {
-    base session-attributes-flags;
-    description
-      "Requests FRR node protection on LSRs, if present.";
-    reference
-      "RFC 4090: Fast Reroute Extensions to RSVP-TE for LSP Tunnels";
-  }
-
-  identity path-reevaluation-request {
-    base session-attributes-flags;
-    description
-      "This flag indicates that a path re-evaluation (of the
-       current path in use) is requested.  Note that this does
-       not trigger any LSP reroutes but instead just signals a
-       request to evaluate whether a preferable path exists.";
-    reference
-      "RFC 4736: Reoptimization of Multiprotocol Label Switching
-       (MPLS) Traffic Engineering (TE) Loosely Routed Label Switched
-       Path (LSP)";
-  }
-
-  identity soft-preemption-desired {
-    base session-attributes-flags;
-    description
-      "Soft preemption of LSP resources is desired.";
-    reference
-      "RFC 5712: MPLS Traffic Engineering Soft Preemption";
-  }
-
-  identity lsp-attributes-flags {
-    description
-      "Base identity for LSP attributes flags.";
-  }
-
-  identity end-to-end-rerouting-desired {
-    base lsp-attributes-flags;
-    description
-      "Indicates end-to-end rerouting behavior for an LSP
-       undergoing establishment.  This MAY also be used to
-       specify the behavior of end-to-end LSP recovery for
-       established LSPs.";
-    reference
-      "RFC 4920: Crankback Signaling Extensions for MPLS and GMPLS
-       RSVP-TE
-       RFC 5420: Encoding of Attributes for MPLS LSP Establishment
-       Using Resource Reservation Protocol Traffic Engineering
-       (RSVP-TE)
-       RFC 7570: Label Switched Path (LSP) Attribute in the Explicit
-       Route Object (ERO)";
-  }
-
-  identity boundary-rerouting-desired {
-    base lsp-attributes-flags;
-    description
-      "Indicates boundary rerouting behavior for an LSP undergoing
-       establishment.  This MAY also be used to specify
-       segment-based LSP recovery through nested crankback for
-       established LSPs.  The boundary Area Border Router (ABR) /
-       Autonomous System Border Router (ASBR) can decide to forward
-       the PathErr message upstream to either an upstream boundary
-       ABR/ASBR or the ingress LSR.  Alternatively, it can try to
-       select another egress boundary LSR.";
-    reference
-      "RFC 4920: Crankback Signaling Extensions for MPLS and GMPLS
-       RSVP-TE
-       RFC 5420: Encoding of Attributes for MPLS LSP Establishment
-       Using Resource Reservation Protocol Traffic Engineering
-       (RSVP-TE)
-       RFC 7570: Label Switched Path (LSP) Attribute in the Explicit
-       Route Object (ERO)";
-  }
-
-  identity segment-based-rerouting-desired {
-    base lsp-attributes-flags;
-    description
-      "Indicates segment-based rerouting behavior for an LSP
-       undergoing establishment.  This MAY also be used to specify
-       segment-based LSP recovery for established LSPs.";
-    reference
-      "RFC 4920: Crankback Signaling Extensions for MPLS and GMPLS
-       RSVP-TE
-       RFC 5420: Encoding of Attributes for MPLS LSP Establishment
-       Using Resource Reservation Protocol Traffic Engineering
-       (RSVP-TE)
-       RFC 7570: Label Switched Path (LSP) Attribute in the Explicit
-       Route Object (ERO)";
-  }
-
-  identity lsp-integrity-required {
-    base lsp-attributes-flags;
-    description
-      "Indicates that LSP integrity is required.";
-    reference
-      "RFC 4875: Extensions to Resource Reservation Protocol -
-       Traffic Engineering (RSVP-TE) for Point-to-Multipoint TE
-       Label Switched Paths (LSPs)
-       RFC 7570: Label Switched Path (LSP) Attribute in the Explicit
-       Route Object (ERO)";
-  }
-
-  identity contiguous-lsp-desired {
-    base lsp-attributes-flags;
-    description
-      "Indicates that a contiguous LSP is desired.";
-    reference
-      "RFC 5151: Inter-Domain MPLS and GMPLS Traffic Engineering --
-       Resource Reservation Protocol-Traffic Engineering (RSVP-TE)
-       Extensions
-       RFC 7570: Label Switched Path (LSP) Attribute in the Explicit
-       Route Object (ERO)";
-  }
-
-  identity lsp-stitching-desired {
-    base lsp-attributes-flags;
-    description
-      "Indicates that LSP stitching is desired.";
-    reference
-      "RFC 5150: Label Switched Path Stitching with Generalized
-       Multiprotocol Label Switching Traffic Engineering (GMPLS TE)
-       RFC 7570: Label Switched Path (LSP) Attribute in the Explicit
-       Route Object (ERO)";
-  }
-
-  identity pre-planned-lsp-flag {
-    base lsp-attributes-flags;
-    description
-      "Indicates that the LSP MUST be provisioned in the
-       control plane only.";
-    reference
-      "RFC 6001: Generalized MPLS (GMPLS) Protocol Extensions for
-       Multi-Layer and Multi-Region Networks (MLN/MRN)
-       RFC 7570: Label Switched Path (LSP) Attribute in the Explicit
-       Route Object (ERO)";
-  }
-
-  identity non-php-behavior-flag {
-    base lsp-attributes-flags;
-    description
-      "Indicates that non-PHP (non-Penultimate Hop Popping) behavior
-       for the LSP is desired.";
-    reference
-      "RFC 6511: Non-Penultimate Hop Popping Behavior and Out-of-Band
-       Mapping for RSVP-TE Label Switched Paths
-       RFC 7570: Label Switched Path (LSP) Attribute in the Explicit
-       Route Object (ERO)";
-  }
-
-  identity oob-mapping-flag {
-    base lsp-attributes-flags;
-    description
-      "Indicates that signaling of the egress binding information is
-       out of band (e.g., via the Border Gateway Protocol (BGP)).";
-    reference
-      "RFC 6511: Non-Penultimate Hop Popping Behavior and Out-of-Band
-       Mapping for RSVP-TE Label Switched Paths
-       RFC 7570: Label Switched Path (LSP) Attribute in the Explicit
-       Route Object (ERO)";
-  }
-
-  identity entropy-label-capability {
-    base lsp-attributes-flags;
-    description
-      "Indicates entropy label capability.";
-    reference
-      "RFC 6790: The Use of Entropy Labels in MPLS Forwarding
-       RFC 7570: Label Switched Path (LSP) Attribute in the Explicit
-       Route Object (ERO)";
-  }
-
-  identity oam-mep-entity-desired {
-    base lsp-attributes-flags;
-    description
-      "OAM Maintenance Entity Group End Point (MEP) entities
-       desired.";
-    reference
-      "RFC 7260: GMPLS RSVP-TE Extensions for Operations,
-       Administration, and Maintenance (OAM) Configuration";
-  }
-
-  identity oam-mip-entity-desired {
-    base lsp-attributes-flags;
-    description
-      "OAM Maintenance Entity Group Intermediate Points (MIP)
-       entities desired.";
-    reference
-      "RFC 7260: GMPLS RSVP-TE Extensions for Operations,
-       Administration, and Maintenance (OAM) Configuration";
-  }
-
-  identity srlg-collection-desired {
-    base lsp-attributes-flags;
-    description
-      "SRLG collection desired.";
-    reference
-      "RFC 7570: Label Switched Path (LSP) Attribute in the Explicit
-       Route Object (ERO)
-       RFC 8001: RSVP-TE Extensions for Collecting Shared Risk
-       Link Group (SRLG) Information";
-  }
-
-  identity loopback-desired {
-    base lsp-attributes-flags;
-    description
-      "This flag indicates that a particular node on the LSP is
-       required to enter loopback mode.  This can also be
-       used to specify the loopback state of the node.";
-    reference
-      "RFC 7571: GMPLS RSVP-TE Extensions for Lock Instruct and
-       Loopback";
-  }
-
-  identity p2mp-te-tree-eval-request {
-    base lsp-attributes-flags;
-    description
-      "P2MP-TE tree re-evaluation request.";
-    reference
-      "RFC 8149: RSVP Extensions for Reoptimization of Loosely Routed
-       Point-to-Multipoint Traffic Engineering Label Switched Paths
-       (LSPs)";
-  }
-
-  identity rtm-set-desired {
-    base lsp-attributes-flags;
-    description
-      "Residence Time Measurement (RTM) attribute flag requested.";
-    reference
-      "RFC 8169: Residence Time Measurement in MPLS Networks";
-  }
-
-  identity link-protection-type {
-    description
-      "Base identity for the link protection type.";
-  }
-
-  identity link-protection-unprotected {
-    base link-protection-type;
-    description
-      "Unprotected link type.";
-    reference
-      "RFC 4872: RSVP-TE Extensions in Support of End-to-End
-       Generalized Multi-Protocol Label Switching (GMPLS) Recovery";
-  }
-
-  identity link-protection-extra-traffic {
-    base link-protection-type;
-    description
-      "Extra-Traffic protected link type.";
-    reference
-      "RFC 4427: Recovery (Protection and Restoration) Terminology
-       for Generalized Multi-Protocol Label Switching (GMPLS)";
-  }
-
-  identity link-protection-shared {
-    base link-protection-type;
-    description
-      "Shared protected link type.";
-    reference
-      "RFC 4872: RSVP-TE Extensions in Support of End-to-End
-       Generalized Multi-Protocol Label Switching (GMPLS) Recovery";
-  }
-
-  identity link-protection-1-for-1 {
-    base link-protection-type;
-    description
-      "One-for-one (1:1) protected link type.";
-    reference
-      "RFC 4872: RSVP-TE Extensions in Support of End-to-End
-       Generalized Multi-Protocol Label Switching (GMPLS) Recovery";
-  }
-
-  identity link-protection-1-plus-1 {
-    base link-protection-type;
-    description
-      "One-plus-one (1+1) protected link type.";
-    reference
-      "RFC 4872: RSVP-TE Extensions in Support of End-to-End
-       Generalized Multi-Protocol Label Switching (GMPLS) Recovery";
-  }
-
-  identity link-protection-enhanced {
-    base link-protection-type;
-    description
-      "A compound link protection type derived from the underlay
-       TE tunnel protection configuration supporting the TE link.";
-  }
-
-  identity association-type {
-    description
-      "Base identity for the tunnel association.";
-  }
-
-  identity association-type-recovery {
-    base association-type;
-    description
-      "Association type for recovery, used to associate LSPs of the
-       same tunnel for recovery.";
-    reference
-      "RFC 4872: RSVP-TE Extensions in Support of End-to-End
-       Generalized Multi-Protocol Label Switching (GMPLS) Recovery
-       RFC 6780: RSVP ASSOCIATION Object Extensions";
-  }
-
-  identity association-type-resource-sharing {
-    base association-type;
-    description
-      "Association type for resource sharing, used to enable
-       resource sharing during make-before-break.";
-    reference
-      "RFC 4873: GMPLS Segment Recovery
-       RFC 6780: RSVP ASSOCIATION Object Extensions";
-  }
-
-  identity association-type-double-sided-bidir {
-    base association-type;
-    description
-      "Association type for double-sided bidirectional LSPs,
-       used to associate two LSPs of two tunnels that are
-       independently configured on either endpoint.";
-    reference
-      "RFC 7551: RSVP-TE Extensions for Associated Bidirectional
-       Label Switched Paths (LSPs)";
-  }
-
-  identity association-type-single-sided-bidir {
-    base association-type;
-    description
-      "Association type for single-sided bidirectional LSPs,
-       used to associate two LSPs of two tunnels, where one
-       tunnel is configured on one side/endpoint and the other
-       tunnel is dynamically created on the other endpoint.";
-    reference
-      "RFC 6780: RSVP ASSOCIATION Object Extensions
-       RFC 7551: RSVP-TE Extensions for Associated Bidirectional
-       Label Switched Paths (LSPs)";
-  }
-
-  identity objective-function-type {
-    description
-      "Base objective function type.";
-  }
-
-  identity of-minimize-cost-path {
-    base objective-function-type;
-    description
-      "Objective function for minimizing path cost.";
-    reference
-      "RFC 5541: Encoding of Objective Functions in the Path
-       Computation Element Communication Protocol (PCEP)";
-  }
-
-  identity of-minimize-load-path {
-    base objective-function-type;
-    description
-      "Objective function for minimizing the load on one or more
-       paths.";
-    reference
-      "RFC 5541: Encoding of Objective Functions in the Path
-       Computation Element Communication Protocol (PCEP)";
-  }
-
-  identity of-maximize-residual-bandwidth {
-    base objective-function-type;
-    description
-      "Objective function for maximizing residual bandwidth.";
-    reference
-      "RFC 5541: Encoding of Objective Functions in the Path
-       Computation Element Communication Protocol (PCEP)";
-  }
-
-  identity of-minimize-agg-bandwidth-consumption {
-    base objective-function-type;
-    description
-      "Objective function for minimizing aggregate bandwidth
-       consumption.";
-    reference
-      "RFC 5541: Encoding of Objective Functions in the Path
-       Computation Element Communication Protocol (PCEP)";
-  }
-
-  identity of-minimize-load-most-loaded-link {
-    base objective-function-type;
-    description
-      "Objective function for minimizing the load on the link that
-       is carrying the highest load.";
-    reference
-      "RFC 5541: Encoding of Objective Functions in the Path
-       Computation Element Communication Protocol (PCEP)";
-  }
-
-  identity of-minimize-cost-path-set {
-    base objective-function-type;
-    description
-      "Objective function for minimizing the cost on a path set.";
-    reference
-      "RFC 5541: Encoding of Objective Functions in the Path
-       Computation Element Communication Protocol (PCEP)";
-  }
-
-  identity path-computation-method {
-    description
-      "Base identity for supported path computation mechanisms.";
-  }
-
-  identity path-locally-computed {
-    base path-computation-method;
-    description
-      "Indicates a constrained-path LSP in which the
-       path is computed by the local LER.";
-    reference
-      "RFC 3272: Overview and Principles of Internet Traffic
-       Engineering, Section 5.4";
-  }
-
-  identity path-externally-queried {
-    base path-computation-method;
-    description
-      "Constrained-path LSP in which the path is obtained by
-       querying an external source, such as a PCE server.
-       In the case that an LSP is defined to be externally queried,
-       it may also have associated explicit definitions (provided
-       to the external source to aid computation).  The path that is
-       returned by the external source may require further local
-       computation on the device.";
-    reference
-      "RFC 3272: Overview and Principles of Internet Traffic
-       Engineering
-       RFC 4657: Path Computation Element (PCE) Communication
-       Protocol Generic Requirements";
-  }
-
-  identity path-explicitly-defined {
-    base path-computation-method;
-    description
-      "Constrained-path LSP in which the path is
-       explicitly specified as a collection of strict and/or loose
-       hops.";
-    reference
-      "RFC 3209: RSVP-TE: Extensions to RSVP for LSP Tunnels
-       RFC 3272: Overview and Principles of Internet Traffic
-       Engineering";
-  }
-
-  identity lsp-metric-type {
-    description
-      "Base identity for the LSP metric specification types.";
-  }
-
-  identity lsp-metric-relative {
-    base lsp-metric-type;
-    description
-      "The metric specified for the LSPs to which this identity
-       refers is specified as a value relative to the IGP metric
-       cost to the LSP's tail end.";
-    reference
-      "RFC 4657: Path Computation Element (PCE) Communication
-       Protocol Generic Requirements";
-  }
-
-  identity lsp-metric-absolute {
-    base lsp-metric-type;
-    description
-      "The metric specified for the LSPs to which this identity
-       refers is specified as an absolute value.";
-    reference
-      "RFC 4657: Path Computation Element (PCE) Communication
-       Protocol Generic Requirements";
-  }
-
-  identity lsp-metric-inherited {
-    base lsp-metric-type;
-    description
-      "The metric for the LSPs to which this identity refers is
-       not specified explicitly; rather, it is directly inherited
-       from the IGP cost.";
-    reference
-      "RFC 4657: Path Computation Element (PCE) Communication
-       Protocol Generic Requirements";
-  }
-
-  identity te-tunnel-type {
-    description
-      "Base identity from which specific tunnel types are derived.";
-  }
-
-  identity te-tunnel-p2p {
-    base te-tunnel-type;
-    description
-      "TE Point-to-Point (P2P) tunnel type.";
-    reference
-      "RFC 3209: RSVP-TE: Extensions to RSVP for LSP Tunnels";
-  }
-
-  identity te-tunnel-p2mp {
-    base te-tunnel-type;
-    description
-      "TE P2MP tunnel type.";
-    reference
-      "RFC 4875: Extensions to Resource Reservation Protocol -
-       Traffic Engineering (RSVP-TE) for Point-to-Multipoint TE
-       Label Switched Paths (LSPs)";
-  }
-
-  identity tunnel-action-type {
-    description
-      "Base identity from which specific tunnel action types
-       are derived.";
-  }
-
-  identity tunnel-action-resetup {
-    base tunnel-action-type;
-    description
-      "TE tunnel action that tears down the tunnel's current LSP
-       (if any) and attempts to re-establish a new LSP.";
-  }
-
-  identity tunnel-action-reoptimize {
-    base tunnel-action-type;
-    description
-      "TE tunnel action that reoptimizes the placement of the
-       tunnel LSP(s).";
-  }
-
-  identity tunnel-action-switchpath {
-    base tunnel-action-type;
-    description
-      "TE tunnel action that switches the tunnel's LSP to use the
-       specified path.";
-  }
-
-  identity te-action-result {
-    description
-      "Base identity from which specific TE action results
-       are derived.";
-  }
-
-  identity te-action-success {
-    base te-action-result;
-    description
-      "TE action was successful.";
-  }
-
-  identity te-action-fail {
-    base te-action-result;
-    description
-      "TE action failed.";
-  }
-
-  identity tunnel-action-inprogress {
-    base te-action-result;
-    description
-      "TE action is in progress.";
-  }
-
-  identity tunnel-admin-state-type {
-    description
-      "Base identity for TE tunnel administrative states.";
-  }
-
-  identity tunnel-admin-state-up {
-    base tunnel-admin-state-type;
-    description
-      "Tunnel's administrative state is up.";
-  }
-
-  identity tunnel-admin-state-down {
-    base tunnel-admin-state-type;
-    description
-      "Tunnel's administrative state is down.";
-  }
-
-  identity tunnel-state-type {
-    description
-      "Base identity for TE tunnel states.";
-  }
-
-  identity tunnel-state-up {
-    base tunnel-state-type;
-    description
-      "Tunnel's state is up.";
-  }
-
-  identity tunnel-state-down {
-    base tunnel-state-type;
-    description
-      "Tunnel's state is down.";
-  }
-
-  identity lsp-state-type {
-    description
-      "Base identity for TE LSP states.";
-  }
-
-  identity lsp-path-computing {
-    base lsp-state-type;
-    description
-      "State path computation is in progress.";
-  }
-
-  identity lsp-path-computation-ok {
-    base lsp-state-type;
-    description
-      "State path computation was successful.";
-  }
-
-  identity lsp-path-computation-failed {
-    base lsp-state-type;
-    description
-      "State path computation failed.";
-  }
-
-  identity lsp-state-setting-up {
-    base lsp-state-type;
-    description
-      "State is being set up.";
-  }
-
-  identity lsp-state-setup-ok {
-    base lsp-state-type;
-    description
-      "State setup was successful.";
-  }
-
-  identity lsp-state-setup-failed {
-    base lsp-state-type;
-    description
-      "State setup failed.";
-  }
-
-  identity lsp-state-up {
-    base lsp-state-type;
-    description
-      "State is up.";
-  }
-
-  identity lsp-state-tearing-down {
-    base lsp-state-type;
-    description
-      "State is being torn down.";
-  }
-
-  identity lsp-state-down {
-    base lsp-state-type;
-    description
-      "State is down.";
-  }
-
-  identity path-invalidation-action-type {
-    description
-      "Base identity for TE path invalidation action types.";
-  }
-
-  identity path-invalidation-action-drop {
-    base path-invalidation-action-type;
-    description
-      "Upon invalidation of the TE tunnel path, the tunnel remains
-       valid, but any packet mapped over the tunnel is dropped.";
-    reference
-      "RFC 3209: RSVP-TE: Extensions to RSVP for LSP Tunnels,
-       Section 2.5";
-  }
-
-  identity path-invalidation-action-teardown {
-    base path-invalidation-action-type;
-    description
-      "TE path invalidation action teardown.";
-    reference
-      "RFC 3209: RSVP-TE: Extensions to RSVP for LSP Tunnels,
-       Section 2.5";
-  }
-
-  identity lsp-restoration-type {
-    description
-      "Base identity from which LSP restoration types are derived.";
-  }
-
-  identity lsp-restoration-restore-any {
-    base lsp-restoration-type;
-    description
-      "Any LSP affected by a failure is restored.";
-  }
-
-  identity lsp-restoration-restore-all {
-    base lsp-restoration-type;
-    description
-      "Affected LSPs are restored after all LSPs of the tunnel are
-       broken.";
-  }
-
-  identity restoration-scheme-type {
-    description
-      "Base identity for LSP restoration schemes.";
-  }
-
-  identity restoration-scheme-preconfigured {
-    base restoration-scheme-type;
-    description
-      "Restoration LSP is preconfigured prior to the failure.";
-    reference
-      "RFC 4427: Recovery (Protection and Restoration) Terminology
-       for Generalized Multi-Protocol Label Switching (GMPLS)";
-  }
-
-  identity restoration-scheme-precomputed {
-    base restoration-scheme-type;
-    description
-      "Restoration LSP is precomputed prior to the failure.";
-    reference
-      "RFC 4427: Recovery (Protection and Restoration) Terminology
-       for Generalized Multi-Protocol Label Switching (GMPLS)";
-  }
-
-  identity restoration-scheme-presignaled {
-    base restoration-scheme-type;
-    description
-      "Restoration LSP is presignaled prior to the failure.";
-    reference
-      "RFC 4427: Recovery (Protection and Restoration) Terminology
-       for Generalized Multi-Protocol Label Switching (GMPLS)";
-  }
-
-  identity lsp-protection-type {
-    description
-      "Base identity from which LSP protection types are derived.";
-    reference
-      "RFC 4872: RSVP-TE Extensions in Support of End-to-End
-       Generalized Multi-Protocol Label Switching (GMPLS) Recovery";
-  }
-
-  identity lsp-protection-unprotected {
-    base lsp-protection-type;
-    description
-      "'Unprotected' LSP protection type.";
-    reference
-      "RFC 4872: RSVP-TE Extensions in Support of End-to-End
-       Generalized Multi-Protocol Label Switching (GMPLS) Recovery";
-  }
-
-  identity lsp-protection-reroute-extra {
-    base lsp-protection-type;
-    description
-      "'(Full) Rerouting' LSP protection type.";
-    reference
-      "RFC 4872: RSVP-TE Extensions in Support of End-to-End
-       Generalized Multi-Protocol Label Switching (GMPLS) Recovery";
-  }
-
-  identity lsp-protection-reroute {
-    base lsp-protection-type;
-    description
-      "'Rerouting without Extra-Traffic' LSP protection type.";
-    reference
-      "RFC 4872: RSVP-TE Extensions in Support of End-to-End
-       Generalized Multi-Protocol Label Switching (GMPLS) Recovery";
-  }
-
-  identity lsp-protection-1-for-n {
-    base lsp-protection-type;
-    description
-      "'1:N Protection with Extra-Traffic' LSP protection type.";
-    reference
-      "RFC 4872: RSVP-TE Extensions in Support of End-to-End
-       Generalized Multi-Protocol Label Switching (GMPLS) Recovery";
-  }
-
-  identity lsp-protection-1-for-1 {
-    base lsp-protection-type;
-    description
-      "LSP protection '1:1 Protection Type'.";
-    reference
-      "RFC 4872: RSVP-TE Extensions in Support of End-to-End
-       Generalized Multi-Protocol Label Switching (GMPLS) Recovery";
-  }
-
-  identity lsp-protection-unidir-1-plus-1 {
-    base lsp-protection-type;
-    description
-      "'1+1 Unidirectional Protection' LSP protection type.";
-    reference
-      "RFC 4872: RSVP-TE Extensions in Support of End-to-End
-       Generalized Multi-Protocol Label Switching (GMPLS) Recovery";
-  }
-
-  identity lsp-protection-bidir-1-plus-1 {
-    base lsp-protection-type;
-    description
-      "'1+1 Bidirectional Protection' LSP protection type.";
-    reference
-      "RFC 4872: RSVP-TE Extensions in Support of End-to-End
-       Generalized Multi-Protocol Label Switching (GMPLS) Recovery";
-  }
-
-  identity lsp-protection-extra-traffic {
-    base lsp-protection-type;
-    description
-      "Extra-Traffic LSP protection type.";
-    reference
-      "RFC 4427: Recovery (Protection and Restoration) Terminology
-       for Generalized Multi-Protocol Label Switching (GMPLS)";
-  }
-
-  identity lsp-protection-state {
-    description
-      "Base identity of protection states for reporting purposes.";
-  }
-
-  identity normal {
-    base lsp-protection-state;
-    description
-      "Normal state.";
-  }
-
-  identity signal-fail-of-protection {
-    base lsp-protection-state;
-    description
-      "The protection transport entity has a signal fail condition
-       that is of higher priority than the forced switchover
-       command.";
-    reference
-      "RFC 4427: Recovery (Protection and Restoration) Terminology
-       for Generalized Multi-Protocol Label Switching (GMPLS)";
-  }
-
-  identity lockout-of-protection {
-    base lsp-protection-state;
-    description
-      "A Loss of Protection (LoP) command is active.";
-    reference
-      "RFC 4427: Recovery (Protection and Restoration) Terminology
-       for Generalized Multi-Protocol Label Switching (GMPLS)";
-  }
-
-  identity forced-switch {
-    base lsp-protection-state;
-    description
-      "A forced switchover command is active.";
-    reference
-      "RFC 4427: Recovery (Protection and Restoration) Terminology
-       for Generalized Multi-Protocol Label Switching (GMPLS)";
-  }
-
-  identity signal-fail {
-    base lsp-protection-state;
-    description
-      "There is a signal fail condition on either the working path
-       or the protection path.";
-    reference
-      "RFC 4427: Recovery (Protection and Restoration) Terminology
-       for Generalized Multi-Protocol Label Switching (GMPLS)";
-  }
-
-  identity signal-degrade {
-    base lsp-protection-state;
-    description
-      "There is a signal degrade condition on either the working
-       path or the protection path.";
-    reference
-      "RFC 4427: Recovery (Protection and Restoration) Terminology
-       for Generalized Multi-Protocol Label Switching (GMPLS)";
-  }
-
-  identity manual-switch {
-    base lsp-protection-state;
-    description
-      "A manual switchover command is active.";
-    reference
-      "RFC 4427: Recovery (Protection and Restoration) Terminology
-       for Generalized Multi-Protocol Label Switching (GMPLS)";
-  }
-
-  identity wait-to-restore {
-    base lsp-protection-state;
-    description
-      "A WTR timer is running.";
-    reference
-      "RFC 4427: Recovery (Protection and Restoration) Terminology
-       for Generalized Multi-Protocol Label Switching (GMPLS)";
-  }
-
-  identity do-not-revert {
-    base lsp-protection-state;
-    description
-      "A Do Not Revert (DNR) condition is active because of
-       non-revertive behavior.";
-    reference
-      "RFC 4427: Recovery (Protection and Restoration) Terminology
-       for Generalized Multi-Protocol Label Switching (GMPLS)";
-  }
-
-  identity failure-of-protocol {
-    base lsp-protection-state;
-    description
-      "LSP protection is not working because of a protocol failure
-       condition.";
-    reference
-      "RFC 4427: Recovery (Protection and Restoration) Terminology
-       for Generalized Multi-Protocol Label Switching (GMPLS)";
-  }
-
-  identity protection-external-commands {
-    description
-      "Base identity from which protection-related external commands
-       used for troubleshooting purposes are derived.";
-  }
-
-  identity action-freeze {
-    base protection-external-commands;
-    description
-      "A temporary configuration action initiated by an operator
-       command that prevents any switchover action from being taken
-       and, as such, freezes the current state.";
-    reference
-      "RFC 4427: Recovery (Protection and Restoration) Terminology
-       for Generalized Multi-Protocol Label Switching (GMPLS)";
-  }
-
-  identity clear-freeze {
-    base protection-external-commands;
-    description
-      "An action that clears the active freeze state.";
-    reference
-      "RFC 4427: Recovery (Protection and Restoration) Terminology
-       for Generalized Multi-Protocol Label Switching (GMPLS)";
-  }
-
-  identity action-lockout-of-normal {
-    base protection-external-commands;
-    description
-      "A temporary configuration action initiated by an operator
-       command to ensure that the normal traffic is not allowed
-       to use the protection transport entity.";
-    reference
-      "RFC 4427: Recovery (Protection and Restoration) Terminology
-       for Generalized Multi-Protocol Label Switching (GMPLS)";
-  }
-
-  identity clear-lockout-of-normal {
-    base protection-external-commands;
-    description
-      "An action that clears the active lockout of the
-       normal state.";
-    reference
-      "RFC 4427: Recovery (Protection and Restoration) Terminology
-       for Generalized Multi-Protocol Label Switching (GMPLS)";
-  }
-
-  identity action-lockout-of-protection {
-    base protection-external-commands;
-    description
-      "A temporary configuration action initiated by an operator
-       command to ensure that the protection transport entity is
-       temporarily not available to transport a traffic signal
-       (either normal or Extra-Traffic).";
-    reference
-      "RFC 4427: Recovery (Protection and Restoration) Terminology
-       for Generalized Multi-Protocol Label Switching (GMPLS)";
-  }
-
-  identity action-forced-switch {
-    base protection-external-commands;
-    description
-      "A switchover action initiated by an operator command to switch
-       the Extra-Traffic signal, the normal traffic signal, or the
-       null signal to the protection transport entity, unless a
-       switchover command of equal or higher priority is in effect.";
-    reference
-      "RFC 4427: Recovery (Protection and Restoration) Terminology
-       for Generalized Multi-Protocol Label Switching (GMPLS)";
-  }
-
-  identity action-manual-switch {
-    base protection-external-commands;
-    description
-      "A switchover action initiated by an operator command to switch
-       the Extra-Traffic signal, the normal traffic signal, or
-       the null signal to the protection transport entity, unless
-       a fault condition exists on other transport entities or a
-       switchover command of equal or higher priority is in effect.";
-    reference
-      "RFC 4427: Recovery (Protection and Restoration) Terminology
-       for Generalized Multi-Protocol Label Switching (GMPLS)";
-  }
-
-  identity action-exercise {
-    base protection-external-commands;
-    description
-      "An action that starts testing whether or not APS communication
-       is operating correctly.  It is of lower priority than any
-       other state or command.";
-    reference
-      "RFC 4427: Recovery (Protection and Restoration) Terminology
-       for Generalized Multi-Protocol Label Switching (GMPLS)";
-  }
-
-  identity clear {
-    base protection-external-commands;
-    description
-      "An action that clears the active near-end lockout of a
-       protection, forced switchover, manual switchover, WTR state,
-       or exercise command.";
-    reference
-      "RFC 4427: Recovery (Protection and Restoration) Terminology
-       for Generalized Multi-Protocol Label Switching (GMPLS)";
-  }
-
-  identity switching-capabilities {
-    description
-      "Base identity for interface switching capabilities.";
-    reference
-      "RFC 3471: Generalized Multi-Protocol Label Switching (GMPLS)
-       Signaling Functional Description";
-  }
-
-  identity switching-psc1 {
-    base switching-capabilities;
-    description
-      "Packet-Switch Capable-1 (PSC-1).";
-    reference
-      "RFC 3471: Generalized Multi-Protocol Label Switching (GMPLS)
-       Signaling Functional Description";
-  }
-
-  identity switching-evpl {
-    base switching-capabilities;
-    description
-      "Ethernet Virtual Private Line (EVPL).";
-    reference
-      "RFC 6004: Generalized MPLS (GMPLS) Support for Metro Ethernet
-       Forum and G.8011 Ethernet Service Switching";
-  }
-
-  identity switching-l2sc {
-    base switching-capabilities;
-    description
-      "Layer-2 Switch Capable (L2SC).";
-    reference
-      "RFC 3471: Generalized Multi-Protocol Label Switching (GMPLS)
-       Signaling Functional Description";
-  }
-
-  identity switching-tdm {
-    base switching-capabilities;
-    description
-      "Time-Division-Multiplex Capable (TDM).";
-    reference
-      "RFC 3471: Generalized Multi-Protocol Label Switching (GMPLS)
-       Signaling Functional Description";
-  }
-
-  identity switching-otn {
-    base switching-capabilities;
-    description
-      "OTN-TDM capable.";
-    reference
-      "RFC 7138: Traffic Engineering Extensions to OSPF for GMPLS
-       Control of Evolving G.709 Optical Transport Networks";
-  }
-
-  identity switching-dcsc {
-    base switching-capabilities;
-    description
-      "Data Channel Switching Capable (DCSC).";
-    reference
-      "RFC 6002: Generalized MPLS (GMPLS) Data Channel
-       Switching Capable (DCSC) and Channel Set Label Extensions";
-  }
-
-  identity switching-lsc {
-    base switching-capabilities;
-    description
-      "Lambda-Switch Capable (LSC).";
-    reference
-      "RFC 3471: Generalized Multi-Protocol Label Switching (GMPLS)
-       Signaling Functional Description";
-  }
-
-  identity switching-fsc {
-    base switching-capabilities;
-    description
-      "Fiber-Switch Capable (FSC).";
-    reference
-      "RFC 3471: Generalized Multi-Protocol Label Switching (GMPLS)
-       Signaling Functional Description";
-  }
-
-  identity lsp-encoding-types {
-    description
-      "Base identity for encoding types.";
-    reference
-      "RFC 3471: Generalized Multi-Protocol Label Switching (GMPLS)
-       Signaling Functional Description";
-  }
-
-  identity lsp-encoding-packet {
-    base lsp-encoding-types;
-    description
-      "Packet LSP encoding.";
-    reference
-      "RFC 3471: Generalized Multi-Protocol Label Switching (GMPLS)
-       Signaling Functional Description";
-  }
-
-  identity lsp-encoding-ethernet {
-    base lsp-encoding-types;
-    description
-      "Ethernet LSP encoding.";
-    reference
-      "RFC 3471: Generalized Multi-Protocol Label Switching (GMPLS)
-       Signaling Functional Description";
-  }
-
-  identity lsp-encoding-pdh {
-    base lsp-encoding-types;
-    description
-      "ANSI/ETSI PDH LSP encoding.";
-    reference
-      "RFC 3471: Generalized Multi-Protocol Label Switching (GMPLS)
-       Signaling Functional Description";
-  }
-
-  identity lsp-encoding-sdh {
-    base lsp-encoding-types;
-    description
-      "SDH ITU-T G.707 / SONET ANSI T1.105 LSP encoding.";
-    reference
-      "RFC 3471: Generalized Multi-Protocol Label Switching (GMPLS)
-       Signaling Functional Description";
-  }
-
-  identity lsp-encoding-digital-wrapper {
-    base lsp-encoding-types;
-    description
-      "Digital Wrapper LSP encoding.";
-    reference
-      "RFC 3471: Generalized Multi-Protocol Label Switching (GMPLS)
-       Signaling Functional Description";
-  }
-
-  identity lsp-encoding-lambda {
-    base lsp-encoding-types;
-    description
-      "Lambda (photonic) LSP encoding.";
-    reference
-      "RFC 3471: Generalized Multi-Protocol Label Switching (GMPLS)
-       Signaling Functional Description";
-  }
-
-  identity lsp-encoding-fiber {
-    base lsp-encoding-types;
-    description
-      "Fiber LSP encoding.";
-    reference
-      "RFC 3471: Generalized Multi-Protocol Label Switching (GMPLS)
-       Signaling Functional Description";
-  }
-
-  identity lsp-encoding-fiber-channel {
-    base lsp-encoding-types;
-    description
-      "FiberChannel LSP encoding.";
-    reference
-      "RFC 3471: Generalized Multi-Protocol Label Switching (GMPLS)
-       Signaling Functional Description";
-  }
-
-  identity lsp-encoding-oduk {
-    base lsp-encoding-types;
-    description
-      "G.709 ODUk (Digital Path) LSP encoding.";
-    reference
-      "RFC 4328: Generalized Multi-Protocol Label Switching (GMPLS)
-       Signaling Extensions for G.709 Optical Transport Networks
-       Control";
-  }
-
-  identity lsp-encoding-optical-channel {
-    base lsp-encoding-types;
-    description
-      "G.709 Optical Channel LSP encoding.";
-    reference
-      "RFC 4328: Generalized Multi-Protocol Label Switching (GMPLS)
-       Signaling Extensions for G.709 Optical Transport Networks
-       Control";
-  }
-
-  identity lsp-encoding-line {
-    base lsp-encoding-types;
-    description
-      "Line (e.g., 8B/10B) LSP encoding.";
-    reference
-      "RFC 6004: Generalized MPLS (GMPLS) Support for Metro
-       Ethernet Forum and G.8011 Ethernet Service Switching";
-  }
-
-  identity path-signaling-type {
-    description
-      "Base identity from which specific LSP path setup types
-       are derived.";
-  }
-
-  identity path-setup-static {
-    base path-signaling-type;
-    description
-      "Static LSP provisioning path setup.";
-  }
-
-  identity path-setup-rsvp {
-    base path-signaling-type;
-    description
-      "RSVP-TE signaling path setup.";
-    reference
-      "RFC 3209: RSVP-TE: Extensions to RSVP for LSP Tunnels";
-  }
-
-  identity path-setup-sr {
-    base path-signaling-type;
-    description
-      "Segment-routing path setup.";
-  }
-
-  identity path-scope-type {
-    description
-      "Base identity from which specific path scope types are
-       derived.";
-  }
-
-  identity path-scope-segment {
-    base path-scope-type;
-    description
-      "Path scope segment.";
-    reference
-      "RFC 4873: GMPLS Segment Recovery";
-  }
-
-  identity path-scope-end-to-end {
-    base path-scope-type;
-    description
-      "Path scope end to end.";
-    reference
-      "RFC 4873: GMPLS Segment Recovery";
-  }
-
-  identity route-usage-type {
-    description
-      "Base identity for route usage.";
-  }
-
-  identity route-include-object {
-    base route-usage-type;
-    description
-      "'Include route' object.";
-  }
-
-  identity route-exclude-object {
-    base route-usage-type;
-    description
-      "'Exclude route' object.";
-    reference
-      "RFC 4874: Exclude Routes - Extension to Resource ReserVation
-       Protocol-Traffic Engineering (RSVP-TE)";
-  }
-
-  identity route-exclude-srlg {
-    base route-usage-type;
-    description
-      "Excludes SRLGs.";
-    reference
-      "RFC 4874: Exclude Routes - Extension to Resource ReserVation
-       Protocol-Traffic Engineering (RSVP-TE)";
-  }
-
-  identity path-metric-type {
-    description
-      "Base identity for the path metric type.";
-  }
-
-  identity path-metric-te {
-    base path-metric-type;
-    description
-      "TE path metric.";
-    reference
-      "RFC 3785: Use of Interior Gateway Protocol (IGP) Metric as a
-       second MPLS Traffic Engineering (TE) Metric";
-  }
-
-  identity path-metric-igp {
-    base path-metric-type;
-    description
-      "IGP path metric.";
-    reference
-      "RFC 3785: Use of Interior Gateway Protocol (IGP) Metric as a
-       second MPLS Traffic Engineering (TE) Metric";
-  }
-
-  identity path-metric-hop {
-    base path-metric-type;
-    description
-      "Hop path metric.";
-  }
-
-  identity path-metric-delay-average {
-    base path-metric-type;
-    description
-      "Average unidirectional link delay.";
-    reference
-      "RFC 7471: OSPF Traffic Engineering (TE) Metric Extensions";
-  }
-
-  identity path-metric-delay-minimum {
-    base path-metric-type;
-    description
-      "Minimum unidirectional link delay.";
-    reference
-      "RFC 7471: OSPF Traffic Engineering (TE) Metric Extensions";
-  }
-
-  identity path-metric-residual-bandwidth {
-    base path-metric-type;
-    description
-      "Unidirectional Residual Bandwidth, which is defined to be
-       Maximum Bandwidth (RFC 3630) minus the bandwidth currently
-       allocated to LSPs.";
-    reference
-      "RFC 3630: Traffic Engineering (TE) Extensions to OSPF
-       Version 2
-       RFC 7471: OSPF Traffic Engineering (TE) Metric Extensions";
-  }
-
-  identity path-metric-optimize-includes {
-    base path-metric-type;
-    description
-      "A metric that optimizes the number of included resources
-       specified in a set.";
-  }
-
-  identity path-metric-optimize-excludes {
-    base path-metric-type;
-    description
-      "A metric that optimizes to a maximum the number of excluded
-       resources specified in a set.";
-  }
-
-  identity path-tiebreaker-type {
-    description
-      "Base identity for the path tiebreaker type.";
-  }
-
-  identity path-tiebreaker-minfill {
-    base path-tiebreaker-type;
-    description
-      "Min-Fill LSP path placement.";
-  }
-
-  identity path-tiebreaker-maxfill {
-    base path-tiebreaker-type;
-    description
-      "Max-Fill LSP path placement.";
-  }
-
-  identity path-tiebreaker-random {
-    base path-tiebreaker-type;
-    description
-      "Random LSP path placement.";
-  }
-
-  identity resource-affinities-type {
-    description
-      "Base identity for resource class affinities.";
-    reference
-      "RFC 2702: Requirements for Traffic Engineering Over MPLS";
-  }
-
-  identity resource-aff-include-all {
-    base resource-affinities-type;
-    description
-      "The set of attribute filters associated with a
-       tunnel, all of which must be present for a link
-       to be acceptable.";
-    reference
-      "RFC 2702: Requirements for Traffic Engineering Over MPLS
-       RFC 3209: RSVP-TE: Extensions to RSVP for LSP Tunnels";
-  }
-
-  identity resource-aff-include-any {
-    base resource-affinities-type;
-    description
-      "The set of attribute filters associated with a
-       tunnel, any of which must be present for a link
-       to be acceptable.";
-    reference
-      "RFC 2702: Requirements for Traffic Engineering Over MPLS
-       RFC 3209: RSVP-TE: Extensions to RSVP for LSP Tunnels";
-  }
-
-  identity resource-aff-exclude-any {
-    base resource-affinities-type;
-    description
-      "The set of attribute filters associated with a
-       tunnel, any of which renders a link unacceptable.";
-    reference
-      "RFC 2702: Requirements for Traffic Engineering Over MPLS
-       RFC 3209: RSVP-TE: Extensions to RSVP for LSP Tunnels";
-  }
-
-  identity te-optimization-criterion {
-    description
-      "Base identity for the TE optimization criteria.";
-    reference
-      "RFC 3272: Overview and Principles of Internet Traffic
-       Engineering";
-  }
-
-  identity not-optimized {
-    base te-optimization-criterion;
-    description
-      "Optimization is not applied.";
-  }
-
-  identity cost {
-    base te-optimization-criterion;
-    description
-      "Optimized on cost.";
-    reference
-      "RFC 5541: Encoding of Objective Functions in the Path
-       Computation Element Communication Protocol (PCEP)";
-  }
-
-  identity delay {
-    base te-optimization-criterion;
-    description
-      "Optimized on delay.";
-    reference
-      "RFC 5541: Encoding of Objective Functions in the Path
-       Computation Element Communication Protocol (PCEP)";
-  }
-
-  identity path-computation-srlg-type {
-    description
-      "Base identity for SRLG path computation.";
-  }
-
-  identity srlg-ignore {
-    base path-computation-srlg-type;
-    description
-      "Ignores SRLGs in the path computation.";
-  }
-
-  identity srlg-strict {
-    base path-computation-srlg-type;
-    description
-      "Includes a strict SRLG check in the path computation.";
-  }
-
-  identity srlg-preferred {
-    base path-computation-srlg-type;
-    description
-      "Includes a preferred SRLG check in the path computation.";
-  }
-
-  identity srlg-weighted {
-    base path-computation-srlg-type;
-    description
-      "Includes a weighted SRLG check in the path computation.";
-  }
-
-  /**
-   * TE bandwidth groupings
-   **/
-
-  grouping te-bandwidth {
-    description
-      "This grouping defines the generic TE bandwidth.
-       For some known data-plane technologies, specific modeling
-       structures are specified.  The string-encoded 'te-bandwidth'
-       type is used for unspecified technologies.
-       The modeling structure can be augmented later for other
-       technologies.";
-    container te-bandwidth {
-      description
-        "Container that specifies TE bandwidth.  The choices
-         can be augmented for specific data-plane technologies.";
-      choice technology {
-        default "generic";
-        description
-          "Data-plane technology type.";
-        case generic {
-          leaf generic {
-            type te-bandwidth;
-            description
-              "Bandwidth specified in a generic format.";
-          }
-        }
-      }
-    }
-  }
-
-  /**
-   * TE label groupings
-   **/
-
-  grouping te-label {
-    description
-      "This grouping defines the generic TE label.
-       The modeling structure can be augmented for each technology.
-       For unspecified technologies, 'rt-types:generalized-label'
-       is used.";
-    container te-label {
-      description
-        "Container that specifies the TE label.  The choices can
-         be augmented for specific data-plane technologies.";
-      choice technology {
-        default "generic";
-        description
-          "Data-plane technology type.";
-        case generic {
-          leaf generic {
-            type rt-types:generalized-label;
-            description
-              "TE label specified in a generic format.";
-          }
-        }
-      }
-      leaf direction {
-        type te-label-direction;
-        default "forward";
-        description
-          "Label direction.";
-      }
-    }
-  }
-
-  grouping te-topology-identifier {
-    description
-      "Augmentation for a TE topology.";
-    container te-topology-identifier {
-      description
-        "TE topology identifier container.";
-      leaf provider-id {
-        type te-global-id;
-        default "0";
-        description
-          "An identifier to uniquely identify a provider.
-           If omitted, it assumes that the topology provider ID
-           value = 0 (the default).";
-      }
-      leaf client-id {
-        type te-global-id;
-        default "0";
-        description
-          "An identifier to uniquely identify a client.
-           If omitted, it assumes that the topology client ID
-           value = 0 (the default).";
-      }
-      leaf topology-id {
-        type te-topology-id;
-        default "";
-        description
-          "When the datastore contains several topologies,
-           'topology-id' distinguishes between them.  If omitted,
-           the default (empty) string for this leaf is assumed.";
-      }
-    }
-  }
-
-  /**
-   * TE performance metrics groupings
-   **/
-
-  grouping performance-metrics-one-way-delay-loss {
-    description
-      "Performance Metrics (PM) information in real time that can
-       be applicable to links or connections.  PM defined in this
-       grouping are applicable to generic TE PM as well as packet TE
-       PM.";
-    reference
-      "RFC 7471: OSPF Traffic Engineering (TE) Metric Extensions
-       RFC 7823: Performance-Based Path Selection for Explicitly
-       Routed Label Switched Paths (LSPs) Using TE Metric
-       Extensions
-       RFC 8570: IS-IS Traffic Engineering (TE) Metric Extensions";
-    leaf one-way-delay {
-      type uint32 {
-        range "0..16777215";
-      }
-      description
-        "One-way delay or latency in microseconds.";
-    }
-    leaf one-way-delay-normality {
-      type te-types:performance-metrics-normality;
-      description
-        "One-way delay normality.";
-    }
-  }
-
-  grouping performance-metrics-two-way-delay-loss {
-    description
-      "PM information in real time that can be applicable to links or
-       connections.  PM defined in this grouping are applicable to
-       generic TE PM as well as packet TE PM.";
-    reference
-      "RFC 7471: OSPF Traffic Engineering (TE) Metric Extensions
-       RFC 7823: Performance-Based Path Selection for Explicitly
-       Routed Label Switched Paths (LSPs) Using TE Metric
-       Extensions
-       RFC 8570: IS-IS Traffic Engineering (TE) Metric Extensions";
-    leaf two-way-delay {
-      type uint32 {
-        range "0..16777215";
-      }
-      description
-        "Two-way delay or latency in microseconds.";
-    }
-    leaf two-way-delay-normality {
-      type te-types:performance-metrics-normality;
-      description
-        "Two-way delay normality.";
-    }
-  }
-
-  grouping performance-metrics-one-way-bandwidth {
-    description
-      "PM information in real time that can be applicable to links.
-       PM defined in this grouping are applicable to generic TE PM
-       as well as packet TE PM.";
-    reference
-      "RFC 7471: OSPF Traffic Engineering (TE) Metric Extensions
-       RFC 7823: Performance-Based Path Selection for Explicitly
-       Routed Label Switched Paths (LSPs) Using TE Metric
-       Extensions
-       RFC 8570: IS-IS Traffic Engineering (TE) Metric Extensions";
-    leaf one-way-residual-bandwidth {
-      type rt-types:bandwidth-ieee-float32;
-      units "bytes per second";
-      default "0x0p0";
-      description
-        "Residual bandwidth that subtracts tunnel reservations from
-         Maximum Bandwidth (or link capacity) (RFC 3630) and
-         provides an aggregated remainder across QoS classes.";
-      reference
-        "RFC 3630: Traffic Engineering (TE) Extensions to OSPF
-         Version 2";
-    }
-    leaf one-way-residual-bandwidth-normality {
-      type te-types:performance-metrics-normality;
-      default "normal";
-      description
-        "Residual bandwidth normality.";
-    }
-    leaf one-way-available-bandwidth {
-      type rt-types:bandwidth-ieee-float32;
-      units "bytes per second";
-      default "0x0p0";
-      description
-        "Available bandwidth that is defined to be residual
-         bandwidth minus the measured bandwidth used for the
-         actual forwarding of non-RSVP-TE LSP packets.  For a
-         bundled link, available bandwidth is defined to be the
-         sum of the component link available bandwidths.";
-    }
-    leaf one-way-available-bandwidth-normality {
-      type te-types:performance-metrics-normality;
-      default "normal";
-      description
-        "Available bandwidth normality.";
-    }
-    leaf one-way-utilized-bandwidth {
-      type rt-types:bandwidth-ieee-float32;
-      units "bytes per second";
-      default "0x0p0";
-      description
-        "Bandwidth utilization that represents the actual
-         utilization of the link (i.e., as measured in the router).
-         For a bundled link, bandwidth utilization is defined to
-         be the sum of the component link bandwidth utilizations.";
-    }
-    leaf one-way-utilized-bandwidth-normality {
-      type te-types:performance-metrics-normality;
-      default "normal";
-      description
-        "Bandwidth utilization normality.";
-    }
-  }
-
-  grouping one-way-performance-metrics {
-    description
-      "One-way PM throttle grouping.";
-    leaf one-way-delay {
-      type uint32 {
-        range "0..16777215";
-      }
-      default "0";
-      description
-        "One-way delay or latency in microseconds.";
-    }
-    leaf one-way-residual-bandwidth {
-      type rt-types:bandwidth-ieee-float32;
-      units "bytes per second";
-      default "0x0p0";
-      description
-        "Residual bandwidth that subtracts tunnel reservations from
-         Maximum Bandwidth (or link capacity) (RFC 3630) and
-         provides an aggregated remainder across QoS classes.";
-      reference
-        "RFC 3630: Traffic Engineering (TE) Extensions to OSPF
-         Version 2";
-    }
-    leaf one-way-available-bandwidth {
-      type rt-types:bandwidth-ieee-float32;
-      units "bytes per second";
-      default "0x0p0";
-      description
-        "Available bandwidth that is defined to be residual
-         bandwidth minus the measured bandwidth used for the
-         actual forwarding of non-RSVP-TE LSP packets.  For a
-         bundled link, available bandwidth is defined to be the
-         sum of the component link available bandwidths.";
-    }
-    leaf one-way-utilized-bandwidth {
-      type rt-types:bandwidth-ieee-float32;
-      units "bytes per second";
-      default "0x0p0";
-      description
-        "Bandwidth utilization that represents the actual
-         utilization of the link (i.e., as measured in the router).
-         For a bundled link, bandwidth utilization is defined to
-         be the sum of the component link bandwidth utilizations.";
-    }
-  }
-
-  grouping two-way-performance-metrics {
-    description
-      "Two-way PM throttle grouping.";
-    leaf two-way-delay {
-      type uint32 {
-        range "0..16777215";
-      }
-      default "0";
-      description
-        "Two-way delay or latency in microseconds.";
-    }
-  }
-
-  grouping performance-metrics-thresholds {
-    description
-      "Grouping for configurable thresholds for measured
-       attributes.";
-    uses one-way-performance-metrics;
-    uses two-way-performance-metrics;
-  }
-
-  grouping performance-metrics-attributes {
-    description
-      "Contains PM attributes.";
-    container performance-metrics-one-way {
-      description
-        "One-way link performance information in real time.";
-      reference
-        "RFC 7471: OSPF Traffic Engineering (TE) Metric Extensions
-         RFC 7823: Performance-Based Path Selection for Explicitly
-         Routed Label Switched Paths (LSPs) Using TE Metric
-         Extensions
-         RFC 8570: IS-IS Traffic Engineering (TE) Metric Extensions";
-      uses performance-metrics-one-way-delay-loss;
-      uses performance-metrics-one-way-bandwidth;
-    }
-    container performance-metrics-two-way {
-      description
-        "Two-way link performance information in real time.";
-      reference
-        "RFC 6374: Packet Loss and Delay Measurement for MPLS
-         Networks";
-      uses performance-metrics-two-way-delay-loss;
-    }
-  }
-
-  grouping performance-metrics-throttle-container {
-    description
-      "Controls PM throttling.";
-    container throttle {
-      must 'suppression-interval >= measure-interval' {
-        error-message "'suppression-interval' cannot be less than "
-                    + "'measure-interval'.";
-        description
-          "Constraint on 'suppression-interval' and
-           'measure-interval'.";
-      }
-      description
-        "Link performance information in real time.";
-      reference
-        "RFC 7471: OSPF Traffic Engineering (TE) Metric Extensions
-         RFC 7823: Performance-Based Path Selection for Explicitly
-         Routed Label Switched Paths (LSPs) Using TE Metric
-         Extensions
-         RFC 8570: IS-IS Traffic Engineering (TE) Metric Extensions";
-      leaf one-way-delay-offset {
-        type uint32 {
-          range "0..16777215";
-        }
-        default "0";
-        description
-          "Offset value to be added to the measured delay value.";
-      }
-      leaf measure-interval {
-        type uint32;
-        default "30";
-        description
-          "Interval, in seconds, to measure the extended metric
-           values.";
-      }
-      leaf advertisement-interval {
-        type uint32;
-        default "0";
-        description
-          "Interval, in seconds, to advertise the extended metric
-           values.";
-      }
-      leaf suppression-interval {
-        type uint32 {
-          range "1..max";
-        }
-        default "120";
-        description
-          "Interval, in seconds, to suppress advertisement of the
-           extended metric values.";
-        reference
-          "RFC 8570: IS-IS Traffic Engineering (TE) Metric
-           Extensions, Section 6";
-      }
-      container threshold-out {
-        uses performance-metrics-thresholds;
-        description
-          "If the measured parameter falls outside an upper bound
-           for all but the minimum-delay metric (or a lower bound
-           for the minimum-delay metric only) and the advertised
-           value is not already outside that bound, an 'anomalous'
-           announcement (anomalous bit set) will be triggered.";
-      }
-      container threshold-in {
-        uses performance-metrics-thresholds;
-        description
-          "If the measured parameter falls inside an upper bound
-           for all but the minimum-delay metric (or a lower bound
-           for the minimum-delay metric only) and the advertised
-           value is not already inside that bound, a 'normal'
-           announcement (anomalous bit cleared) will be triggered.";
-      }
-      container threshold-accelerated-advertisement {
-        description
-          "When the difference between the last advertised value and
-           the current measured value exceeds this threshold, an
-           'anomalous' announcement (anomalous bit set) will be
-           triggered.";
-        uses performance-metrics-thresholds;
-      }
-    }
-  }
-
-  /**
-   * TE tunnel generic groupings
-   **/
-
-  grouping explicit-route-hop {
-    description
-      "The explicit route entry grouping.";
-    choice type {
-      description
-        "The explicit route entry type.";
-      case numbered-node-hop {
-        container numbered-node-hop {
-          leaf node-id {
-            type te-node-id;
-            mandatory true;
-            description
-              "The identifier of a node in the TE topology.";
-          }
-          leaf hop-type {
-            type te-hop-type;
-            default "strict";
-            description
-              "Strict or loose hop.";
-          }
-          description
-            "Numbered node route hop.";
-          reference
-            "RFC 3209: RSVP-TE: Extensions to RSVP for LSP Tunnels,
-             Section 4.3, EXPLICIT_ROUTE in RSVP-TE
-             RFC 3477: Signalling Unnumbered Links in Resource
-             ReSerVation Protocol - Traffic Engineering (RSVP-TE)";
-        }
-      }
-      case numbered-link-hop {
-        container numbered-link-hop {
-          leaf link-tp-id {
-            type te-tp-id;
-            mandatory true;
-            description
-              "TE Link Termination Point (LTP) identifier.";
-          }
-          leaf hop-type {
-            type te-hop-type;
-            default "strict";
-            description
-              "Strict or loose hop.";
-          }
-          leaf direction {
-            type te-link-direction;
-            default "outgoing";
-            description
-              "Link route object direction.";
-          }
-          description
-            "Numbered link explicit route hop.";
-          reference
-            "RFC 3209: RSVP-TE: Extensions to RSVP for LSP Tunnels,
-             Section 4.3, EXPLICIT_ROUTE in RSVP-TE
-             RFC 3477: Signalling Unnumbered Links in Resource
-             ReSerVation Protocol - Traffic Engineering (RSVP-TE)";
-        }
-      }
-      case unnumbered-link-hop {
-        container unnumbered-link-hop {
-          leaf link-tp-id {
-            type te-tp-id;
-            mandatory true;
-            description
-              "TE LTP identifier.  The combination of the TE link ID
-               and the TE node ID is used to identify an unnumbered
-               TE link.";
-          }
-          leaf node-id {
-            type te-node-id;
-            mandatory true;
-            description
-              "The identifier of a node in the TE topology.";
-          }
-          leaf hop-type {
-            type te-hop-type;
-            default "strict";
-            description
-              "Strict or loose hop.";
-          }
-          leaf direction {
-            type te-link-direction;
-            default "outgoing";
-            description
-              "Link route object direction.";
-          }
-          description
-            "Unnumbered link explicit route hop.";
-          reference
-            "RFC 3209: RSVP-TE: Extensions to RSVP for LSP Tunnels,
-             Section 4.3, EXPLICIT_ROUTE in RSVP-TE
-             RFC 3477: Signalling Unnumbered Links in Resource
-             ReSerVation Protocol - Traffic Engineering (RSVP-TE)";
-        }
-      }
-      case as-number {
-        container as-number-hop {
-          leaf as-number {
-            type inet:as-number;
-            mandatory true;
-            description
-              "The Autonomous System (AS) number.";
-          }
-          leaf hop-type {
-            type te-hop-type;
-            default "strict";
-            description
-              "Strict or loose hop.";
-          }
-          description
-            "AS explicit route hop.";
-        }
-      }
-      case label {
-        container label-hop {
-          description
-            "Label hop type.";
-          uses te-label;
-        }
-        description
-          "The label explicit route hop type.";
-      }
-    }
-  }
-
-  grouping record-route-state {
-    description
-      "The Record Route grouping.";
-    leaf index {
-      type uint32;
-      description
-        "Record Route hop index.  The index is used to
-         identify an entry in the list.  The order of entries
-         is defined by the user without relying on key values.";
-    }
-    choice type {
-      description
-        "The Record Route entry type.";
-      case numbered-node-hop {
-        container numbered-node-hop {
-          description
-            "Numbered node route hop container.";
-          leaf node-id {
-            type te-node-id;
-            mandatory true;
-            description
-              "The identifier of a node in the TE topology.";
-          }
-          leaf-list flags {
-            type path-attribute-flags;
-            description
-              "Path attributes flags.";
-            reference
-              "RFC 3209: RSVP-TE: Extensions to RSVP for LSP Tunnels
-               RFC 4090: Fast Reroute Extensions to RSVP-TE for LSP
-               Tunnels
-               RFC 4561: Definition of a Record Route Object (RRO)
-               Node-Id Sub-Object";
-          }
-        }
-        description
-          "Numbered node route hop.";
-      }
-      case numbered-link-hop {
-        container numbered-link-hop {
-          description
-            "Numbered link route hop container.";
-          leaf link-tp-id {
-            type te-tp-id;
-            mandatory true;
-            description
-              "Numbered TE LTP identifier.";
-          }
-          leaf-list flags {
-            type path-attribute-flags;
-            description
-              "Path attributes flags.";
-            reference
-              "RFC 3209: RSVP-TE: Extensions to RSVP for LSP Tunnels
-               RFC 4090: Fast Reroute Extensions to RSVP-TE for LSP
-               Tunnels
-               RFC 4561: Definition of a Record Route Object (RRO)
-               Node-Id Sub-Object";
-          }
-        }
-        description
-          "Numbered link route hop.";
-      }
-      case unnumbered-link-hop {
-        container unnumbered-link-hop {
-          leaf link-tp-id {
-            type te-tp-id;
-            mandatory true;
-            description
-              "TE LTP identifier.  The combination of the TE link ID
-               and the TE node ID is used to identify an unnumbered
-               TE link.";
-          }
-          leaf node-id {
-            type te-node-id;
-            description
-              "The identifier of a node in the TE topology.";
-          }
-          leaf-list flags {
-            type path-attribute-flags;
-            description
-              "Path attributes flags.";
-            reference
-              "RFC 3209: RSVP-TE: Extensions to RSVP for LSP Tunnels
-               RFC 4090: Fast Reroute Extensions to RSVP-TE for LSP
-               Tunnels
-               RFC 4561: Definition of a Record Route Object (RRO)
-               Node-Id Sub-Object";
-          }
-          description
-            "Unnumbered link Record Route hop.";
-          reference
-            "RFC 3477: Signalling Unnumbered Links in Resource
-             ReSerVation Protocol - Traffic Engineering (RSVP-TE)";
-        }
-        description
-          "Unnumbered link route hop.";
-      }
-      case label {
-        container label-hop {
-          description
-            "Label route hop type.";
-          uses te-label;
-          leaf-list flags {
-            type path-attribute-flags;
-            description
-              "Path attributes flags.";
-            reference
-              "RFC 3209: RSVP-TE: Extensions to RSVP for LSP Tunnels
-               RFC 4090: Fast Reroute Extensions to RSVP-TE for LSP
-               Tunnels
-               RFC 4561: Definition of a Record Route Object (RRO)
-               Node-Id Sub-Object";
-          }
-        }
-        description
-          "The label Record Route entry types.";
-      }
-    }
-  }
-
-  grouping label-restriction-info {
-    description
-      "Label set item information.";
-    leaf restriction {
-      type enumeration {
-        enum inclusive {
-          description
-            "The label or label range is inclusive.";
-        }
-        enum exclusive {
-          description
-            "The label or label range is exclusive.";
-        }
-      }
-      default "inclusive";
-      description
-        "Indicates whether the list item is inclusive or exclusive.";
-    }
-    leaf index {
-      type uint32;
-      description
-        "The index of the label restriction list entry.";
-    }
-    container label-start {
-      must "(not(../label-end/te-label/direction) and"
-         + " not(te-label/direction))"
-         + " or "
-         + "(../label-end/te-label/direction = te-label/direction)"
-         + " or "
-         + "(not(te-label/direction) and"
-         + " (../label-end/te-label/direction = 'forward'))"
-         + " or "
-         + "(not(../label-end/te-label/direction) and"
-         + " (te-label/direction = 'forward'))" {
-        error-message "'label-start' and 'label-end' must have the "
-                    + "same direction.";
-      }
-      description
-        "This is the starting label if a label range is specified.
-         This is the label value if a single label is specified,
-         in which case the 'label-end' attribute is not set.";
-      uses te-label;
-    }
-    container label-end {
-      must "(not(../label-start/te-label/direction) and"
-         + " not(te-label/direction))"
-         + " or "
-         + "(../label-start/te-label/direction = te-label/direction)"
-         + " or "
-         + "(not(te-label/direction) and"
-         + " (../label-start/te-label/direction = 'forward'))"
-         + " or "
-         + "(not(../label-start/te-label/direction) and"
-         + " (te-label/direction = 'forward'))" {
-        error-message "'label-start' and 'label-end' must have the "
-                    + "same direction.";
-      }
-      description
-        "This is the ending label if a label range is specified.
-         This attribute is not set if a single label is specified.";
-      uses te-label;
-    }
-    container label-step {
-      description
-        "The step increment between labels in the label range.
-         The label start/end values will have to be consistent
-         with the sign of label step.  For example,
-         'label-start' < 'label-end' enforces 'label-step' > 0
-         'label-start' > 'label-end' enforces 'label-step' < 0.";
-      choice technology {
-        default "generic";
-        description
-          "Data-plane technology type.";
-        case generic {
-          leaf generic {
-            type int32;
-            default "1";
-            description
-              "Label range step.";
-          }
-        }
-      }
-    }
-    leaf range-bitmap {
-      type yang:hex-string;
-      description
-        "When there are gaps between 'label-start' and 'label-end',
-         this attribute is used to specify the positions
-         of the used labels.  This is represented in big endian as
-         'hex-string'.
-         The most significant byte in the hex-string is the farthest
-         to the left in the byte sequence.  Leading zero bytes in the
-         configured value may be omitted for brevity.
-         Each bit position in the 'range-bitmap' 'hex-string' maps
-         to a label in the range derived from 'label-start'.
-
-         For example, assuming that 'label-start' = 16000 and
-         'range-bitmap' = 0x01000001, then:
-
-         - bit position (0) is set, and the corresponding mapped
-           label from the range is 16000 + (0 * 'label-step') or
-           16000 for default 'label-step' = 1.
-         - bit position (24) is set, and the corresponding mapped
-           label from the range is 16000 + (24 * 'label-step') or
-           16024 for default 'label-step' = 1.";
-    }
-  }
-
-  grouping label-set-info {
-    description
-      "Grouping for the list of label restrictions specifying what
-       labels may or may not be used.";
-    container label-restrictions {
-      description
-        "The label restrictions container.";
-      list label-restriction {
-        key "index";
-        description
-          "The absence of the label restrictions container implies
-           that all labels are acceptable; otherwise, only restricted
-           labels are available.";
-        reference
-          "RFC 7579: General Network Element Constraint Encoding
-           for GMPLS-Controlled Networks";
-        uses label-restriction-info;
-      }
-    }
-  }
-
-  grouping optimization-metric-entry {
-    description
-      "Optimization metrics configuration grouping.";
-    leaf metric-type {
-      type identityref {
-        base path-metric-type;
-      }
-      description
-        "Identifies the 'metric-type' that the path computation
-         process uses for optimization.";
-    }
-    leaf weight {
-      type uint8;
-      default "1";
-      description
-        "TE path metric normalization weight.";
-    }
-    container explicit-route-exclude-objects {
-      when "../metric-type = "
-         + "'te-types:path-metric-optimize-excludes'";
-      description
-        "Container for the 'exclude route' object list.";
-      uses path-route-exclude-objects;
-    }
-    container explicit-route-include-objects {
-      when "../metric-type = "
-         + "'te-types:path-metric-optimize-includes'";
-      description
-        "Container for the 'include route' object list.";
-      uses path-route-include-objects;
-    }
-  }
-
-  grouping common-constraints {
-    description
-      "Common constraints grouping that can be set on
-       a constraint set or directly on the tunnel.";
-    uses te-bandwidth {
-      description
-        "A requested bandwidth to use for path computation.";
-    }
-    leaf link-protection {
-      type identityref {
-        base link-protection-type;
-      }
-      default "te-types:link-protection-unprotected";
-      description
-        "Link protection type required for the links included
-         in the computed path.";
-      reference
-        "RFC 4202: Routing Extensions in Support of
-         Generalized Multi-Protocol Label Switching (GMPLS)";
-    }
-    leaf setup-priority {
-      type uint8 {
-        range "0..7";
-      }
-      default "7";
-      description
-        "TE LSP requested setup priority.";
-      reference
-        "RFC 3209: RSVP-TE: Extensions to RSVP for LSP Tunnels";
-    }
-    leaf hold-priority {
-      type uint8 {
-        range "0..7";
-      }
-      default "7";
-      description
-        "TE LSP requested hold priority.";
-      reference
-        "RFC 3209: RSVP-TE: Extensions to RSVP for LSP Tunnels";
-    }
-    leaf signaling-type {
-      type identityref {
-        base path-signaling-type;
-      }
-      default "te-types:path-setup-rsvp";
-      description
-        "TE tunnel path signaling type.";
-    }
-  }
-
-  grouping tunnel-constraints {
-    description
-      "Tunnel constraints grouping that can be set on
-       a constraint set or directly on the tunnel.";
-    uses te-topology-identifier;
-    uses common-constraints;
-  }
-
-  grouping path-constraints-route-objects {
-    description
-      "List of route entries to be included or excluded when
-       performing the path computation.";
-    container explicit-route-objects-always {
-      description
-        "Container for the 'exclude route' object list.";
-      list route-object-exclude-always {
-        key "index";
-        ordered-by user;
-        description
-          "List of route objects to always exclude from the path
-           computation.";
-        leaf index {
-          type uint32;
-          description
-            "Explicit Route Object index.  The index is used to
-             identify an entry in the list.  The order of entries
-             is defined by the user without relying on key values.";
-        }
-        uses explicit-route-hop;
-      }
-      list route-object-include-exclude {
-        key "index";
-        ordered-by user;
-        description
-          "List of route objects to include or exclude in the path
-           computation.";
-        leaf explicit-route-usage {
-          type identityref {
-            base route-usage-type;
-          }
-          default "te-types:route-include-object";
-          description
-            "Indicates whether to include or exclude the
-             route object.  The default is to include it.";
-        }
-        leaf index {
-          type uint32;
-          description
-            "Route object include-exclude index.  The index is used
-             to identify an entry in the list.  The order of entries
-             is defined by the user without relying on key values.";
-        }
-        uses explicit-route-hop {
-          augment "type" {
-            case srlg {
-              container srlg {
-                description
-                  "SRLG container.";
-                leaf srlg {
-                  type uint32;
-                  description
-                    "SRLG value.";
-                }
-              }
-              description
-                "An SRLG value to be included or excluded.";
-            }
-            description
-              "Augmentation for a generic explicit route for SRLG
-               exclusion.";
-          }
-        }
-      }
-    }
-  }
-
-  grouping path-route-include-objects {
-    description
-      "List of route objects to be included when performing
-       the path computation.";
-    list route-object-include-object {
-      key "index";
-      ordered-by user;
-      description
-        "List of Explicit Route Objects to be included in the
-         path computation.";
-      leaf index {
-        type uint32;
-        description
-          "Route object entry index.  The index is used to
-           identify an entry in the list.  The order of entries
-           is defined by the user without relying on key values.";
-      }
-      uses explicit-route-hop;
-    }
-  }
-
-  grouping path-route-exclude-objects {
-    description
-      "List of route objects to be excluded when performing
-       the path computation.";
-    list route-object-exclude-object {
-      key "index";
-      ordered-by user;
-      description
-        "List of Explicit Route Objects to be excluded in the
-         path computation.";
-      leaf index {
-        type uint32;
-        description
-          "Route object entry index.  The index is used to
-           identify an entry in the list.  The order of entries
-           is defined by the user without relying on key values.";
-      }
-      uses explicit-route-hop {
-        augment "type" {
-          case srlg {
-            container srlg {
-              description
-                "SRLG container.";
-              leaf srlg {
-                type uint32;
-                description
-                  "SRLG value.";
-              }
-            }
-            description
-              "An SRLG value to be included or excluded.";
-          }
-          description
-            "Augmentation for a generic explicit route for SRLG
-             exclusion.";
-        }
-      }
-    }
-  }
-
-  grouping generic-path-metric-bounds {
-    description
-      "TE path metric bounds grouping.";
-    container path-metric-bounds {
-      description
-        "TE path metric bounds container.";
-      list path-metric-bound {
-        key "metric-type";
-        description
-          "List of TE path metric bounds.";
-        leaf metric-type {
-          type identityref {
-            base path-metric-type;
-          }
-          description
-            "Identifies an entry in the list of 'metric-type' items
-             bound for the TE path.";
-        }
-        leaf upper-bound {
-          type uint64;
-          default "0";
-          description
-            "Upper bound on the end-to-end TE path metric.  A zero
-             indicates an unbounded upper limit for the specific
-             'metric-type'.";
-        }
-      }
-    }
-  }
-
-  grouping generic-path-optimization {
-    description
-      "TE generic path optimization grouping.";
-    container optimizations {
-      description
-        "The objective function container that includes
-         attributes to impose when computing a TE path.";
-      choice algorithm {
-        description
-          "Optimizations algorithm.";
-        case metric {
-          if-feature "path-optimization-metric";
-          /* Optimize by metric */
-          list optimization-metric {
-            key "metric-type";
-            description
-              "TE path metric type.";
-            uses optimization-metric-entry;
-          }
-          /* Tiebreakers */
-          container tiebreakers {
-            description
-              "Container for the list of tiebreakers.";
-            list tiebreaker {
-              key "tiebreaker-type";
-              description
-                "The list of tiebreaker criteria to apply on an
-                 equally favored set of paths, in order to pick
-                 the best.";
-              leaf tiebreaker-type {
-                type identityref {
-                  base path-metric-type;
-                }
-                description
-                  "Identifies an entry in the list of tiebreakers.";
-              }
-            }
-          }
-        }
-        case objective-function {
-          if-feature "path-optimization-objective-function";
-          /* Objective functions */
-          container objective-function {
-            description
-              "The objective function container that includes
-               attributes to impose when computing a TE path.";
-            leaf objective-function-type {
-              type identityref {
-                base objective-function-type;
-              }
-              default "te-types:of-minimize-cost-path";
-              description
-                "Objective function entry.";
-            }
-          }
-        }
-      }
-    }
-  }
-
-  grouping generic-path-affinities {
-    description
-      "Path affinities grouping.";
-    container path-affinities-values {
-      description
-        "Path affinities represented as values.";
-      list path-affinities-value {
-        key "usage";
-        description
-          "List of named affinity constraints.";
-        leaf usage {
-          type identityref {
-            base resource-affinities-type;
-          }
-          description
-            "Identifies an entry in the list of value affinity
-             constraints.";
-        }
-        leaf value {
-          type admin-groups;
-          default "";
-          description
-            "The affinity value.  The default is empty.";
-        }
-      }
-    }
-    container path-affinity-names {
-      description
-        "Path affinities represented as names.";
-      list path-affinity-name {
-        key "usage";
-        description
-          "List of named affinity constraints.";
-        leaf usage {
-          type identityref {
-            base resource-affinities-type;
-          }
-          description
-            "Identifies an entry in the list of named affinity
-             constraints.";
-        }
-        list affinity-name {
-          key "name";
-          leaf name {
-            type string;
-            description
-              "Identifies a named affinity entry.";
-          }
-          description
-            "List of named affinities.";
-        }
-      }
-    }
-  }
-
-  grouping generic-path-srlgs {
-    description
-      "Path SRLG grouping.";
-    container path-srlgs-lists {
-      description
-        "Path SRLG properties container.";
-      list path-srlgs-list {
-        key "usage";
-        description
-          "List of SRLG values to be included or excluded.";
-        leaf usage {
-          type identityref {
-            base route-usage-type;
-          }
-          description
-            "Identifies an entry in a list of SRLGs to either
-             include or exclude.";
-        }
-        leaf-list values {
-          type srlg;
-          description
-            "List of SRLG values.";
-        }
-      }
-    }
-    container path-srlgs-names {
-      description
-        "Container for the list of named SRLGs.";
-      list path-srlgs-name {
-        key "usage";
-        description
-          "List of named SRLGs to be included or excluded.";
-        leaf usage {
-          type identityref {
-            base route-usage-type;
-          }
-          description
-            "Identifies an entry in a list of named SRLGs to either
-             include or exclude.";
-        }
-        leaf-list names {
-          type string;
-          description
-            "List of named SRLGs.";
-        }
-      }
-    }
-  }
-
-  grouping generic-path-disjointness {
-    description
-      "Path disjointness grouping.";
-    leaf disjointness {
-      type te-path-disjointness;
-      description
-        "The type of resource disjointness.
-         When configured for a primary path, the disjointness level
-         applies to all secondary LSPs.  When configured for a
-         secondary path, the disjointness level overrides the level
-         configured for the primary path.";
-    }
-  }
-
-  grouping common-path-constraints-attributes {
-    description
-      "Common path constraints configuration grouping.";
-    uses common-constraints;
-    uses generic-path-metric-bounds;
-    uses generic-path-affinities;
-    uses generic-path-srlgs;
-  }
-
-  grouping generic-path-constraints {
-    description
-      "Global named path constraints configuration grouping.";
-    container path-constraints {
-      description
-        "TE named path constraints container.";
-      uses common-path-constraints-attributes;
-      uses generic-path-disjointness;
-    }
-  }
-
-  grouping generic-path-properties {
-    description
-      "TE generic path properties grouping.";
-    container path-properties {
-      config false;
-      description
-        "The TE path properties.";
-      list path-metric {
-        key "metric-type";
-        description
-          "TE path metric type.";
-        leaf metric-type {
-          type identityref {
-            base path-metric-type;
-          }
-          description
-            "TE path metric type.";
-        }
-        leaf accumulative-value {
-          type uint64;
-          description
-            "TE path metric accumulative value.";
-        }
-      }
-      uses generic-path-affinities;
-      uses generic-path-srlgs;
-      container path-route-objects {
-        description
-          "Container for the list of route objects either returned by
-           the computation engine or actually used by an LSP.";
-        list path-route-object {
-          key "index";
-          ordered-by user;
-          description
-            "List of route objects either returned by the computation
-             engine or actually used by an LSP.";
-          leaf index {
-            type uint32;
-            description
-              "Route object entry index.  The index is used to
-               identify an entry in the list.  The order of entries
-               is defined by the user without relying on key
-               values.";
-          }
-          uses explicit-route-hop;
-        }
-      }
-    }
-  }
-}
diff --git a/src/nbi/service/rest_server/nbi_plugins/ietf_network_new/yang/ietf-trans-client-service@2023-10-23.yang b/src/nbi/service/rest_server/nbi_plugins/ietf_network_new/yang/ietf-trans-client-service@2023-10-23.yang
deleted file mode 100644
index f0157bcc82e70d1da523074974e8db061d06c32a..0000000000000000000000000000000000000000
--- a/src/nbi/service/rest_server/nbi_plugins/ietf_network_new/yang/ietf-trans-client-service@2023-10-23.yang
+++ /dev/null
@@ -1,325 +0,0 @@
-   module ietf-trans-client-service {
-     /* TODO: FIXME */
-       yang-version 1.1;
-
-     namespace "urn:ietf:params:xml:ns:yang:ietf-trans-client-service";
-     prefix "clntsvc";
-
-     import ietf-network {
-       prefix "nw";
-       reference "RFC8345 - A YANG Data Model for Network Topologies";
-     }
-
-     import ietf-network-topology {
-       prefix "nt";
-       reference "RFC8345 - A YANG Data Model for Network Topologies";
-     }
-
-     import ietf-te-types {
-       prefix "te-types";
-       reference "RFC 8776 - Traffic Engineering Common YANG Types";
-     }
-
-     import ietf-layer1-types {
-       prefix "layer1-types";
-       reference "RFC ZZZZ - A YANG Data Model for Layer 1 Types";
-     }
-
-     import ietf-yang-types {
-       prefix "yang";
-       reference "RFC 6991 - Common YANG Data Types";
-     }
-
-    import ietf-trans-client-svc-types {
-      prefix "clntsvc-types";
-      reference "RFC XXXX - A YANG Data Model for
-                 Transport Network Client Signals";
-    }
-
-     organization
-       "Internet Engineering Task Force (IETF) CCAMP WG";
-     contact
-       "
-         ID-draft editor:
-           Haomian Zheng (zhenghaomian@huawei.com);
-           Aihua Guo (aihuaguo.ietf@gmail.com);
-           Italo Busi (italo.busi@huawei.com);
-           Anton Snitser (antons@sedonasys.com);
-           Francesco Lazzeri (francesco.lazzeri@ericsson.com);
-           Yunbin Xu (xuyunbin@caict.ac.cn);
-           Yang Zhao (zhaoyangyjy@chinamobile.com);
-           Xufeng Liu (Xufeng_Liu@jabil.com);
-           Giuseppe Fioccola (giuseppe.fioccola@huawei.com);
-           Chaode Yu (yuchaode@huawei.com);
-       ";
-
-     description
-       "This module defines a YANG data model for describing
-        transport network client services. The model fully conforms
-        to the Network Management Datastore Architecture (NMDA).
-
-        Copyright (c) 2021 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 Simplified BSD License
-        set forth in Section 4.c of the IETF Trust's Legal Provisions
-        Relating to IETF Documents
-        (https://trustee.ietf.org/license-info).
-        This version of this YANG module is part of RFC XXXX; see
-        the RFC itself for full legal notices.";
-     revision 2023-10-23 {
-       description
-         "version -04 as a WG document";
-       reference
-         "draft-ietf-ccamp-client-signal-yang";
-     }
-
-     /*
-      * Groupings
-      */
-     grouping client-svc-access-parameters {
-       description
-         "Transport network client signals access parameters";
-
-       leaf access-node-id {
-         type te-types:te-node-id;
-         description
-           "The identifier of the access node in the TE topology.";
-       }
-
-       leaf access-node-uri {
-         type nw:node-id;
-         description
-           "The identifier of the access node in the network.";
-       }
-
-       leaf access-ltp-id {
-         type te-types:te-tp-id;
-         description
-           "The TE link termination point identifier in TE topology, used
-           together with access-node-id to identify the access LTP.";
-       }
-
-       leaf access-ltp-uri {
-         type nt:tp-id;
-         description
-           "The link termination point identifier in network topology,
-           used together with access-node-uri to identify the access LTP";
-       }
-
-       leaf client-signal {
-         type identityref {
-           base layer1-types:client-signal;
-         }
-         description
-           "Identify the client signal type associated with this port";
-       }
-
-     }
-
-     grouping pm-state-grouping {
-       leaf latency {
-         description "latency value of the E2E client signal service";
-         type uint32;
-         units microsecond;
-       }
-     }
-
-     grouping error-info-grouping {
-       leaf error-code {
-         description "error code";
-         type uint16;
-       }
-
-       leaf error-description {
-         description "detail message of error";
-         type string;
-       }
-
-       leaf error-timestamp {
-         description "the date and time error is happened";
-         type yang:date-and-time;
-       }
-     }
-
-     grouping alarm-shreshold-grouping {
-       leaf latency-threshold {
-         description "a threshold for the E2E client signal service's
-         latency. Once the latency value exceed this threshold, an alarm
-         should be triggered.";
-         type uint32;
-         units microsecond;
-       }
-     }
-
-     grouping client-svc-tunnel-parameters {
-       description
-         "Transport network client signals tunnel parameters";
-
-       leaf tunnel-name {
-         type string;
-         description
-           "TE tunnel instance name.";
-       }
-     }
-
-     grouping  client-svc-instance-config {
-       description
-         "Configuration parameters for client services.";
-       leaf client-svc-name {
-         type string;
-         description
-           "Identifier of the p2p transport network client signals.";
-       }
-
-       leaf client-svc-title {
-         type string;
-         description
-           "Name of the p2p transport network client signals.";
-       }
-
-       leaf user-label {
-         type string;
-         description
-           "Alias of the p2p transport network client signals.";
-       }
-
-       leaf client-svc-descr {
-         type string;
-         description
-           "Description of the transport network client signals.";
-       }
-
-       leaf client-svc-customer {
-         type string;
-         description
-           "Customer of the transport network client signals.";
-       }
-
-       container resilience {
-         description "Place holder for resilience functionalities";
-       }
-
-       uses te-types:te-topology-identifier;
-
-       leaf admin-status {
-         type identityref {
-           base te-types:tunnel-admin-state-type;
-         }
-         default te-types:tunnel-admin-state-up;
-         description "Client signals administrative state.";
-       }
-
-       container src-access-ports {
-         description
-           "Source access port of a client signal.";
-         uses client-svc-access-parameters;
-       }
-       container dst-access-ports {
-         description
-           "Destination access port of a client signal.";
-         uses client-svc-access-parameters;
-       }
-
-       container pm-state {
-         config false;
-         description "PM data of E2E client signal";
-         uses pm-state-grouping;
-       }
-
-       container error-info {
-         config false;
-         description "error messages of configuration";
-         uses error-info-grouping;
-       }
-
-       container alarm-shreshold {
-         description "threshold configuration for the E2E client signal";
-         uses alarm-shreshold-grouping;
-       }
-
-       leaf direction {
-         type identityref {
-           base clntsvc-types:direction;
-         }
-         description "Uni-dir or Bi-dir for the client signal.";
-       }
-
-       list svc-tunnels {
-         key tunnel-name;
-         description
-           "List of the TE Tunnels supporting the client signal.";
-         uses client-svc-tunnel-parameters;
-       }
-     }
-
-     grouping  client-svc-instance-state {
-       description
-         "State parameters for client services.";
-       leaf operational-state {
-         type identityref {
-               base te-types:tunnel-state-type;
-         }
-         config false;
-         description "Client signal operational state.";
-       }
-       leaf provisioning-state {
-         type identityref {
-               base te-types:lsp-state-type;
-         }
-         config false;
-         description "Client signal provisioning state.";
-       }
-       leaf creation-time {
-         type yang:date-and-time;
-         config false;
-         description "The time of the client signal be created.";
-       }
-       leaf last-updated-time {
-         type yang:date-and-time;
-         config false;
-         description "The time of the client signal's latest update.";
-       }
-       leaf created-by {
-         type string;
-         config false;
-         description
-           "The client signal is created by whom,
-            can be a system or staff ID.";
-       }
-       leaf last-updated-by {
-         type string;
-         config false;
-         description
-           "The client signal is last updated by whom,
-            can be a system or staff ID.";
-       }
-       leaf owned-by {
-         type string;
-         config false;
-         description
-           "The client signal is owned by whom,
-            can be a system ID.";
-       }
-     }
-
-     /*
-      * Data nodes
-      */
-
-     container client-svc {
-       description
-         "Transport client services.";
-
-       list client-svc-instances {
-         key client-svc-name;
-         description
-           "The list of p2p transport client service instances";
-
-             uses client-svc-instance-config;
-             uses client-svc-instance-state;
-       }
-     }
-   }
diff --git a/src/nbi/service/rest_server/nbi_plugins/ietf_network_new/yang/ietf-trans-client-svc-types@2023-10-23.yang b/src/nbi/service/rest_server/nbi_plugins/ietf_network_new/yang/ietf-trans-client-svc-types@2023-10-23.yang
deleted file mode 100644
index 60db5633af691c53678870dc5f087b911726f2c6..0000000000000000000000000000000000000000
--- a/src/nbi/service/rest_server/nbi_plugins/ietf_network_new/yang/ietf-trans-client-svc-types@2023-10-23.yang
+++ /dev/null
@@ -1,63 +0,0 @@
-   module ietf-trans-client-svc-types {
-     namespace "urn:ietf:params:xml:ns:yang:ietf-trans-client-svc-types";
-     prefix "clntsvc-types";
-
-     organization
-        "Internet Engineering Task Force (IETF) CCAMP WG";
-      contact
-        "
-          ID-draft editor:
-            Haomian Zheng (zhenghaomian@huawei.com);
-            Aihua Guo (aihuaguo.ietf@gmail.com);
-            Italo Busi (italo.busi@huawei.com);
-            Anton Snitser (antons@sedonasys.com);
-            Francesco Lazzeri (francesco.lazzeri@ericsson.com);
-            Yunbin Xu (xuyunbin@caict.ac.cn);
-            Yang Zhao (zhaoyangyjy@chinamobile.com);
-            Xufeng Liu (Xufeng_Liu@jabil.com);
-            Giuseppe Fioccola (giuseppe.fioccola@huawei.com);
-            Chaode Yu (yuchaode@huawei.com);
-        ";
-
-      description
-        "This module defines a YANG data model for describing
-         transport network client types. The model fully conforms
-         to the Network Management Datastore Architecture (NMDA).
-
-         Copyright (c) 2019 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 Simplified BSD License
-         set forth in Section 4.c of the IETF Trust's Legal Provisions
-         Relating to IETF Documents
-         (https://trustee.ietf.org/license-info).
-         This version of this YANG module is part of RFC XXXX; see
-         the RFC itself for full legal notices.";
-
-      revision 2023-10-23 {
-        description
-          "version -01 as a WG document";
-        reference
-          "draft-ietf-ccamp-client-signal-yang";
-      }
-
-     identity direction {
-       description
-         "Direction information of Client Signal.";
-     }
-
-     identity bidirectional {
-       base direction;
-       description
-         "Client Signal is bi-directional.";
-     }
-
-     identity unidirectional {
-       base direction;
-       description
-         "Client Signal is uni-directional.";
-     }
-
-   }
diff --git a/src/nbi/service/rest_server/nbi_plugins/tfs_api/__init__.py b/src/nbi/service/rest_server/nbi_plugins/tfs_api/__init__.py
index e67c297bc8246d322e3acb2a803a74edb0a36305..4443d7e2454dd0f612a1074993a56ab84f230db9 100644
--- a/src/nbi/service/rest_server/nbi_plugins/tfs_api/__init__.py
+++ b/src/nbi/service/rest_server/nbi_plugins/tfs_api/__init__.py
@@ -14,6 +14,7 @@
 
 from nbi.service.rest_server.RestServer import RestServer
 from nbi.service.rest_server.nbi_plugins.ietf_hardware import Hardware, HardwareMultipleDevices
+from nbi.service.rest_server.nbi_plugins.ietf_network_new import Networks
 from .Resources import (
     Connection, ConnectionIds, Connections,
     Context, ContextIds, Contexts,
@@ -64,6 +65,8 @@ RESOURCES = [
     ('api.policyrule_ids', PolicyRuleIds, '/policyrule_ids'),
     ('api.policyrules',    PolicyRules,   '/policyrules'),
     ('api.policyrule',     PolicyRule,    '/policyrule/<path:policyrule_uuid>'),
+
+    ('api.networksl3'    , Networks, '/networks')
 ]
 
 def register_tfs_api(rest_server : RestServer):
diff --git a/src/webui/service/templates/main/debug.html b/src/webui/service/templates/main/debug.html
index 8956856699dc022b826a9384a2df6ac7b28a3e87..e6965cb55fff28794cf8e240be871d82dd021980 100644
--- a/src/webui/service/templates/main/debug.html
+++ b/src/webui/service/templates/main/debug.html
@@ -24,6 +24,7 @@
         <li><a class="nav-link" href="/tfs-api/dummy_contexts" id="dummy_contexts_link" target="dummy_contexts">Dummy Contexts</a></li>
         <li><a class="nav-link" href="/tfs-api/devices" id="devices_link" target="devices">Devices</a></li>
         <li><a class="nav-link" href="/tfs-api/links" id="links_link" target="links">Links</a></li>
+        <li><a class="nav-link" href="/tfs-api/networks" id="networks_link" target="networks">Networks</a></li>
     </ul>
 
 {% endblock %}