Initial check-in Open ROADM app v1.2.1 (ONOS-5354).

Change-Id: I077b40c308efe257af0e23f0d87de1215c3789ad
diff --git a/apps/openroadm/yangmodel/src/main/yang/org-openroadm-srg.yang b/apps/openroadm/yangmodel/src/main/yang/org-openroadm-srg.yang
new file mode 100644
index 0000000..66e5a124
--- /dev/null
+++ b/apps/openroadm/yangmodel/src/main/yang/org-openroadm-srg.yang
@@ -0,0 +1,102 @@
+module org-openroadm-srg {
+  namespace "http://org/openroadm/srg";
+  prefix org-openroadm-srg;
+
+  organization
+    "OPEN ROADM MSA";
+  contact
+    "OpenROADM.org.";
+  description
+    "YANG definitions for an Add/Drop group in Network Model
+     
+     Copyright of the Members of the Open ROADM MSA Agreement dated (c) 2016, 
+     AT&T Intellectual Property.  All other rights reserved.
+     
+     Redistribution and use in source and binary forms, with or without modification, 
+     are permitted provided that the following conditions are met:
+     
+     * Redistributions of source code must retain the above copyright notice, this 
+       list of conditions and the following disclaimer.
+     * Redistributions in binary form must reproduce the above copyright notice, 
+       this list of conditions and the following disclaimer in the documentation and/or 
+       other materials provided with the distribution.
+     * Neither the Members of the Open ROADM MSA Agreement nor the names of its 
+       contributors may be used to endorse or promote products derived from this software 
+       without specific prior written permission.
+     
+     THIS SOFTWARE IS PROVIDED BY THE MEMBERS OF THE OPEN ROADM MSA  AGREEMENT ''AS IS'' 
+     AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED 
+     WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. 
+     IN NO EVENT THE MEMBERS OF THE OPEN ROADM MSA  AGREEMENT BE LIABLE FOR ANY DIRECT, 
+     INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT 
+     NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES;  LOSS OF USE, DATA, 
+     OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, 
+     WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) 
+     ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE 
+     POSSIBILITY OF SUCH DAMAGE.";
+
+  revision 2016-10-14 {
+    description
+      "Version 1.2";
+  }
+
+  grouping shared-risk-group {
+    list srgs {
+      key "srg-number";
+      leaf srg-number {
+        type uint16;
+        description
+          "Identifier for each SRG";
+      }
+      leaf max-pp {
+        type uint32;
+        description
+          "Maximum number  of add/drop port pairs in an SRG";
+      }
+      leaf-list available-wavelengths {
+        type uint32;
+        description
+          "List of available wavelengths that are supported
+           by the srg";
+      }
+      leaf wavelength-duplication {
+        type enumeration {
+          enum "one-per-srg" {
+            value 1;
+          }
+          enum "one-per-degree" {
+            value 2;
+          }
+        }
+        description
+          "One per srg is applied to C/D add/drop group
+           one per degree is applied to C/D/C add drop group";
+      }
+      container cp-tx {
+        leaf-list pp-number {
+          type uint32;
+          description
+            "The port pair # used for a tail or assigned by PCE to a  service/circuit ";
+        }
+      }
+      container cp-rx {
+        leaf-list pp-number {
+          type uint32;
+          description
+            "The port pair # used for a tail or assigned by PCE to a  service/circuit ";
+        }
+      }
+      list port-pair {
+        key "pp-number";
+        leaf pp-number {
+          type uint16;
+          description
+            "The port pair # used for tail or assigned by PCE to a service/circuit";
+        }
+        leaf wavelength-number {
+          type uint32;
+        }
+      }
+    }
+  }
+}