A YANG Data Model for WSON (Wavelength Switched Optical Networks)
draft-ietf-ccamp-wson-yang-28

Document Type Active Internet-Draft (ccamp WG)
Authors Haomian Zheng  , Young Lee  , Aihua Guo  , Victor Lopez  , Daniel King 
Last updated 2021-05-07 (latest revision 2020-12-29)
Replaces draft-lee-ccamp-wson-yang
Stream Internet Engineering Task Force (IETF)
Intended RFC status Proposed Standard
Formats plain text xml pdf htmlized bibtex
Yang Validation 0 errors, 0 warnings.
Reviews
Additional Resources
- Yang catalog entry for ietf-wson-topology@2020-10-16.yang
- Yang impact analysis for draft-ietf-ccamp-wson-yang
- Mailing list discussion
Stream WG state Submitted to IESG for Publication
Document shepherd Daniele Ceccarelli
Shepherd write-up Show (last changed 2020-06-15)
IESG IESG state RFC Ed Queue
Action Holders
(None)
Consensus Boilerplate Yes
Telechat date
Responsible AD Deborah Brungard
Send notices to Daniele Ceccarelli <daniele.ceccarelli@ericsson.com>
IANA IANA review state IANA OK - Actions Needed
IANA action state RFC-Ed-Ack
IANA expert review state Expert Reviews OK
RFC Editor RFC Editor state RFC-EDITOR
Details
CCAMP Working Group                                             H. Zheng
Internet-Draft                                       Huawei Technologies
Intended status: Standards Track                                  Y. Lee
Expires: July 2, 2021                                            Samsung
                                                                  A. Guo
                                                               Futurewei
                                                                V. Lopez
                                                              Telefonica
                                                                 D. King
                                                 University of Lancaster
                                                       December 29, 2020

   A YANG Data Model for WSON (Wavelength Switched Optical Networks)
                     draft-ietf-ccamp-wson-yang-28

Abstract

   This document provides a YANG data model for the routing and
   wavelength assignment (RWA) TE topology in wavelength switched
   optical networks (WSONs).  The YANG data model defined in this
   document conforms to the Network Management Datastore Architecture
   (NMDA).

Status of This Memo

   This Internet-Draft is submitted in full conformance with the
   provisions of BCP 78 and BCP 79.

   Internet-Drafts are working documents of the Internet Engineering
   Task Force (IETF).  Note that other groups may also distribute
   working documents as Internet-Drafts.  The list of current Internet-
   Drafts is at https://datatracker.ietf.org/drafts/current/.

   Internet-Drafts are draft documents valid for a maximum of six months
   and may be updated, replaced, or obsoleted by other documents at any
   time.  It is inappropriate to use Internet-Drafts as reference
   material or to cite them other than as "work in progress."

   This Internet-Draft will expire on July 2, 2021.

Copyright Notice

   Copyright (c) 2020 IETF Trust and the persons identified as the
   document authors.  All rights reserved.

   This document is subject to BCP 78 and the IETF Trust's Legal
   Provisions Relating to IETF Documents

