Change some strings to leafrefs in NSD model
[osm/SO.git] / models / plugins / yang / nsr.yang
index e8b65ae..97c32de 100644 (file)
@@ -829,7 +829,82 @@ module nsr
         type config-states;
       }
 
-      uses manotypes:ns-service-primitive;
+      list service-primitive {
+         description
+              "Network service level service primitives.";
+
+         key "name";
+
+         leaf name {
+            description
+                "Name of the service primitive.";
+            type string;
+         }
+
+         list parameter {
+            description
+                "List of parameters for the service primitive.";
+
+            key "name";
+            uses manotypes:primitive-parameter;
+         }
+
+         uses manotypes:ui-primitive-group;
+
+         list vnf-primitive-group {
+            description
+                "List of service primitives grouped by VNF.";
+
+            key "member-vnf-index-ref";
+            leaf member-vnf-index-ref {
+              description
+                 "Reference to member-vnf within constituent-vnfds";
+              type string;
+            }
+
+            leaf vnfd-id-ref {
+               description
+                 "A reference to a vnfd. This is a 
+                  leafref to path:
+                      ../../../../nsd:constituent-vnfd
+                      + [nsd:id = current()/../nsd:id-ref]
+                      + /nsd:vnfd-id-ref
+                  NOTE: An issue with confd is preventing the
+                  use of xpath. Seems to be an issue with leafref
+                  to leafref, whose target is in a different module.
+                  Once that is resovled this will switched to use
+                  leafref";
+
+               type string;
+            }
+
+            leaf vnfd-name {
+               description
+                 "Name of the VNFD";
+               type string;
+            }
+
+            list primitive {
+               key "index";
+
+               leaf index {
+                 description "Index of this primitive";
+                 type uint32;
+               }
+
+               leaf name {
+                 description "Name of the primitive in the VNF primitive ";
+                 type string;
+               }
+            }
+         }
+
+         leaf user-defined-script {
+           description
+               "A user defined script.";
+           type string;
+         }
+      }
 
       list initial-config-primitive {
         rwpb:msg-new NsrInitialConfigPrimitive;