Upgrade to OpenROADM 7.1.0 network models
[transportpce.git] / ordmodels / network / src / main / yang / org-openroadm-otn-network-topology@2020-05-29.yang
similarity index 57%
rename from ordmodels/network/src/main/yang/org-openroadm-otn-network-topology@2018-11-30.yang
rename to ordmodels/network/src/main/yang/org-openroadm-otn-network-topology@2020-05-29.yang
index 756f4df7f4a17e8cb6fab322469375fcbc587862..28bbfa1bffd729b2c029ed69c952e1ec0aa44fe4 100644 (file)
@@ -13,23 +13,19 @@ module org-openroadm-otn-network-topology {
   }
   import org-openroadm-network-types {
     prefix org-openroadm-network-types;
-    revision-date 2018-11-30;
+    revision-date 2020-05-29;
   }
   import org-openroadm-network-topology-types {
     prefix org-openroadm-network-topology-types;
-    revision-date 2018-11-30;
+    revision-date 2020-03-27;
   }
   import org-openroadm-xponder {
     prefix xpdr;
-    revision-date 2018-11-30;
-  }
-  import org-openroadm-common-state-types {
-    prefix org-openroadm-common-state-types;
-    revision-date 2018-11-30;
+    revision-date 2020-05-29;
   }
   import org-openroadm-common-network {
     prefix cnet;
-    revision-date 2018-11-30;
+    revision-date 2020-05-29;
   }
 
   organization
@@ -65,6 +61,30 @@ module org-openroadm-otn-network-topology {
      ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
      POSSIBILITY OF SUCH DAMAGE.";
 
+  revision 2020-05-29 {
+    description
+      "Version 7.1.0";
+  }
+  revision 2020-03-27 {
+    description
+      "Version 7.0.0";
+  }
+  revision 2019-11-29 {
+    description
+      "Version 6.1.0";
+  }
+  revision 2019-09-27 {
+    description
+      "Version 6.0.0";
+  }
+  revision 2019-05-31 {
+    description
+      "Version 5.1.0";
+  }
+  revision 2019-03-29 {
+    description
+      "Version 5.0.0";
+  }
   revision 2018-11-30 {
     description
       "Version 4.1.0";
@@ -92,42 +112,42 @@ module org-openroadm-otn-network-topology {
 
   deviation "/nd:networks/nd:network/nd:node/cnet:node-type" {
     deviate add {
-      must
-        "(not /nd:network/nd:network-types/cnet:openroadm-common-network/otn-topology) or
-         (/nd:network/nd:network-types/cnet:openroadm-common-network/otn-topology and
-         (../cnet:node-type = 'SWITCH' or ../cnet:node-type = 'MUXPDR' or ../cnet:node-type = 'TPDR' or
-          ../cnet:node-type = 'REGEN' or ../cnet:node-type = 'REGEN-UNI'))" {
-        error-message "Invalid node type for otn-topology";
-        description
-          "The type of a node in the OTN topology. Valid node types are 'MUXPDR', 'TPDR' and 'SWITCH'";
+      must "(not /nd:network/nd:network-types/cnet:openroadm-common-network/otn-topology) or
+            (/nd:network/nd:network-types/cnet:openroadm-common-network/otn-topology and
+            (../cnet:node-type = 'SWITCH' or ../cnet:node-type = 'MUXPDR' or ../cnet:node-type = 'TPDR' or
+             ../cnet:node-type = 'REGEN' or ../cnet:node-type = 'REGEN-UNI'))" {
+          error-message "Invalid node type for otn-topology";
+          description
+            "The type of a node in the OTN topology";
       }
     }
   }
+
   deviation "/nd:networks/nd:network/nd:node/nwt:termination-point/cnet:tp-type" {
     description
       "Defines which TP types can be instantiated on which Node types";
     deviate add {
-      must
-        "(/nd:network/nd:node/cnet:node-type != 'MUXPDR' and ../../cnet:node-type != 'SWITCH' and ../../cnet:node-type != 'TPDR'
-         and ../cnet:node-type != 'REGEN' and ../cnet:node-type != 'REGEN-UNI') or
-         ((../../cnet:node-type = 'MUXPDR' or ../../cnet:node-type = 'SWITCH' or ../../cnet:node-type = 'TPDR' or
-         ../cnet:node-type = 'REGEN' or ../cnet:node-type = 'REGEN-UNI') and
-         (../cnet:tp-type = 'XPONDER-NETWORK' or ../cnet:tp-type = 'XPONDER-CLIENT' or ../cnet:tp-type = 'XPONDER-PORT'))" {
-        error-message "Invalid TP for node type Xponder";
+      must "(/nd:network/nd:node/cnet:node-type != 'MUXPDR' and ../../cnet:node-type != 'SWITCH' and ../../cnet:node-type != 'TPDR'
+            and ../cnet:node-type != 'REGEN' and ../cnet:node-type != 'REGEN-UNI') or
+            ((../../cnet:node-type = 'MUXPDR' or ../../cnet:node-type = 'SWITCH' or ../../cnet:node-type = 'TPDR' or
+            ../cnet:node-type = 'REGEN' or ../cnet:node-type = 'REGEN-UNI') and
+            (../cnet:tp-type = 'XPONDER-NETWORK' or ../cnet:tp-type = 'XPONDER-CLIENT' or ../cnet:tp-type = 'XPONDER-PORT'))" {
+          error-message "Invalid TP for node type Xponder";
       }
     }
   }
