Feature 8634: support for L3 networking
[osm/IM.git] / models / yang / mano-types.yang
index a734822..f4cce6b 100644 (file)
@@ -176,7 +176,7 @@ module mano-types
       description
           "Name of the configuration primitive.";
       type string;
-      mandatory "true";
+      mandatory true;
     }
 
     leaf user-defined-script {
@@ -221,22 +221,36 @@ module mano-types
   }
 
 
-  grouping vca-relationships {
-    container vca-relationships {
-      list relation {
-        description "List of relations between VCA componets.";
+  grouping vca-relations {
+    list relation {
+      description "List of relations between elements in this descriptor.";
+      key "name";
+
+      leaf name {
+        description
+          "Name of the relation.";
 
-        key "requires provides";
+        type string;
+      }
+
+      list entities {
+        description
+          "List of two elements to be related.
+           Elements to be related are identified by a pair (id, endpoint).
+           The relation will relate (id1, endpoint1) to (id2, endpoint2).";
+        key "id";
 
-        leaf requires {
+        leaf id {
           description
-            "Name of the required relation.";
+            "A string, reference to the element id in the descriptor.
+             It could be a vnfd-id or a vdu-id in a VNFD,
+             or a nsd-id or member-vnf-index in a NSD.";
           type string;
         }
 
-        leaf provides {
+        leaf endpoint {
           description
-            "Name of the provided relation.";
+            "Endpoint name defining the relation.";
           type string;
         }
       }
@@ -291,7 +305,6 @@ module mano-types
             type boolean;
             default true;
           }
-          uses manotypes:vca-relationships;
         }
       }
     }
@@ -420,15 +433,17 @@ module mano-types
   typedef virtual-link-type {
     description
         "Type of virtual link
-         ELAN: A multipoint service connecting a set of VNFs
-         ELINE: For a simple point to point connection
-         //        between a VNF and the existing network.
+         ELAN: A multipoint service connecting a set of elements
+         ELINE: A point-to-point service connecting two elements
+         L3: A service providing either Layer-3 visibility (IP) between
+             VDUs/VNFs or explicit interconnection between two ELAN VLDs.";
          // ETREE: A multipoint service connecting one or
          //        more roots and a set of leaves, but
          //        preventing inter-leaf communication.";
     type enumeration {
       enum ELAN;
       enum ELINE;
+      enum L3;
       // enum ETREE;
     }
   }