Upgrade to OpenROADM 7.1.0 network models
[transportpce.git] / ordmodels / network / src / main / yang / org-openroadm-network-types@2020-05-29.yang
similarity index 62%
rename from ordmodels/network/src/main/yang/org-openroadm-network-types@2018-11-30.yang
rename to ordmodels/network/src/main/yang/org-openroadm-network-types@2020-05-29.yang
index a246e9a3dcaadcf2d64295500eb8031f6733f82c..c4f93c2b1b57c6ddebe448f66d6d198c0953f59a 100644 (file)
@@ -9,11 +9,11 @@ module org-openroadm-network-types {
   }
   import org-openroadm-common-optical-channel-types {
     prefix org-openroadm-common-optical-channel-types;
-    revision-date 2018-11-30;
+    revision-date 2020-05-29;
   }
   import org-openroadm-port-types {
     prefix org-openroadm-port-types;
-    revision-date 2018-11-30;
+    revision-date 2020-03-27;
   }
 
   organization
@@ -47,6 +47,30 @@ module org-openroadm-network-types {
      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";
@@ -82,34 +106,34 @@ module org-openroadm-network-types {
 
   typedef openroadm-node-type {
     type enumeration {
-      enum "ROADM" {
+      enum ROADM {
         value 1;
       }
-      enum "DEGREE" {
+      enum DEGREE {
         value 11;
       }
-      enum "SRG" {
+      enum SRG {
         value 12;
       }
-      enum "XPONDER" {
+      enum XPONDER {
         value 3;
       }
-      enum "EXT-PLUGGABLE" {
+      enum EXT-PLUGGABLE {
         value 4;
       }
-      enum "TPDR" {
+      enum TPDR {
         value 13;
       }
-      enum "MUXPDR" {
+      enum MUXPDR {
         value 14;
       }
-      enum "REGEN" {
+      enum REGEN {
         value 15;
       }
-      enum "REGEN-UNI" {
+      enum REGEN-UNI {
         value 16;
       }
-      enum "SWITCH" {
+      enum SWITCH {
         value 17;
       }
     }
@@ -117,52 +141,52 @@ module org-openroadm-network-types {
 
   typedef openroadm-tp-type {
     type enumeration {
-      enum "DEGREE-TX-TTP" {
+      enum DEGREE-TX-TTP {
         value 1;
       }
-      enum "DEGREE-RX-TTP" {
+      enum DEGREE-RX-TTP {
         value 2;
       }
-      enum "DEGREE-TX-CTP" {
+      enum DEGREE-TX-CTP {
         value 3;
       }
-      enum "DEGREE-RX-CTP" {
+      enum DEGREE-RX-CTP {
         value 4;
       }
-      enum "SRG-TX-CP" {
+      enum SRG-TX-CP {
         value 5;
       }
-      enum "SRG-RX-CP" {
+      enum SRG-RX-CP {
         value 6;
       }
-      enum "SRG-TXRX-PP" {
+      enum SRG-TXRX-PP {
         value 7;
       }
-      enum "SRG-RX-PP" {
+      enum SRG-RX-PP {
         value 8;
       }
-      enum "SRG-TX-PP" {
+      enum SRG-TX-PP {
         value 9;
       }
-      enum "XPONDER-NETWORK" {
+      enum XPONDER-NETWORK {
         value 10;
       }
-      enum "XPONDER-CLIENT" {
+      enum XPONDER-CLIENT {
         value 11;
       }
-      enum "EXT-PLUGGABLE-TP" {
+      enum EXT-PLUGGABLE-TP {
         value 12;
       }
-      enum "DEGREE-TXRX-TTP" {
+      enum DEGREE-TXRX-TTP {
         value 13;
       }
-      enum "SRG-TXRX-CP" {
+      enum SRG-TXRX-CP {
         value 14;
       }
-      enum "XPONDER-PORT" {
+      enum XPONDER-PORT {
         value 15;
       }
-      enum "DEGREE-TXRX-CTP" {
+      enum DEGREE-TXRX-CTP {
         value 16;
       }
     }
@@ -170,61 +194,83 @@ module org-openroadm-network-types {
 
   typedef openroadm-link-type {
     type enumeration {
-      enum "EXPRESS-LINK" {
+      enum EXPRESS-LINK {
         value 1;
       }
-      enum "ADD-LINK" {
+      enum ADD-LINK {
         value 2;
       }
-      enum "DROP-LINK" {
+      enum DROP-LINK {
         value 3;
       }
-      enum "ROADM-TO-ROADM" {
+      enum ROADM-TO-ROADM {
         value 4;
       }
-      enum "XPONDER-INPUT" {
+      enum XPONDER-INPUT {
         value 5;
       }
-      enum "XPONDER-OUTPUT" {
+      enum XPONDER-OUTPUT {
         value 6;
       }
-      enum "OTN-LINK" {
+      enum OTN-LINK {
         value 7;
       }
     }
   }
 
-  typedef openroadm-node-status {
+  typedef openroadm-node-connection-status {
     type enumeration {
-      enum "PLANNED" {
+      enum CONNECTED {
         value 1;
       }
-      enum "DEPLOYED" {
+      enum CONNECTING {
         value 2;
       }
-      enum "MAINTENANCE" {
+      enum UNABLE-TO-CONNECT {
         value 3;
       }
     }
   }
 
-  typedef openroadm-node-connection-status {
-    type enumeration {
-      enum "CONNECTED" {
-        value 1;
+  grouping available-freq-map {
+    list avail-freq-maps {
+      key "map-name";
+      description
+        "Available spectrum information";
+      leaf map-name {
+        type string;
+        description
+          "Identifier of the map. For C-band, recommend map-name = 'cband'";
       }
-      enum "CONNECTING" {
-        value 2;
+      leaf start-edge-freq {
+        type org-openroadm-common-optical-channel-types:frequency-THz;
+        description
+          "Starting edge frequency (min frequency) for the frequency map. For C-band, the recommendation is start-edge-freq = 191.325 THz";
       }
-      enum "UNABLE-TO-CONNECT" {
-        value 3;
+      leaf freq-map-granularity {
+        type org-openroadm-common-optical-channel-types:frequency-GHz;
+        description
+          "frequency granularity of each bit in the bitmap.  For C-band, the recommendation is freq-map-granularity = 6.25 GHz";
+      }
+      leaf effective-bits {
+        type uint16;
+        description
+          "Number of effective bits in the frequency bitmap.  Note the freq-map bitmap will be padded with 0 for byte alignment.";
+      }
+      leaf freq-map {
+        type binary;
+        description
+          "Frequency bitmap.  Setting the value of the binary bit to 1 indicates that the corresponding spectrum is available and
+           setting to 0 indicates the corresponding spectrum is unavailable (used or unsupported).";
       }
     }
   }
 
   grouping wavelengths {
     leaf index {
-      type uint32;
+      type int32;
+      description
+        "Index should be related to the frequency based on the formula 193.1 + index * .00625 THz";
     }
     uses flex-wave;
   }
@@ -244,6 +290,17 @@ module org-openroadm-network-types {
     }
   }
 
+  grouping type-variety-grp {
+    leaf type-variety {
+      type string;
+      config true;
+      description
+        "Equipment type variety defined by the Open ROADM MSA or by the vendor for bookending applications.
+         This field is used by external path computation tools as a reference in a catalog to get additional
+         information about the equipment’s optical capabilities.";
+    }
+  }
+
   grouping xpdr-tp-supported-interfaces {
     list supported-interface-capability {
       key "if-cap-type";