Zheng, et al.             Expires July 2, 2021                  [Page 1]
Internet-Draft          WSON Topology YANG Model           December 2020

   (https://trustee.ietf.org/license-info) in effect on the date of
   publication of this document.  Please review these documents
   carefully, as they describe your rights and restrictions with respect
   to this document.  Code Components extracted from this document must
   include Simplified BSD License text as described in Section 4.e of
   the Trust Legal Provisions and are provided without warranty as
   described in the Simplified BSD License.

Table of Contents

   1.  Introduction  . . . . . . . . . . . . . . . . . . . . . . . .   2
     1.1.  Terminology and Notations . . . . . . . . . . . . . . . .   3
     1.2.  Tree Diagram  . . . . . . . . . . . . . . . . . . . . . .   3
     1.3.  Prefix in Data Node Names . . . . . . . . . . . . . . . .   4
   2.  YANG Model (Tree Structure) for WSON topology . . . . . . . .   4
   3.  The YANG Code for WSON topology . . . . . . . . . . . . . . .  24
   4.  Security Considerations . . . . . . . . . . . . . . . . . . .  58
   5.  IANA Considerations . . . . . . . . . . . . . . . . . . . . .  59
   6.  Contributors  . . . . . . . . . . . . . . . . . . . . . . . .  59
   7.  References  . . . . . . . . . . . . . . . . . . . . . . . . .  60
     7.1.  Normative References  . . . . . . . . . . . . . . . . . .  60
     7.2.  Informative References  . . . . . . . . . . . . . . . . .  61
   Authors' Addresses  . . . . . . . . . . . . . . . . . . . . . . .  62

1.  Introduction

   This document provides a YANG data model for the routing and
   wavelength assignment (RWA) Traffic Engineering (TE) topology in
   transparent wavelength switched optical networks (WSONs).  The YANG
   model described in this document is a WSON technology-specific YANG
   model based on the information model developed in [RFC7446] and the
   two encoding documents [RFC7581] and [RFC7579] that developed
   protocol independent encodings based on [RFC7446].

   [ITU-Tg6982] defines amplified multichannel dense wavelength division
   multiplexing applications with single channel optical interfaces.
   The YANG data model defined in this document refers to the standard
   application mode defined in [ITU-Tg6982].

   What is not in scope of this document is both impairment-aware
   optical networks and flexi-grid.  Refer to
   [I-D.ietf-ccamp-optical-impairment-topology-yang] for impairment-
   aware optical network topology model and
   [I-D.ietf-ccamp-flexigrid-yang] for flexi-grid optical network
   topology model.

   Additionally, transponders and resource blocks (e.g., 3R
   Regeneration) models are not in the scope of this document.

Zheng, et al.             Expires July 2, 2021                  [Page 2]
Internet-Draft          WSON Topology YANG Model           December 2020

   This document defines one YANG model: ietf-wson-topology (Section 3).
   This document augments the generic TE topology draft [RFC8795].

   There are multiple applications for the yang data model defined in
   this document.  For example, nodes within the network can use the
   data model to capture their understanding of the overall WSON
   topology and expose it to a controller.  A controller can further
   propagate the topology to other controllers.  The YANG model is used
   by NETCONF [RFC6020], [RFC8341] or a RESTCONF [RFC8040] protocol.
   The YANG data model defined in this document conforms to the Network
   Management Datastore Architecture [RFC8342].

1.1.  Terminology and Notations

   Refer to [RFC7446] and [RFC7581] for the key terms used in this
   document.  The following terms are defined in [RFC7950] and are not
   redefined here:

   o  client

   o  server

   o  augment

   o  data model

   o  data node

   The following terms are defined in [RFC6241] and are not redefined
   here:

   o  configuration data

   o  state data

   The terminology for describing YANG data models is found in
   [RFC7950].

1.2.  Tree Diagram

   A simplified graphical representation of the data model is used in
   Section 2 of this this document.  The meaning of the symbols in these
   diagrams is defined in [RFC8340].

Zheng, et al.             Expires July 2, 2021                  [Page 3]
Internet-Draft          WSON Topology YANG Model           December 2020

1.3.  Prefix in Data Node Names

   In this document, names of data nodes and other data model objects
   are prefixed using the standard prefix associated with the
   corresponding YANG imported modules, as shown in the following table.

     +-------------+-------------------------+------------------------+
     | Prefix      | YANG module             | Reference              |
     +-------------+-------------------------+------------------------+
     | l0-types    | ietf-layer0-types       |[ietf-ccamp-layer0-types]|
     | wson        | ietf-wson-topology      | [RFCXXXX]              |
     | nw          | ietf-network            | [RFC8345]              |
     | nt          | ietf-network-topology   | [RFC8345]              |
     | tet         | ietf-te-topology        | [RFC8795]              |
     +-------------+-------------------------+------------------------+

   Note: The RFC Editor will replace XXXX with the number assigned to
   the RFC once this draft becomes an RFC.

2.  YANG Model (Tree Structure) for WSON topology

   module: ietf-wson-topology
     augment /nw:networks/nw:network/nw:network-types/tet:te-topology:
       +--rw wson-topology!
     augment /nw:networks/nw:network/nw:node/tet:te
               /tet:te-node-attributes:
       +--rw wson-node!
          +--rw is-reconfigurable-node?   boolean
     augment /nw:networks/nw:network/nw:node/tet:te
               /tet:te-node-attributes/tet:connectivity-matrices
               /tet:label-restrictions/tet:label-restriction:
       +--rw grid-type?   identityref
       +--rw priority?    uint8
     augment /nw:networks/nw:network/nw:node/tet:te
               /tet:te-node-attributes/tet:connectivity-matrices
               /tet:connectivity-matrix/tet:from/tet:label-restrictions
               /tet:label-restriction:
       +--rw grid-type?   identityref
       +--rw priority?    uint8
     augment /nw:networks/nw:network/nw:node/tet:te
               /tet:te-node-attributes/tet:connectivity-matrices
               /tet:connectivity-matrix/tet:to/tet:label-restrictions
               /tet:label-restriction:
       +--rw grid-type?   identityref

Zheng, et al.             Expires July 2, 2021                  [Page 4]
Internet-Draft          WSON Topology YANG Model           December 2020

       +--rw priority?    uint8
     augment /nw:networks/nw:network/nw:node/tet:te
               /tet:information-source-entry/tet:connectivity-matrices
               /tet:label-restrictions/tet:label-restriction:
       +--ro grid-type?   identityref
       +--ro priority?    uint8
     augment /nw:networks/nw:network/nw:node/tet:te
               /tet:information-source-entry/tet:connectivity-matrices
               /tet:connectivity-matrix/tet:from/tet:label-restrictions
               /tet:label-restriction:
       +--ro grid-type?   identityref
       +--ro priority?    uint8
     augment /nw:networks/nw:network/nw:node/tet:te
               /tet:information-source-entry/tet:connectivity-matrices
               /tet:connectivity-matrix/tet:to/tet:label-restrictions
               /tet:label-restriction:
       +--ro grid-type?   identityref
       +--ro priority?    uint8
     augment /nw:networks/nw:network/nw:node/tet:te
               /tet:tunnel-termination-point
               /tet:local-link-connectivities/tet:label-restrictions
               /tet:label-restriction:
       +--rw grid-type?   identityref
       +--rw priority?    uint8
     augment /nw:networks/nw:network/nw:node/tet:te
               /tet:tunnel-termination-point
               /tet:local-link-connectivities
               /tet:local-link-connectivity/tet:label-restrictions
               /tet:label-restriction:
       +--rw grid-type?   identityref
       +--rw priority?    uint8
     augment /nw:networks/nw:network/nt:link/tet:te
               /tet:te-link-attributes/tet:label-restrictions
               /tet:label-restriction:
       +--rw grid-type?   identityref
       +--rw priority?    uint8
     augment /nw:networks/nw:network/nt:link/tet:te
               /tet:information-source-entry/tet:label-restrictions
               /tet:label-restriction:
       +--ro grid-type?   identityref
       +--ro priority?    uint8
     augment /nw:networks/tet:te/tet:templates/tet:link-template
               /tet:te-link-attributes/tet:label-restrictions
               /tet:label-restriction:
       +--rw grid-type?   identityref
       +--rw priority?    uint8
     augment /nw:networks/nw:network/nw:node/tet:te
               /tet:te-node-attributes/tet:connectivity-matrices

Zheng, et al.             Expires July 2, 2021                  [Page 5]
Internet-Draft          WSON Topology YANG Model           December 2020

               /tet:label-restrictions/tet:label-restriction
               /tet:label-start/tet:te-label/tet:technology:
       +--:(wson)
          +--rw (grid-type)?
             +--:(dwdm)
             |  +--rw dwdm-n?   l0-types:dwdm-n
             +--:(cwdm)
                +--rw cwdm-n?   l0-types:cwdm-n
     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:
       +--:(wson)
          +--rw (grid-type)?
             +--:(dwdm)
             |  +--rw dwdm-n?   l0-types:dwdm-n
             +--:(cwdm)
                +--rw cwdm-n?   l0-types:cwdm-n
     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:
       +--:(wson)
          +--rw (l0-grid-type)?
             +--:(dwdm)
             |  +--rw wson-dwdm-channel-spacing?   identityref
             +--:(cwdm)
                +--rw wson-cwdm-channel-spacing?   identityref
     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:
       +--:(wson)
          +--rw (grid-type)?
             +--:(dwdm)
             |  +--rw (single-or-super-channel)?
             |     +--:(single)
             |     |  +--rw dwdm-n?              l0-types:dwdm-n
             |     +--:(super)
             |        +--rw subcarrier-dwdm-n*   l0-types:dwdm-n
             +--:(cwdm)
                +--rw cwdm-n?                    l0-types:cwdm-n
     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:
       +--:(wson)
          +--rw (grid-type)?

Zheng, et al.             Expires July 2, 2021                  [Page 6]
Internet-Draft          WSON Topology YANG Model           December 2020

             +--:(dwdm)
             |  +--rw (single-or-super-channel)?
             |     +--:(single)
             |     |  +--rw dwdm-n?              l0-types:dwdm-n
             |     +--:(super)
             |        +--rw subcarrier-dwdm-n*   l0-types:dwdm-n
             +--:(cwdm)
                +--rw cwdm-n?                    l0-types:cwdm-n
     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:
       +--:(wson)
          +--rw (grid-type)?
             +--:(dwdm)
             |  +--rw (single-or-super-channel)?
             |     +--:(single)
             |     |  +--rw dwdm-n?              l0-types:dwdm-n
             |     +--:(super)
             |        +--rw subcarrier-dwdm-n*   l0-types:dwdm-n
             +--:(cwdm)
                +--rw cwdm-n?                    l0-types:cwdm-n
     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:
       +--:(wson)
          +--rw (grid-type)?
             +--:(dwdm)
             |  +--rw (single-or-super-channel)?
             |     +--:(single)
             |     |  +--rw dwdm-n?              l0-types:dwdm-n
             |     +--:(super)
             |        +--rw subcarrier-dwdm-n*   l0-types:dwdm-n
             +--:(cwdm)
                +--rw cwdm-n?                    l0-types:cwdm-n
     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:
       +--:(wson)

Zheng, et al.             Expires July 2, 2021                  [Page 7]
Internet-Draft          WSON Topology YANG Model           December 2020

          +--ro (grid-type)?
             +--:(dwdm)
             |  +--ro (single-or-super-channel)?
             |     +--:(single)
             |     |  +--ro dwdm-n?              l0-types:dwdm-n
             |     +--:(super)
             |        +--ro subcarrier-dwdm-n*   l0-types:dwdm-n
             +--:(cwdm)
                +--ro cwdm-n?                    l0-types:cwdm-n
     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:
       +--:(wson)
          +--rw (grid-type)?
             +--:(dwdm)
             |  +--rw dwdm-n?   l0-types:dwdm-n
             +--:(cwdm)
                +--rw cwdm-n?   l0-types:cwdm-n
     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:
       +--:(wson)
          +--rw (grid-type)?
             +--:(dwdm)
             |  +--rw dwdm-n?   l0-types:dwdm-n
             +--:(cwdm)
                +--rw cwdm-n?   l0-types:cwdm-n
     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:
       +--:(wson)
          +--rw (l0-grid-type)?
             +--:(dwdm)
             |  +--rw wson-dwdm-channel-spacing?   identityref
             +--:(cwdm)
                +--rw wson-cwdm-channel-spacing?   identityref
     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:
       +--:(wson)
          +--rw (grid-type)?

Zheng, et al.             Expires July 2, 2021                  [Page 8]
Internet-Draft          WSON Topology YANG Model           December 2020

             +--:(dwdm)
             |  +--rw dwdm-n?   l0-types:dwdm-n
             +--:(cwdm)
                +--rw cwdm-n?   l0-types:cwdm-n
     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:
       +--:(wson)
          +--rw (grid-type)?
             +--:(dwdm)
             |  +--rw dwdm-n?   l0-types:dwdm-n
             +--:(cwdm)
                +--rw cwdm-n?   l0-types:cwdm-n
     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:
       +--:(wson)
          +--rw (l0-grid-type)?
             +--:(dwdm)
             |  +--rw wson-dwdm-channel-spacing?   identityref
             +--:(cwdm)
                +--rw wson-cwdm-channel-spacing?   identityref
     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:
       +--:(wson)
          +--rw (grid-type)?
             +--:(dwdm)
             |  +--rw (single-or-super-channel)?
             |     +--:(single)
             |     |  +--rw dwdm-n?              l0-types:dwdm-n
             |     +--:(super)
             |        +--rw subcarrier-dwdm-n*   l0-types:dwdm-n
             +--:(cwdm)
                +--rw cwdm-n?                    l0-types:cwdm-n
     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:
       +--:(wson)
          +--rw (grid-type)?
             +--:(dwdm)

Zheng, et al.             Expires July 2, 2021                  [Page 9]
Internet-Draft          WSON Topology YANG Model           December 2020

             |  +--rw (single-or-super-channel)?
             |     +--:(single)
             |     |  +--rw dwdm-n?              l0-types:dwdm-n
             |     +--:(super)
             |        +--rw subcarrier-dwdm-n*   l0-types:dwdm-n
             +--:(cwdm)
                +--rw cwdm-n?                    l0-types:cwdm-n
     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:
       +--:(wson)
          +--rw (grid-type)?
             +--:(dwdm)
             |  +--rw (single-or-super-channel)?
             |     +--:(single)
             |     |  +--rw dwdm-n?              l0-types:dwdm-n
             |     +--:(super)
             |        +--rw subcarrier-dwdm-n*   l0-types:dwdm-n
             +--:(cwdm)
                +--rw cwdm-n?                    l0-types:cwdm-n
     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:
       +--:(wson)
          +--rw (grid-type)?
             +--:(dwdm)
             |  +--rw (single-or-super-channel)?
             |     +--:(single)
             |     |  +--rw dwdm-n?              l0-types:dwdm-n
             |     +--:(super)
             |        +--rw subcarrier-dwdm-n*   l0-types:dwdm-n
             +--:(cwdm)
                +--rw cwdm-n?                    l0-types:cwdm-n
     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:
       +--:(wson)
          +--ro (grid-type)?

Zheng, et al.             Expires July 2, 2021                 [Page 10]
Internet-Draft          WSON Topology YANG Model           December 2020

             +--:(dwdm)
             |  +--ro (single-or-super-channel)?
             |     +--:(single)
             |     |  +--ro dwdm-n?              l0-types:dwdm-n
             |     +--:(super)
             |        +--ro subcarrier-dwdm-n*   l0-types:dwdm-n
             +--:(cwdm)
                +--ro cwdm-n?                    l0-types:cwdm-n
     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:
       +--:(wson)
          +--ro (grid-type)?
             +--:(dwdm)
             |  +--ro dwdm-n?   l0-types:dwdm-n
             +--:(cwdm)
                +--ro cwdm-n?   l0-types:cwdm-n
     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:
       +--:(wson)
          +--ro (grid-type)?
             +--:(dwdm)
             |  +--ro dwdm-n?   l0-types:dwdm-n
             +--:(cwdm)
                +--ro cwdm-n?   l0-types:cwdm-n
     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:
       +--:(wson)
          +--ro (l0-grid-type)?
             +--:(dwdm)
             |  +--ro wson-dwdm-channel-spacing?   identityref
             +--:(cwdm)
                +--ro wson-cwdm-channel-spacing?   identityref
     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:
       +--:(wson)
          +--ro (grid-type)?
             +--:(dwdm)
             |  +--ro (single-or-super-channel)?
             |     +--:(single)
             |     |  +--ro dwdm-n?              l0-types:dwdm-n

Zheng, et al.             Expires July 2, 2021                 [Page 11]
Internet-Draft          WSON Topology YANG Model           December 2020

             |     +--:(super)
             |        +--ro subcarrier-dwdm-n*   l0-types:dwdm-n
             +--:(cwdm)
                +--ro cwdm-n?                    l0-types:cwdm-n
     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:
       +--:(wson)
          +--ro (grid-type)?
             +--:(dwdm)
             |  +--ro (single-or-super-channel)?
             |     +--:(single)
             |     |  +--ro dwdm-n?              l0-types:dwdm-n
             |     +--:(super)
             |        +--ro subcarrier-dwdm-n*   l0-types:dwdm-n
             +--:(cwdm)
                +--ro cwdm-n?                    l0-types:cwdm-n
     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:
       +--:(wson)
          +--ro (grid-type)?
             +--:(dwdm)
             |  +--ro (single-or-super-channel)?
             |     +--:(single)
             |     |  +--ro dwdm-n?              l0-types:dwdm-n
             |     +--:(super)
             |        +--ro subcarrier-dwdm-n*   l0-types:dwdm-n
             +--:(cwdm)
                +--ro cwdm-n?                    l0-types:cwdm-n
     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:
       +--:(wson)
          +--ro (grid-type)?
             +--:(dwdm)
             |  +--ro (single-or-super-channel)?
             |     +--:(single)
             |     |  +--ro dwdm-n?              l0-types:dwdm-n

Zheng, et al.             Expires July 2, 2021                 [Page 12]
Internet-Draft          WSON Topology YANG Model           December 2020

             |     +--:(super)
             |        +--ro subcarrier-dwdm-n*   l0-types:dwdm-n
             +--:(cwdm)
                +--ro cwdm-n?                    l0-types:cwdm-n
     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:
       +--:(wson)
          +--ro (grid-type)?
             +--:(dwdm)
             |  +--ro (single-or-super-channel)?
             |     +--:(single)
             |     |  +--ro dwdm-n?              l0-types:dwdm-n
             |     +--:(super)
             |        +--ro subcarrier-dwdm-n*   l0-types:dwdm-n
             +--:(cwdm)
                +--ro cwdm-n?                    l0-types:cwdm-n
     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:
       +--:(wson)
          +--ro (grid-type)?
             +--:(dwdm)
             |  +--ro dwdm-n?   l0-types:dwdm-n
             +--:(cwdm)
                +--ro cwdm-n?   l0-types:cwdm-n
     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:
       +--:(wson)
          +--ro (grid-type)?
             +--:(dwdm)
             |  +--ro dwdm-n?   l0-types:dwdm-n
             +--:(cwdm)
                +--ro cwdm-n?   l0-types:cwdm-n
     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:
       +--:(wson)
          +--ro (l0-grid-type)?
             +--:(dwdm)

Zheng, et al.             Expires July 2, 2021                 [Page 13]
Internet-Draft          WSON Topology YANG Model           December 2020

             |  +--ro wson-dwdm-channel-spacing?   identityref
             +--:(cwdm)
                +--ro wson-cwdm-channel-spacing?   identityref
     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:
       +--:(wson)
          +--ro (grid-type)?
             +--:(dwdm)
             |  +--ro dwdm-n?   l0-types:dwdm-n
             +--:(cwdm)
                +--ro cwdm-n?   l0-types:cwdm-n
     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:
       +--:(wson)
          +--ro (grid-type)?
             +--:(dwdm)
             |  +--ro dwdm-n?   l0-types:dwdm-n
             +--:(cwdm)
                +--ro cwdm-n?   l0-types:cwdm-n
     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:
       +--:(wson)
          +--ro (l0-grid-type)?
             +--:(dwdm)
             |  +--ro wson-dwdm-channel-spacing?   identityref
             +--:(cwdm)
                +--ro wson-cwdm-channel-spacing?   identityref
     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:
       +--:(wson)
          +--ro (grid-type)?
             +--:(dwdm)
             |  +--ro (single-or-super-channel)?
             |     +--:(single)
             |     |  +--ro dwdm-n?              l0-types:dwdm-n
             |     +--:(super)
             |        +--ro subcarrier-dwdm-n*   l0-types:dwdm-n

Zheng, et al.             Expires July 2, 2021                 [Page 14]
Internet-Draft          WSON Topology YANG Model           December 2020

             +--:(cwdm)
                +--ro cwdm-n?                    l0-types:cwdm-n
     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:
       +--:(wson)
          +--ro (grid-type)?
             +--:(dwdm)
             |  +--ro (single-or-super-channel)?
             |     +--:(single)
             |     |  +--ro dwdm-n?              l0-types:dwdm-n
             |     +--:(super)
             |        +--ro subcarrier-dwdm-n*   l0-types:dwdm-n
             +--:(cwdm)
                +--ro cwdm-n?                    l0-types:cwdm-n
     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:
       +--:(wson)
          +--ro (grid-type)?
             +--:(dwdm)
             |  +--ro (single-or-super-channel)?
             |     +--:(single)
             |     |  +--ro dwdm-n?              l0-types:dwdm-n
             |     +--:(super)
             |        +--ro subcarrier-dwdm-n*   l0-types:dwdm-n
             +--:(cwdm)
                +--ro cwdm-n?                    l0-types:cwdm-n
     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:
       +--:(wson)
          +--ro (grid-type)?
             +--:(dwdm)
             |  +--ro (single-or-super-channel)?
             |     +--:(single)
             |     |  +--ro dwdm-n?              l0-types:dwdm-n
             |     +--:(super)

Zheng, et al.             Expires July 2, 2021                 [Page 15]
Internet-Draft          WSON Topology YANG Model           December 2020

             |        +--ro subcarrier-dwdm-n*   l0-types:dwdm-n
             +--:(cwdm)
                +--ro cwdm-n?                    l0-types:cwdm-n
     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:
       +--:(wson)
          +--ro (grid-type)?
             +--:(dwdm)
             |  +--ro (single-or-super-channel)?
             |     +--:(single)
             |     |  +--ro dwdm-n?              l0-types:dwdm-n
             |     +--:(super)
             |        +--ro subcarrier-dwdm-n*   l0-types:dwdm-n
             +--:(cwdm)
                +--ro cwdm-n?                    l0-types:cwdm-n
     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:
       +--:(wson)
          +--rw (grid-type)?
             +--:(dwdm)
             |  +--rw dwdm-n?   l0-types:dwdm-n
             +--:(cwdm)
                +--rw cwdm-n?   l0-types:cwdm-n
     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:
       +--:(wson)
          +--rw (grid-type)?
             +--:(dwdm)
             |  +--rw dwdm-n?   l0-types:dwdm-n
             +--:(cwdm)
                +--rw cwdm-n?   l0-types:cwdm-n
     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:
       +--:(wson)
          +--rw (l0-grid-type)?
             +--:(dwdm)
             |  +--rw wson-dwdm-channel-spacing?   identityref

Zheng, et al.             Expires July 2, 2021                 [Page 16]
Internet-Draft          WSON Topology YANG Model           December 2020

             +--:(cwdm)
                +--rw wson-cwdm-channel-spacing?   identityref
     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:
       +--:(wson)
          +--rw (grid-type)?
             +--:(dwdm)
             |  +--rw (single-or-super-channel)?
             |     +--:(single)
             |     |  +--rw dwdm-n?              l0-types:dwdm-n
             |     +--:(super)
             |        +--rw subcarrier-dwdm-n*   l0-types:dwdm-n
             +--:(cwdm)
                +--rw cwdm-n?                    l0-types:cwdm-n
     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:
       +--:(wson)
          +--rw (grid-type)?
             +--:(dwdm)
             |  +--rw (single-or-super-channel)?
             |     +--:(single)
             |     |  +--rw dwdm-n?              l0-types:dwdm-n
             |     +--:(super)
             |        +--rw subcarrier-dwdm-n*   l0-types:dwdm-n
             +--:(cwdm)
                +--rw cwdm-n?                    l0-types:cwdm-n
     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:
       +--:(wson)
          +--rw (grid-type)?
             +--:(dwdm)
             |  +--rw (single-or-super-channel)?
             |     +--:(single)
             |     |  +--rw dwdm-n?              l0-types:dwdm-n
             |     +--:(super)
             |        +--rw subcarrier-dwdm-n*   l0-types:dwdm-n
             +--:(cwdm)

Zheng, et al.             Expires July 2, 2021                 [Page 17]
Internet-Draft          WSON Topology YANG Model           December 2020

                +--rw cwdm-n?                    l0-types:cwdm-n
     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:
       +--:(wson)
          +--rw (grid-type)?
             +--:(dwdm)
             |  +--rw (single-or-super-channel)?
             |     +--:(single)
             |     |  +--rw dwdm-n?              l0-types:dwdm-n
             |     +--:(super)
             |        +--rw subcarrier-dwdm-n*   l0-types:dwdm-n
             +--:(cwdm)
                +--rw cwdm-n?                    l0-types:cwdm-n
     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:
       +--:(wson)
          +--ro (grid-type)?
             +--:(dwdm)
             |  +--ro (single-or-super-channel)?
             |     +--:(single)
             |     |  +--ro dwdm-n?              l0-types:dwdm-n
             |     +--:(super)
             |        +--ro subcarrier-dwdm-n*   l0-types:dwdm-n
             +--:(cwdm)
                +--ro cwdm-n?                    l0-types:cwdm-n
     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:
       +--:(wson)
          +--rw (grid-type)?
             +--:(dwdm)
             |  +--rw dwdm-n?   l0-types:dwdm-n
             +--:(cwdm)
                +--rw cwdm-n?   l0-types:cwdm-n
     augment /nw:networks/nw:network/nw:node/tet:te
               /tet:tunnel-termination-point
               /tet:local-link-connectivities

Zheng, et al.             Expires July 2, 2021                 [Page 18]
Internet-Draft          WSON Topology YANG Model           December 2020

               /tet:local-link-connectivity/tet:label-restrictions
               /tet:label-restriction/tet:label-end/tet:te-label
               /tet:technology:
       +--:(wson)
          +--rw (grid-type)?
             +--:(dwdm)
             |  +--rw dwdm-n?   l0-types:dwdm-n
             +--:(cwdm)
                +--rw cwdm-n?   l0-types:cwdm-n
     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:
       +--:(wson)
          +--rw (l0-grid-type)?
             +--:(dwdm)
             |  +--rw wson-dwdm-channel-spacing?   identityref
             +--:(cwdm)
                +--rw wson-cwdm-channel-spacing?   identityref
     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:
       +--:(wson)
          +--rw (grid-type)?
             +--:(dwdm)
             |  +--rw (single-or-super-channel)?
             |     +--:(single)
             |     |  +--rw dwdm-n?              l0-types:dwdm-n
             |     +--:(super)
             |        +--rw subcarrier-dwdm-n*   l0-types:dwdm-n
             +--:(cwdm)
                +--rw cwdm-n?                    l0-types:cwdm-n
     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:
       +--:(wson)
          +--rw (grid-type)?
             +--:(dwdm)
             |  +--rw (single-or-super-channel)?
             |     +--:(single)
             |     |  +--rw dwdm-n?              l0-types:dwdm-n

Zheng, et al.             Expires July 2, 2021                 [Page 19]
Internet-Draft          WSON Topology YANG Model           December 2020

             |     +--:(super)
             |        +--rw subcarrier-dwdm-n*   l0-types:dwdm-n
             +--:(cwdm)
                +--rw cwdm-n?                    l0-types:cwdm-n
     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:
       +--:(wson)
          +--rw (grid-type)?
             +--:(dwdm)
             |  +--rw (single-or-super-channel)?
             |     +--:(single)
             |     |  +--rw dwdm-n?              l0-types:dwdm-n
             |     +--:(super)
             |        +--rw subcarrier-dwdm-n*   l0-types:dwdm-n
             +--:(cwdm)
                +--rw cwdm-n?                    l0-types:cwdm-n
     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:
       +--:(wson)
          +--rw (grid-type)?
             +--:(dwdm)
             |  +--rw (single-or-super-channel)?
             |     +--:(single)
             |     |  +--rw dwdm-n?              l0-types:dwdm-n
             |     +--:(super)
             |        +--rw subcarrier-dwdm-n*   l0-types:dwdm-n
             +--:(cwdm)
                +--rw cwdm-n?                    l0-types:cwdm-n
     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:
       +--:(wson)
          +--ro (grid-type)?

Zheng, et al.             Expires July 2, 2021                 [Page 20]
Internet-Draft          WSON Topology YANG Model           December 2020

             +--:(dwdm)
             |  +--ro (single-or-super-channel)?
             |     +--:(single)
             |     |  +--ro dwdm-n?              l0-types:dwdm-n
             |     +--:(super)
             |        +--ro subcarrier-dwdm-n*   l0-types:dwdm-n
             +--:(cwdm)
                +--ro cwdm-n?                    l0-types:cwdm-n
     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:
       +--:(wson)
          +--rw (grid-type)?
             +--:(dwdm)
             |  +--rw (single-or-super-channel)?
             |     +--:(single)
             |     |  +--rw dwdm-n?              l0-types:dwdm-n
             |     +--:(super)
             |        +--rw subcarrier-dwdm-n*   l0-types:dwdm-n
             +--:(cwdm)
                +--rw cwdm-n?                    l0-types:cwdm-n
     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:
       +--:(wson)
          +--rw (grid-type)?
             +--:(dwdm)
             |  +--rw (single-or-super-channel)?
             |     +--:(single)
             |     |  +--rw dwdm-n?              l0-types:dwdm-n
             |     +--:(super)
             |        +--rw subcarrier-dwdm-n*   l0-types:dwdm-n
             +--:(cwdm)
                +--rw cwdm-n?                    l0-types:cwdm-n
     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:
       +--:(wson)
          +--rw (grid-type)?
             +--:(dwdm)
             |  +--rw dwdm-n?   l0-types:dwdm-n
             +--:(cwdm)
                +--rw cwdm-n?   l0-types:cwdm-n
     augment /nw:networks/nw:network/nt:link/tet:te
               /tet:te-link-attributes/tet:label-restrictions

Zheng, et al.             Expires July 2, 2021                 [Page 21]
Internet-Draft          WSON Topology YANG Model           December 2020

               /tet:label-restriction/tet:label-end/tet:te-label
               /tet:technology:
       +--:(wson)
          +--rw (grid-type)?
             +--:(dwdm)
             |  +--rw dwdm-n?   l0-types:dwdm-n
             +--:(cwdm)
                +--rw cwdm-n?   l0-types:cwdm-n
     augment /nw:networks/nw:network/nt:link/tet:te
               /tet:te-link-attributes/tet:label-restrictions
               /tet:label-restriction/tet:label-step/tet:technology:
       +--:(wson)
          +--rw (l0-grid-type)?
             +--:(dwdm)
             |  +--rw wson-dwdm-channel-spacing?   identityref
             +--:(cwdm)
                +--rw wson-cwdm-channel-spacing?   identityref
     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:
       +--:(wson)
          +--ro (grid-type)?
             +--:(dwdm)
             |  +--ro dwdm-n?   l0-types:dwdm-n
             +--:(cwdm)
                +--ro cwdm-n?   l0-types:cwdm-n
     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:
       +--:(wson)
          +--ro (grid-type)?
             +--:(dwdm)
             |  +--ro dwdm-n?   l0-types:dwdm-n
             +--:(cwdm)
                +--ro cwdm-n?   l0-types:cwdm-n
     augment /nw:networks/nw:network/nt:link/tet:te
               /tet:information-source-entry/tet:label-restrictions
               /tet:label-restriction/tet:label-step/tet:technology:
       +--:(wson)
          +--ro (l0-grid-type)?
             +--:(dwdm)
             |  +--ro wson-dwdm-channel-spacing?   identityref
             +--:(cwdm)
                +--ro wson-cwdm-channel-spacing?   identityref
     augment /nw:networks/tet:te/tet:templates/tet:link-template
               /tet:te-link-attributes/tet:underlay/tet:primary-path

Zheng, et al.             Expires July 2, 2021                 [Page 22]
Internet-Draft          WSON Topology YANG Model           December 2020

               /tet:path-element/tet:type/tet:label/tet:label-hop
               /tet:te-label/tet:technology:
       +--:(wson)
          +--rw (grid-type)?
             +--:(dwdm)
             |  +--rw (single-or-super-channel)?
             |     +--:(single)
             |     |  +--rw dwdm-n?              l0-types:dwdm-n
             |     +--:(super)
             |        +--rw subcarrier-dwdm-n*   l0-types:dwdm-n
             +--:(cwdm)
                +--rw cwdm-n?                    l0-types:cwdm-n
     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:
       +--:(wson)
          +--rw (grid-type)?
             +--:(dwdm)
             |  +--rw (single-or-super-channel)?
             |     +--:(single)
             |     |  +--rw dwdm-n?              l0-types:dwdm-n
             |     +--:(super)
             |        +--rw subcarrier-dwdm-n*   l0-types:dwdm-n
             +--:(cwdm)
                +--rw cwdm-n?                    l0-types:cwdm-n
     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:
       +--:(wson)
          +--rw (grid-type)?
             +--:(dwdm)
             |  +--rw dwdm-n?   l0-types:dwdm-n
             +--:(cwdm)
                +--rw cwdm-n?   l0-types:cwdm-n
     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:
       +--:(wson)
          +--rw (grid-type)?
             +--:(dwdm)
             |  +--rw dwdm-n?   l0-types:dwdm-n
             +--:(cwdm)
                +--rw cwdm-n?   l0-types:cwdm-n
     augment /nw:networks/tet:te/tet:templates/tet:link-template
               /tet:te-link-attributes/tet:label-restrictions

Zheng, et al.             Expires July 2, 2021                 [Page 23]
Internet-Draft          WSON Topology YANG Model           December 2020

               /tet:label-restriction/tet:label-step/tet:technology:
       +--:(wson)
          +--rw (l0-grid-type)?
             +--:(dwdm)
             |  +--rw wson-dwdm-channel-spacing?   identityref
             +--:(cwdm)
                +--rw wson-cwdm-channel-spacing?   identityref

3.  The YANG Code for WSON topology

   <CODE BEGINS> file "ietf-wson-topology@2020-10-16.yang"
   module ietf-wson-topology {
     yang-version 1.1;
     namespace "urn:ietf:params:xml:ns:yang:ietf-wson-topology";
     prefix "wson";

     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-layer0-types {
       prefix "l0-types";
       reference
         "RFC XXXX: A YANG Data Model for Layer 0 Types";
     }

   /* Note: The RFC Editor will replace XXXX with the number assigned
      to the RFC once draft-ietf-ccamp-layer0-types becomes an RFC.*/

     organization

Zheng, et al.             Expires July 2, 2021                 [Page 24]
Internet-Draft          WSON Topology YANG Model           December 2020

       "IETF CCAMP Working Group";

     contact
       "WG Web: <http://tools.ietf.org/wg/ccamp/>
        WG List: <mailto:ccamp@ietf.org>

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

        Editor: Young Lee
                <younglee.tx@gmail.com>

        Editor: Aihua Guo
                <aihuaguo.ietf@gmail.com>
        Editor: Victor Lopez
                <victor.lopezalvarez@telefonica.com>

        Editor: Daniel King
                <d.king@lancaster.ac.uk>";

     description
       "This module provides a YANG data model for the routing and
        wavelength assignment (RWA) Traffic Engineering (TE)
        topology in wavelength switched optical networks (WSONs).
        The YANG model described in this document is a WSON
        technology-specific YANG model augmenting the generic TE
        topology module (ietf-te-topology) based on the information
        model developed in RFC 7446 and the two encoding documents
        RFC 7579 and RFC 7581.

        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
        (http://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 2020-10-16 {
       description
         "Initial Version";
       reference
         "RFC XXXX: A YANG Data Model for WSON (Wavelength Switched

Zheng, et al.             Expires July 2, 2021                 [Page 25]
Internet-Draft          WSON Topology YANG Model           December 2020

          Optical Networks)";
       // RFC Ed.: replace XXXX with actual RFC number, update date
       // information and remove this note
     }

     /*
      * Data nodes
      */

     augment "/nw:networks/nw:network/nw:network-types"
           + "/tet:te-topology" {
       description
         "Augment network types to define WSON topology type.";
       container wson-topology {
         presence
           "Its presence identifies the WSON topology type.";
         description
           "Introduce new network type for WSON topology.";
       }
     }

     augment "/nw:networks/nw:network/nw:node/tet:te"
           + "/tet:te-node-attributes" {
       when "/nw:networks/nw:network/nw:network-types"
          + "/tet:te-topology/wson:wson-topology" {
         description
         "Augmentation parameters apply only for networks with
          WSON topology type.";
       }
       description "Augment TE node attributes.";
       container wson-node {
         presence "The TE node is a WSON node.";
         description "WSON node attributes";
         leaf is-reconfigurable-node {
           type boolean;
           default true;
           description
             "Indicates whether the WSON node is reconfigurable:
              - true: the node is reconfigurable, i.e.,
                        it is representing a ROADM node;
              - false: the node is not reconfigurable, i.e.,
                it is representing a FOADM node.";
         }
       }
     }

     /*
      * Augment TE label range information

Zheng, et al.             Expires July 2, 2021                 [Page 26]
Internet-Draft          WSON Topology YANG Model           December 2020

      */

     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/"
          + "wson:wson-topology" {
         description
           "Augmentation parameters apply only for networks with
            WSON topology type.";
       }
       description
         "Augment TE label range information for the TE node
          connectivity matrices.";
       uses l0-types:l0-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/"
          + "wson:wson-topology" {
         description
           "Augmentation parameters apply only for networks with
            WSON topology type.";
       }
       description
         "Augment TE label range information for the source LTP
          of the connectivity matrix entry.";
       uses l0-types:l0-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/"
          + "wson:wson-topology" {
         description
           "Augmentation parameters apply only for networks with
            WSON topology type.";
       }
       description
         "Augment TE label range information for the destination LTP
          of the connectivity matrix entry.";
       uses l0-types:l0-label-range-info;
     }