+
   deviation "/nd:networks/nd:network/nwt:link/cnet:link-type" {
     deviate add {
-      must
-        "(not /nd:network/nd:network-types/cnet:openroadm-common-network/otn-topology) or
-         (/nd:network/nd:network-types/cnet:openroadm-common-network/otn-topology and ../cnet:link-type = 'OTN-LINK')" {
-        error-message "Invalid link type for otn-topology";
-        description
-          "The valid link type in the OTN topology is 'OTN-LINK'";
+      must "(not /nd:network/nd:network-types/cnet:openroadm-common-network/otn-topology) or
+            (/nd:network/nd:network-types/cnet:openroadm-common-network/otn-topology and ../cnet:link-type = 'OTN-LINK')" {
+          error-message "Invalid link type for otn-topology";
+          description
+            "The valid link type in the OTN topology is 'OTN-LINK'";
       }
     }
   }
+
   augment "/nd:networks/nd:network/nd:network-types/cnet:openroadm-common-network" {
     description
       "Introduce new network type for the Open ROADM OTN network topology";
@@ -135,23 +155,13 @@ module org-openroadm-otn-network-topology {
       presence "indicates OTN topology for Transponder, Muxponder, Switchponder and OTN-switch";
     }
   }
+
   augment "/nd:networks/nd:network/nd:node" {
-    when "../nd:network-types/cnet:openroadm-common-network/otn-topology";
+    when '../nd:network-types/cnet:openroadm-common-network/otn-topo:otn-topology';
     description
       "This augmentations adds the OTN Node type to the generic node
        definition and defines node-specific attributes for each node type
        in the OTN Topology.";
-    leaf node-type {
-      type org-openroadm-network-types:openroadm-node-type;
-      must
-        "(../node-type = 'SWITCH' or ../node-type = 'MUXPDR' or ../node-type = 'TPDR' or
-         ../node-type = 'REGEN' or ../node-type = 'REGEN-UNI')" {
-        error-message "Invalid node type for otn-topology";
-      }
-      status deprecated;
-      description
-        "The type of a node in the OTN topology. Valid node types are 'MUXPDR', 'TPDR' and 'SWITCH'";
-    }
     container tp-bandwidth-sharing {
       when "../cnet:node-type = 'MUXPDR' or ../cnet:node-type = 'SWITCH' or ../cnet:node-type = 'TPDR'";
       uses org-openroadm-network-topology-types:xpdr-tp-bandwidth-sharing;
@@ -163,40 +173,19 @@ module org-openroadm-otn-network-topology {
       uses org-openroadm-network-topology-types:xpdr-odu-switching-pools;
     }
     container xpdr-attributes {
-      when
-        "../cnet:node-type = 'MUXPDR' or ../cnet:node-type = 'SWITCH' or ../cnet:node-type = 'TPDR' or
-         ../cnet:node-type = 'REGEN' or ../cnet:node-type = 'REGEN-UNI'";
+      when "../cnet:node-type = 'MUXPDR' or ../cnet:node-type = 'SWITCH' or ../cnet:node-type = 'TPDR' or
+            ../cnet:node-type = 'REGEN' or ../cnet:node-type = 'REGEN-UNI'";
       description
         "Topology-related attributes for Xponder nodes";
       uses xpdr:xpdr-topo-node-attributes;
     }
   }
