Add node-info in portmapping structure
[transportpce.git] / api / src / main / yang / transportpce-portmapping@2019-07-02.yang
diff --git a/api/src/main/yang/transportpce-portmapping@2019-07-02.yang b/api/src/main/yang/transportpce-portmapping@2019-07-02.yang
new file mode 100644 (file)
index 0000000..1aacc7f
--- /dev/null
@@ -0,0 +1,147 @@
+module transportpce-portmapping {
+  yang-version 1;
+  namespace "http://org/opendaylight/transportpce/portmapping";
+  prefix "org-opendaylight-transportpce-portmapping";
+
+  import org-openroadm-common-types { prefix org-openroadm-common-types; revision-date 2018-10-19; }
+  import ietf-inet-types { prefix ietf-inet-types; revision-date 2013-07-15; }
+
+  organization
+    "transportPCE";
+  contact
+    "transportPCE committers - ODL";
+  description
+    "YANG definitions of RPCs supported by OLM. Copyright (c) 2017
+    AT&T and others. All rights reserved. authors: Dhruv Bhardwaj
+    ( db929a@att.com ) Shweta Vachhani ( sv111y@att.com )";
+
+  revision 2019-07-02 {
+    description
+        "Version 2. To manage device 2.2.1";
+  }
+
+  revision 2017-02-28 {
+    description "Initial revision of port mapping model";
+  }
+
+  container network {
+    list nodes {
+      key node-id;
+      leaf node-id {
+        type string;
+        description
+          "Unique identifier for node in the network";
+      }
+      container node-info {
+        leaf node-type {
+          type org-openroadm-common-types:node-types;
+          description
+            "Identifier for node-type e.g Roadm, xponder";
+        }
+        leaf openroadm-version {
+          type enumeration {
+            enum "1.2.1" {
+              value 1;
+              description
+                "Version 1.2.1";
+            }
+            enum "2.2.1" {
+              value 2;
+              description
+                "Version 2.2.1";
+            }
+          }
+        }
+        leaf node-clli {
+          type string;
+          description
+            "Common Language Location Identifier.";
+        }
+        leaf node-vendor {
+          type string;
+          description
+            "Vendor of the equipment";
+        }
+        leaf node-model {
+          type string;
+          description
+            "Physical resource model information.";
+        }
+        leaf node-ip-address {
+          type ietf-inet-types:ip-address;
+          description
+            "Current IP Address of device";
+        }
+      }
+
+      list mapping {
+        description
+          "Mapping for Physical circuit pack/port/parent interfaces corresponding
+          to each logical connection point present in the node.";
+        key logical-connection-point;
+        leaf logical-connection-point {
+          type string;
+        }
+        leaf supporting-circuit-pack-name {
+          type string;
+          description
+            "Circuit pack where the logical connection point is located";
+        }
+        leaf supporting-port {
+          type string;
+          description
+            "Port where the logical connection point is located";
+        }
+        leaf supporting-oms {
+          type string;
+          description
+            "OMS interface provisioned on the port";
+        }
+        leaf supporting-ots {
+          type string;
+          description
+            "OTS interface provisioned on the port";
+        }
+        leaf port-direction {
+          type string;
+          description
+            "Useful for line port of XPDR, for which there is no indication
+            in its logical-termination-point naming";
+        }
+        leaf port-qual {
+          type string;
+          description
+             "Useful to identify from portmapping client from network ports
+             of XPDR";
+        }
+        leaf associated-lcp {
+          type string;
+          description
+             "For XPDR, associate two logical-connection-points from device/connnection-map
+             data";
+        }
+        leaf partner-lcp {
+          type string;
+          description
+             "For XPDR unidirectional NETWORK port, associate two logical-connection-points
+             from device/partner port data";
+        }
+      }
+      list cp-to-degree {
+        description
+             "This mapping helps locate degree number of the circuitpack that
+             does lldp protocol management";
+        key circuit-pack-name;
+        leaf circuit-pack-name {
+          type string;
+        }
+        leaf degree-number {
+          type uint32;
+        }
+        leaf interface-name {
+          type string;
+        }
+      }
+    }
+  }
+}