Zheng, et al.             Expires July 2, 2021                 [Page 27]
Internet-Draft          WSON Topology YANG Model           December 2020

     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/"
          + "wson:wson-topology" {
         description
           "Augmentation parameters apply only for networks with
            WSON topology type.";
       }
       description
         "Augment TE label range information for the TE node
          connectivity matrices information source.";
       uses l0-types:l0-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/"
          + "wson:wson-topology" {
         description
           "Augmentation parameters apply only for networks with
            WSON topology type.";
       }
       description
         "Augment TE label range information for the source LTP
          of the connectivity matrix entry information source.";
       uses l0-types:l0-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/"
          + "wson:wson-topology" {
         description
           "Augmentation parameters apply only for networks with
            WSON topology type.";
       }
       description
         "Augment TE label range information for the destination LTP
          of the connectivity matrix entry information source.";
       uses l0-types:l0-label-range-info;
     }

Zheng, et al.             Expires July 2, 2021                 [Page 28]
Internet-Draft          WSON Topology YANG Model           December 2020

     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/"
          + "wson:wson-topology" {
         description
           "Augmentation parameters apply only for networks with
            WSON topology type.";
       }
       description
         "Augment TE label range information for the TTP
          Local Link Connectivities.";
       uses l0-types:l0-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/"
          + "wson:wson-topology" {
         description
           "Augmentation parameters apply only for networks with
            WSON topology type.";
       }
       description
         "Augment TE label range information for the TTP
          Local Link Connectivity entry.";
       uses l0-types:l0-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/"
          + "wson:wson-topology" {
         description
           "Augmentation parameters apply only for networks with
            WSON topology type.";
       }
       description
         "Augment TE label range information for the TE link.";
       uses l0-types:l0-label-range-info;
     }

     augment "/nw:networks/nw:network/nt:link/tet:te/"