+
   augment "/nd:networks/nd:network/nd:node/nwt:termination-point" {
-    when "../../nd:network-types/cnet:openroadm-common-network/otn-topology";
+    when '../../nd:network-types/cnet:openroadm-common-network/otn-topo:otn-topology';
     description
       "Defines the type of a termination point in the OTN topology and
        TP-specific attributes for each termination point type.";
-    leaf tp-type {
-      type org-openroadm-network-types:openroadm-tp-type;
-      must
-        "(../../otn-topo:node-type != 'MUXPDR' and ../../otn-topo:node-type != 'SWITCH' and ../../otn-topo:node-type != 'TPDR'
-         and ../../otn-topo:node-type != 'REGEN' and ../../otn-topo:node-type != 'REGEN-UNI') or
-         ((../../otn-topo:node-type = 'MUXPDR' or ../../otn-topo:node-type = 'SWITCH' or ../../otn-topo:node-type = 'TPDR'
-         or ../../otn-topo:node-type = 'REGEN' or ../../otn-topo:node-type = 'REGEN-UNI') and
-         (../otn-topo:tp-type = 'XPONDER-NETWORK' or ../otn-topo:tp-type = 'XPONDER-CLIENT' or ../otn-topo:tp-type = 'XPONDER-PORT'))" {
-        error-message "Invalid TP for node type Xponder";
-      }
-      status deprecated;
-      description
-        "The TP type; also defines which TP types can be instantiated
-         on which Node types";
-    }
-    leaf eqpt-srg-id {
-      type uint32;
-      status deprecated;
-      description
-        "Shared Risk Group identifier. All ports in a circuit-pack will have same srg-id";
-    }
     container tp-supported-interfaces {
       when "../cnet:tp-type = 'XPONDER-NETWORK' or ../cnet:tp-type = 'XPONDER-CLIENT' or ../cnet:tp-type = 'XPONDER-PORT'";
       description
@@ -210,33 +199,14 @@ module org-openroadm-otn-network-topology {
       uses xpdr:xpdr-otn-tp-attributes;
       uses xpdr:xpdr-port-connection-attributes;
       uses org-openroadm-network-topology-types:xpdr-otn-tail-attributes;
+      uses xpdr:supported-client-services;
     }
   }
+
   augment "/nd:networks/nd:network/nwt:link" {
-    when "../nd:network-types/cnet:openroadm-common-network/otn-topology";
+    when '../nd:network-types/cnet:openroadm-common-network/otn-topo:otn-topology';
     description
       "This augmentation defines Logical link types in the OTN topology connecting OTN elements";
-    leaf link-type {
-      type org-openroadm-network-types:openroadm-link-type;
-      must "(../link-type = 'OTN-LINK')" {
-        error-message "Invalid link type for otn-topology";
-      }
-      status deprecated;
-    }
-    leaf administrative-group {
-      type uint32;
-      status deprecated;
-      description
-        "according to RFC 3630 definition";
-    }
-    leaf operational-state {
-      type org-openroadm-common-state-types:state;
-      status deprecated;
-    }
-    leaf administrative-state {
-      type org-openroadm-common-state-types:state;
-      status deprecated;
-    }
     leaf available-bandwidth {
       type uint32;
       description