Zheng, et al.             Expires July 2, 2021                 [Page 29]
Internet-Draft          WSON Topology YANG Model           December 2020

           + "tet:information-source-entry/"
           + "tet:label-restrictions/tet:label-restriction" {
       when "../../../../../nw:network-types/tet:te-topology/"
          + "wson:wson-topology" {
         description
           "Augmentation parameters apply only for networks with
            WSON topology type.";
       }
       description
         "Augment TE label range information for the TE link
          information source.";
       uses l0-types:l0-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 l0-types:l0-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/"
          + "wson:wson-topology" {
         description
           "Augmentation parameters apply only for networks with
            WSON topology type.";
       }
       description
         "Augment TE label range start for the TE node
          connectivity matrices";
       case wson {
         uses l0-types:wson-label-start-end;
       }
     }

     augment "/nw:networks/nw:network/nw:node/tet:te/"
           + "tet:te-node-attributes/tet:connectivity-matrices/"
           + "tet:label-restrictions/"

Zheng, et al.             Expires July 2, 2021                 [Page 30]
Internet-Draft          WSON Topology YANG Model           December 2020

           + "tet:label-restriction/tet:label-end/"
           + "tet:te-label/tet:technology" {
       when "../../../../../../../../nw:network-types/tet:te-topology/"
          + "wson:wson-topology" {
         description
           "Augmentation parameters apply only for networks with
            WSON topology type.";
       }
       description
         "Augment TE label range end for the TE node
          connectivity matrices";
       case wson {
         uses l0-types:wson-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/"
          + "wson:wson-topology" {
         description
           "Augmentation parameters apply only for networks with
            WSON topology type.";
       }
       description
         "Augment TE label range step for the TE node
          connectivity matrices";
       case wson {
         uses l0-types:wson-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/"
          + "wson:wson-topology" {
         description
           "Augmentation parameters apply only for networks with
            WSON topology type.";
       }
       description

Zheng, et al.             Expires July 2, 2021                 [Page 31]
Internet-Draft          WSON Topology YANG Model           December 2020

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

Zheng, et al.             Expires July 2, 2021                 [Page 32]
Internet-Draft          WSON Topology YANG Model           December 2020

       }
     }

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

     augment "/nw:networks/nw:network/nw:node/tet:te/"

Zheng, et al.             Expires July 2, 2021                 [Page 33]
Internet-Draft          WSON Topology YANG Model           December 2020

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

Zheng, et al.             Expires July 2, 2021                 [Page 34]
Internet-Draft          WSON Topology YANG Model           December 2020

          + "nw:network-types/tet:te-topology/"
          + "wson:wson-topology" {
         description
           "Augmentation parameters apply only for networks with
            WSON topology type.";
       }
       description
         "Augment TE label range step for the source LTP
          of the connectivity matrix entry.";
       case wson {
         uses l0-types:wson-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/"
          + "wson:wson-topology" {
         description
           "Augmentation parameters apply only for networks with
            WSON topology type.";
       }
       description
         "Augment TE label range start for the destination LTP
          of the connectivity matrix entry.";
       case wson {
         uses l0-types:wson-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/"
          + "wson:wson-topology" {
         description
           "Augmentation parameters apply only for networks with
            WSON topology type.";
       }

Zheng, et al.             Expires July 2, 2021                 [Page 35]
Internet-Draft          WSON Topology YANG Model           December 2020

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

Zheng, et al.             Expires July 2, 2021                 [Page 36]
Internet-Draft          WSON Topology YANG Model           December 2020

     }

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

     augment "/nw:networks/nw:network/nw:node/tet:te/"
           + "tet:te-node-attributes/tet:connectivity-matrices/"
           + "tet:connectivity-matrix/tet:optimizations/"

Zheng, et al.             Expires July 2, 2021                 [Page 37]
Internet-Draft          WSON Topology YANG Model           December 2020

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

Zheng, et al.             Expires July 2, 2021                 [Page 38]
Internet-Draft          WSON Topology YANG Model           December 2020

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

Zheng, et al.             Expires July 2, 2021                 [Page 39]
Internet-Draft          WSON Topology YANG Model           December 2020

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

Zheng, et al.             Expires July 2, 2021                 [Page 40]
Internet-Draft          WSON Topology YANG Model           December 2020

           + "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/"
          + "wson:wson-topology" {
         description
           "Augmentation parameters apply only for networks with
            WSON 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 wson {
         uses l0-types:wson-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/"
          + "wson:wson-topology" {
         description
           "Augmentation parameters apply only for networks with
            WSON 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 wson {
         uses l0-types:wson-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 "../../../../../../../../../"

Zheng, et al.             Expires July 2, 2021                 [Page 41]
Internet-Draft          WSON Topology YANG Model           December 2020

          + "nw:network-types/tet:te-topology/"
          + "wson:wson-topology" {
         description
           "Augmentation parameters apply only for networks with
            WSON topology type.";
       }
       description
         "Augment TE label hop for the computed path route objects
          of the TE node connectivity matrices information source.";
       case wson {
         uses l0-types:wson-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/"
          + "wson:wson-topology" {
         description
           "Augmentation parameters apply only for networks with
            WSON topology type.";
       }
       description
         "Augment TE label range start for the source LTP
          of the connectivity matrix entry information source.";
       case wson {
         uses l0-types:wson-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/"
          + "wson:wson-topology" {
         description
           "Augmentation parameters apply only for networks with
            WSON topology type.";
       }
       description

Zheng, et al.             Expires July 2, 2021                 [Page 42]
Internet-Draft          WSON Topology YANG Model           December 2020

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

Zheng, et al.             Expires July 2, 2021                 [Page 43]
Internet-Draft          WSON Topology YANG Model           December 2020

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

Zheng, et al.             Expires July 2, 2021                 [Page 44]
Internet-Draft          WSON Topology YANG Model           December 2020

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

Zheng, et al.             Expires July 2, 2021                 [Page 45]
Internet-Draft          WSON Topology YANG Model           December 2020

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

Zheng, et al.             Expires July 2, 2021                 [Page 46]
Internet-Draft          WSON Topology YANG Model           December 2020

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

     augment "/nw:networks/nw:network/nw:node/tet:te/"

Zheng, et al.             Expires July 2, 2021                 [Page 47]
Internet-Draft          WSON Topology YANG Model           December 2020

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

Zheng, et al.             Expires July 2, 2021                 [Page 48]
Internet-Draft          WSON Topology YANG Model           December 2020

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

Zheng, et al.             Expires July 2, 2021                 [Page 49]
Internet-Draft          WSON Topology YANG Model           December 2020

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

Zheng, et al.             Expires July 2, 2021                 [Page 50]
Internet-Draft          WSON Topology YANG Model           December 2020

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

Zheng, et al.             Expires July 2, 2021                 [Page 51]
Internet-Draft          WSON Topology YANG Model           December 2020

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

Zheng, et al.             Expires July 2, 2021                 [Page 52]
Internet-Draft          WSON Topology YANG Model           December 2020

           + "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/"
          + "wson:wson-topology" {
         description
           "Augmentation parameters apply only for networks with
            WSON 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 wson {
         uses l0-types:wson-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/"
          + "wson:wson-topology" {
         description
           "Augmentation parameters apply only for networks with
            WSON 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 wson {
         uses l0-types:wson-label-hop;
       }
     }

     augment "/nw:networks/nw:network/nw:node/tet:te/"
           + "tet:tunnel-termination-point/"
           + "tet:local-link-connectivities/"
           + "tet:local-link-connectivity/"

Zheng, et al.             Expires July 2, 2021                 [Page 53]
Internet-Draft          WSON Topology YANG Model           December 2020

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

Zheng, et al.             Expires July 2, 2021                 [Page 54]
Internet-Draft          WSON Topology YANG Model           December 2020

         "Augment TE label hop for the underlay backup path
          of the TE link.";
       case wson {
         uses l0-types:wson-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/"
          + "wson:wson-topology" {
         description
           "Augmentation parameters apply only for networks with
            WSON topology type.";
       }
       description
         "Augment TE label range start for the TE link.";
       case wson {
         uses l0-types:wson-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/"
          + "wson:wson-topology" {
         description
           "Augmentation parameters apply only for networks with
            WSON topology type.";
       }
       description
         "Augment TE label range end for the TE link.";
       case wson {
         uses l0-types:wson-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/"
          + "wson:wson-topology" {
         description

Zheng, et al.             Expires July 2, 2021                 [Page 55]
Internet-Draft          WSON Topology YANG Model           December 2020

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

     augment "/nw:networks/nw:network/nt:link/tet:te/"
           + "tet:information-source-entry/"

Zheng, et al.             Expires July 2, 2021                 [Page 56]
Internet-Draft          WSON Topology YANG Model           December 2020

           + "tet:label-restrictions/tet:label-restriction/"
           + "tet:label-step/tet:technology" {
       when "../../../../../../nw:network-types/tet:te-topology/"
          + "wson:wson-topology" {
         description
           "Augmentation parameters apply only for networks with
            WSON topology type.";
       }
       description
         "Augment TE label range step for the TE link
          information source.";
       case wson {
         uses l0-types:wson-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 wson {
         uses l0-types:wson-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 wson {
         uses l0-types:wson-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 wson {
         uses l0-types:wson-label-start-end;

Zheng, et al.             Expires July 2, 2021                 [Page 57]
Internet-Draft          WSON Topology YANG Model           December 2020

       }
     }

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

   <CODE ENDS>

4.  Security Considerations

   The YANG module specified in this document defines a schema for data
   that is designed to be accessed via network management protocols such
   as NETCONF [RFC6241] or RESTCONF [RFC8040].  The lowest NETCONF layer
   is the secure transport layer, and the mandatory-to-implement secure
   transport is Secure Shell (SSH) [RFC6242].  The lowest RESTCONF layer
   is HTTPS, and the mandatory-to-implement secure transport is TLS
   [RFC8446].

   The NETCONF Protocol over Secure Shell (SSH) [RFC6242] describes a
   method for invoking and running NETCONF within a Secure Shell (SSH)
   session as an SSH subsystem.  The NETCONF access control model
   [RFC8341] provides the means to restrict access for particular
   NETCONF or RESTCONF users to a preconfigured subset of all available
   NETCONF or RESTCONF protocol operations and content.

   There are a number of data nodes defined in this YANG module that are
   writable/creatable/deletable (i.e., config true, which is the

Zheng, et al.             Expires July 2, 2021                 [Page 58]
Internet-Draft          WSON Topology YANG Model           December 2020

   default).  These data nodes may be considered sensitive or vulnerable
   in some network environments.  Write operations (e.g., edit-config)
   to these data nodes without proper protection can have a negative
   effect on network operations.  Considerations in Section 8 of
   [RFC8795]are also applicable to their subtrees in the module defined
   in this document.

   Some of the readable data nodes in this YANG module may be considered
   sensitive or vulnerable in some network environments.  It is thus
   important to control read access (e.g., via get, get-config, or
   notification) to these data nodes.  Considerations in Section 8 of
   [RFC8795]are also applicable to their subtrees in the module defined
   in this document.

5.  IANA Considerations

   It is proposed to IANA to assign new URIs from the "IETF XML
   Registry" [RFC3688] as follows:

         URI: urn:ietf:params:xml:ns:yang:ietf-wson-topology
         Registrant Contact: The IESG
         XML: N/A; the requested URI is an XML namespace.

   This document registers a YANG module in the YANG Module Names
   registry [RFC7950] and [RFC6020].

      name:         ietf-wson-topology
      namespace:    urn:ietf:params:xml:ns:yang:ietf-wson-topology
      prefix:       wson
      reference:    RFC XXXX

6.  Contributors

   Dhruv Dhody
   Huawei Technologies
   Email: dhruv.ietf@gmail.com

   Bin Yeong Yoon
   ETRI
   Email: byyun@etri.re.kr

   Ricard Vilalta
   CTTC
   Email: vricard.vilalta@cttc.es

Zheng, et al.             Expires July 2, 2021                 [Page 59]
Internet-Draft          WSON Topology YANG Model           December 2020

   Italo Busi
   Huawei Technologies
   Email: Italo.Busi@huawei.com

7.  References

7.1.  Normative References

   [I-D.ietf-ccamp-layer0-types]
              Zheng, H., Lee, Y., Guo, A., Lopez, V., and D. King, "A
              YANG Data Model for Layer 0 Types", draft-ietf-ccamp-
              layer0-types-08 (work in progress), October 2020.

   [ITU-Tg6982]
              International Telecommunication Union, "Amplified
              multichannel dense wavelength division multiplexing
              applications with single channel optical interfaces",
              ITU-T G.698.2, November 2018.

   [RFC6020]  Bjorklund, M., Ed., "YANG - A Data Modeling Language for
              the Network Configuration Protocol (NETCONF)", RFC 6020,
              DOI 10.17487/RFC6020, October 2010,
              <https://www.rfc-editor.org/info/rfc6020>.

   [RFC6241]  Enns, R., Ed., Bjorklund, M., Ed., Schoenwaelder, J., Ed.,
              and A. Bierman, Ed., "Network Configuration Protocol
              (NETCONF)", RFC 6241, DOI 10.17487/RFC6241, June 2011,
              <https://www.rfc-editor.org/info/rfc6241>.

   [RFC6242]  Wasserman, M., "Using the NETCONF Protocol over Secure
              Shell (SSH)", RFC 6242, DOI 10.17487/RFC6242, June 2011,
              <https://www.rfc-editor.org/info/rfc6242>.

   [RFC7579]  Bernstein, G., Ed., Lee, Y., Ed., Li, D., Imajuku, W., and
              J. Han, "General Network Element Constraint Encoding for
              GMPLS-Controlled Networks", RFC 7579,
              DOI 10.17487/RFC7579, June 2015,
              <https://www.rfc-editor.org/info/rfc7579>.

   [RFC7581]  Bernstein, G., Ed., Lee, Y., Ed., Li, D., Imajuku, W., and
              J. Han, "Routing and Wavelength Assignment Information
              Encoding for Wavelength Switched Optical Networks",
              RFC 7581, DOI 10.17487/RFC7581, June 2015,
              <https://www.rfc-editor.org/info/rfc7581>.

   [RFC7950]  Bjorklund, M., Ed., "The YANG 1.1 Data Modeling Language",
              RFC 7950, DOI 10.17487/RFC7950, August 2016,
              <https://www.rfc-editor.org/info/rfc7950>.

Zheng, et al.             Expires July 2, 2021                 [Page 60]
Internet-Draft          WSON Topology YANG Model           December 2020

   [RFC8040]  Bierman, A., Bjorklund, M., and K. Watsen, "RESTCONF
              Protocol", RFC 8040, DOI 10.17487/RFC8040, January 2017,
              <https://www.rfc-editor.org/info/rfc8040>.

   [RFC8340]  Bjorklund, M. and L. Berger, Ed., "YANG Tree Diagrams",
              BCP 215, RFC 8340, DOI 10.17487/RFC8340, March 2018,
              <https://www.rfc-editor.org/info/rfc8340>.

   [RFC8341]  Bierman, A. and M. Bjorklund, "Network Configuration
              Access Control Model", STD 91, RFC 8341,
              DOI 10.17487/RFC8341, March 2018,
              <https://www.rfc-editor.org/info/rfc8341>.

   [RFC8342]  Bjorklund, M., Schoenwaelder, J., Shafer, P., Watsen, K.,
              and R. Wilton, "Network Management Datastore Architecture
              (NMDA)", RFC 8342, DOI 10.17487/RFC8342, March 2018,
              <https://www.rfc-editor.org/info/rfc8342>.

   [RFC8345]  Clemm, A., Medved, J., Varga, R., Bahadur, N.,
              Ananthakrishnan, H., and X. Liu, "A YANG Data Model for
              Network Topologies", RFC 8345, DOI 10.17487/RFC8345, March
              2018, <https://www.rfc-editor.org/info/rfc8345>.

   [RFC8446]  Rescorla, E., "The Transport Layer Security (TLS) Protocol
              Version 1.3", RFC 8446, DOI 10.17487/RFC8446, August 2018,
              <https://www.rfc-editor.org/info/rfc8446>.

   [RFC8795]  Liu, X., Bryskin, I., Beeram, V., Saad, T., Shah, H., and
              O. Gonzalez de Dios, "YANG Data Model for Traffic
              Engineering (TE) Topologies", RFC 8795,
              DOI 10.17487/RFC8795, August 2020,
              <https://www.rfc-editor.org/info/rfc8795>.

7.2.  Informative References

   [I-D.ietf-ccamp-flexigrid-yang]
              Madrid, U., Perdices, D., King, D., Lee, Y., and H. Zheng,
              "A YANG Data Model for Flexi-Grid Optical Networks",
              draft-ietf-ccamp-flexigrid-yang-08 (work in progress),
              November 2020.

   [I-D.ietf-ccamp-optical-impairment-topology-yang]
              Lee, Y., Auge, L., Lopez, V., Galimberti, G., and D.
              Beller, "A Yang Data Model for Optical Impairment-aware
              Topology", draft-ietf-ccamp-optical-impairment-topology-
              yang-05 (work in progress), November 2020.

Zheng, et al.             Expires July 2, 2021                 [Page 61]
Internet-Draft          WSON Topology YANG Model           December 2020

   [RFC3688]  Mealling, M., "The IETF XML Registry", BCP 81, RFC 3688,
              DOI 10.17487/RFC3688, January 2004,
              <https://www.rfc-editor.org/info/rfc3688>.

   [RFC7446]  Lee, Y., Ed., Bernstein, G., Ed., Li, D., and W. Imajuku,
              "Routing and Wavelength Assignment Information Model for
              Wavelength Switched Optical Networks", RFC 7446,
              DOI 10.17487/RFC7446, February 2015,
              <https://www.rfc-editor.org/info/rfc7446>.

Authors' Addresses

   Haomian Zheng
   Huawei Technologies
   H1, Huawei Xiliu Beipo Village, Songshan Lake
   Dongguan, Guangdong  523808
   China

   Email: zhenghaomian@huawei.com

   Young Lee
   Samsung
   South Korea

   Email: younglee.tx@gmail.com

   Aihua Guo
   Futurewei

   Email: aihuaguo.ietf@gmail.com

   Victor Lopez
   Telefonica

   Email: victor.lopezalvarez@telefonica.com

   Daniel King
   University of Lancaster

   Email: d.king@lancaster.ac.uk

Zheng, et al.             Expires July 2, 2021                 [Page 62]