Fix VNF-API yang validation issues 17/14317/1
authorramu.n <ramu.n@huawei.com>
Thu, 21 Sep 2017 16:39:22 +0000 (22:09 +0530)
committerramu.n <ramu.n@huawei.com>
Thu, 21 Sep 2017 16:39:22 +0000 (22:09 +0530)
when validate VNF-API.yang with "pyang" has some issues

Change-Id: I908a6bee90b24614f66df61afccf617a599b58db
Issue-Id: SDNC-99
Signed-off-by: Ramu N <ramu.n@huawei.com>
vnfapi/model/src/main/yang/VNF-API.yang
vnfapi/model/src/main/yang/vnfsubmodule.yang

index 1b44413..9b621aa 100755 (executable)
@@ -22,14 +22,15 @@ module VNF-API {
         description\r
             "Initial draft";\r
     }\r
+\r
     // Last updated on 8-17-2016\r
-    grouping sdnc-request-header { \r
-        container sdnc-request-header { \r
-            leaf svc-request-id { \r
-                type string; \r
-            } \r
-            leaf svc-action { \r
-                type enumeration { \r
+    grouping sdnc-request-header {\r
+        container sdnc-request-header {\r
+            leaf svc-request-id {\r
+                type string;\r
+            }\r
+            leaf svc-action {\r
+                type enumeration {\r
                     enum "reserve";\r
                     enum "assign";\r
                     enum "activate";  // equal to commit\r
@@ -37,21 +38,21 @@ module VNF-API {
                     enum "changeassign";\r
                     enum "changedelete";\r
                     enum "rollback";\r
-                } \r
-            } \r
-            leaf svc-notification-url { \r
-                type string; \r
-            } \r
-        } \r
-    } \r
-\r
-    grouping request-information { \r
-        container request-information { \r
-            leaf request-id { \r
-                type string; \r
-            } \r
-            leaf request-action { \r
-                type enumeration { \r
+                }\r
+            }\r
+            leaf svc-notification-url {\r
+                type string;\r
+            }\r
+        }\r
+    }\r
+\r
+    grouping request-information {\r
+        container request-information {\r
+            leaf request-id {\r
+                type string;\r
+            }\r
+            leaf request-action {\r
+                type enumeration {\r
                     enum "PreloadNetworkRequest";\r
                     enum "DeletePreloadNetworkRequest";\r
                     enum "NetworkActivateRequest";\r
@@ -71,210 +72,211 @@ module VNF-API {
                     enum "VfModuleActivateRequest";\r
                     enum "ChangeVfModuleActivateRequest";\r
                     enum "DisconnectVfModuleRequest";\r
-                } \r
-            } \r
-            leaf request-sub-action { \r
-                type enumeration { \r
+                }\r
+            }\r
+            leaf request-sub-action {\r
+                type enumeration {\r
                     enum "SUPP";\r
                     enum "CANCEL";\r
-                } \r
-            } \r
-            leaf source { \r
-                type string; \r
-            } \r
-            leaf notification-url { \r
-                type string; \r
-            } \r
-            leaf order-number { \r
-                type string; \r
-            } \r
-            leaf order-version { \r
-                type string; \r
-            } \r
-        } \r
-    } \r
-\r
-    grouping service-information { \r
-        container service-information { \r
+                }\r
+            }\r
+            leaf source {\r
+                type string;\r
+            }\r
+            leaf notification-url {\r
+                type string;\r
+            }\r
+            leaf order-number {\r
+                type string;\r
+            }\r
+            leaf order-version {\r
+                type string;\r
+            }\r
+        }\r
+    }\r
+\r
+    grouping service-information {\r
+        container service-information {\r
             // 1610 use for AnAI subscription-service-type\r
-            leaf service-type { \r
+            leaf service-type {\r
                 type string;\r
                 description "AnAI subscription-service-type";\r
-            } \r
-            leaf service-id { \r
+            }\r
+            leaf service-id {\r
+                type string;\r
+            }\r
+            leaf service-instance-id {\r
                 type string;\r
-            } \r
-            leaf service-instance-id { \r
-                type string; \r
                 description "A service instance that a VNF or a l3-network is associated with";\r
-            } \r
+            }\r
             // 1610 use for global-customer-id\r
-            leaf subscriber-name { \r
-                type string; \r
+            leaf subscriber-name {\r
+                type string;\r
                 description "AnAI global-customer-id";\r
-            } \r
-        } \r
-    } \r
+            }\r
+        }\r
+    }\r
 \r
 \r
-    grouping vnf-request-information { \r
-        container vnf-request-information { \r
+    grouping vnf-request-information {\r
+        container vnf-request-information {\r
             leaf vnf-request-version {\r
-                type string; \r
+                type string;\r
             }\r
             leaf model-customization-uuid {\r
-                type string; \r
+                type string;\r
                 description "customized resource, i.e. vf-module, for use within a given service";\r
             }\r
             leaf use-preload {\r
-                type enumeration { \r
+                type enumeration {\r
                     enum "Y";\r
                     enum "N";\r
                 }\r
                 description "orchestrate vf-module with full preload data or TOSCA lookup plus EIPAM automation";\r
             }\r
             leaf vnf-id {\r
-                type string; \r
+                type string;\r
                 description "vf-module-id";\r
             }\r
-            leaf vnf-type { \r
-                type string; \r
+            leaf vnf-type {\r
+                type string;\r
                 description "vf-module-type";\r
-            } \r
-            leaf vnf-name { \r
-                type string; \r
+            }\r
+            leaf vnf-name {\r
+                type string;\r
                 description "vf-module-name";\r
-            } \r
+            }\r
             leaf generic-vnf-id {\r
-                type string; \r
+                type string;\r
                 description "generic vnf-id";\r
             }\r
-            leaf generic-vnf-type { \r
-                type string; \r
+            leaf generic-vnf-type {\r
+                type string;\r
                 description "generic vnf type";\r
-            } \r
-            leaf generic-vnf-name { \r
-                type string; \r
+            }\r
+            leaf generic-vnf-name {\r
+                type string;\r
                 description "generic vnf name";\r
-            } \r
-            leaf tenant { \r
-                type string; \r
-            } \r
-            leaf aic-clli { \r
-                type string; \r
-            } \r
-            leaf aic-cloud-region { \r
-                type string; \r
+            }\r
+            leaf tenant {\r
+                type string;\r
+            }\r
+            leaf aic-clli {\r
+                type string;\r
+            }\r
+            leaf aic-cloud-region {\r
+                type string;\r
                 description "The AIC cloud region which maps to contrail versions";\r
-            } \r
+            }\r
             list vnf-networks {\r
                 key network-role;\r
                 uses vnf-network;\r
                 description "Network List";\r
             }\r
         }\r
-    } \r
+    }\r
 \r
-    grouping network-request-information { \r
-        container network-request-information { \r
+    grouping network-request-information {\r
+        container network-request-information {\r
             leaf network-id {\r
-                type string; \r
-            }\r
-            leaf network-type { \r
-                type string; \r
-            } \r
-            leaf network-name { \r
-                type string; \r
-            } \r
-            leaf tenant { \r
-                type string; \r
-            } \r
-            leaf aic-clli { \r
-                type string; \r
-            } \r
-            leaf aic-cloud-region { \r
-                type string; \r
+                type string;\r
+            }\r
+            leaf network-type {\r
+                type string;\r
+            }\r
+            leaf network-name {\r
+                type string;\r
+            }\r
+            leaf tenant {\r
+                type string;\r
+            }\r
+            leaf aic-clli {\r
+                type string;\r
+            }\r
+            leaf aic-cloud-region {\r
+                type string;\r
                 description "The AIC cloud region which maps to contrail versions";\r
-            } \r
+            }\r
         }\r
-    } \r
+    }\r
 \r
     /***********************************************************/\r
     /*               PRELOAD DATA                                 */\r
     /***********************************************************/\r
 \r
     container preload-vnfs {\r
-        uses preload-model-information; \r
-    } \r
-    grouping preload-model-information { \r
-        list vnf-preload-list { \r
-            key "vnf-name vnf-type"; \r
-            leaf vnf-name { \r
-                type string; \r
+        uses preload-model-information;\r
+    }\r
+    grouping preload-model-information {\r
+        list vnf-preload-list {\r
+            key "vnf-name vnf-type";\r
+            leaf vnf-name {\r
+                type string;\r
                 description "vf-module-name";\r
-            } \r
-            leaf vnf-type { \r
-                type string; \r
+            }\r
+            leaf vnf-type {\r
+                type string;\r
                 description "vf-module-type";\r
-            } \r
-            uses preload-data; \r
-        } \r
-    } \r
+            }\r
+            uses preload-data;\r
+        }\r
+    }\r
 \r
     // For preload networks it will have network-topology-information\r
     // For preload vnfs, it will have vnf-topology-information\r
-    grouping preload-data { \r
-        container preload-data { \r
-            uses vnf-topology-information; \r
-            uses network-topology-information; \r
-            uses oper-status; \r
+    grouping preload-data {\r
+        container preload-data {\r
+            uses vnf-topology-information;\r
+            uses network-topology-information;\r
+            uses oper-status;\r
         }\r
-    } \r
+    }\r
 \r
 \r
-    grouping vnf-topology-information { \r
-        container vnf-topology-information { \r
+    grouping vnf-topology-information {\r
+        container vnf-topology-information {\r
             uses vnf-topology-identifier;\r
-            uses vnf-assignments; \r
-            uses vnf-parameters; \r
+            uses vnf-assignments;\r
+            uses vnf-parameters;\r
         }\r
-    } \r
+    }\r
 \r
-    grouping vnf-topology-identifier { \r
-        container vnf-topology-identifier { \r
-            leaf service-type { \r
+    grouping vnf-topology-identifier {\r
+        container vnf-topology-identifier {\r
+            leaf service-type {\r
                 type string;\r
-            } \r
-            leaf service-id { \r
+            }\r
+            leaf service-id {\r
+                type string;\r
+            }\r
+            leaf vnf-name {\r
                 type string;\r
-            } \r
-            leaf vnf-name { \r
-                type string; \r
                 description "vf-module-name";\r
-            } \r
-            leaf vnf-type { \r
-                type string; \r
+            }\r
+            leaf vnf-type {\r
+                type string;\r
                 description "vf-module-type";\r
-            } \r
-            leaf generic-vnf-name { \r
-                type string; \r
-            } \r
-            leaf generic-vnf-type { \r
-                type string; \r
-            } \r
-            leaf generic-vnf-id { \r
-                type string; \r
-            } \r
-        } \r
-    } \r
+            }\r
+            leaf generic-vnf-name {\r
+                type string;\r
+            }\r
+            leaf generic-vnf-type {\r
+                type string;\r
+            }\r
+            leaf generic-vnf-id {\r
+                type string;\r
+            }\r
+        }\r
+    }\r
 \r
     grouping vnf-assignments {\r
-        container vnf-assignments { \r
+        container vnf-assignments {\r
             leaf vnf-status {\r
                 type string;\r
                 description "Orchestration Status from AAI - to be set by SDNC";\r
             }\r
             list availability-zones {\r
+                key "availability-zone";\r
                 ordered-by  user;\r
                 leaf availability-zone {\r
                     type string;\r
@@ -290,25 +292,26 @@ module VNF-API {
             }\r
             uses vm-topology;\r
         }\r
-    } \r
+    }\r
 \r
     grouping vm-topology {\r
         list vnf-vms {\r
             key vm-type;\r
-            leaf vm-type { \r
-                type string; \r
-            } \r
-            leaf vm-count { \r
-                type uint8; \r
-            } \r
+            leaf vm-type {\r
+                type string;\r
+            }\r
+            leaf vm-count {\r
+                type uint8;\r
+            }\r
             list vm-names {\r
+                key "vm-name";\r
                 ordered-by user;\r
-                leaf vm-name\r
-                    type string; \r
-                } \r
+                leaf vm-name {\r
+                    type string;\r
+                }\r
             }\r
             //leaf-list vm-names {\r
-            //    type string; \r
+            //    type string;\r
             //    ordered-by user;\r
             //}\r
             list vm-networks {\r
@@ -320,24 +323,24 @@ module VNF-API {
     }\r
 \r
     grouping vnf-network {\r
-        leaf network-role { \r
-            type string; \r
+        leaf network-role {\r
+            type string;\r
             description "A Network Role to which a VNF must connect";\r
-        } \r
-        leaf network-name { \r
-            type string; \r
+        }\r
+        leaf network-name {\r
+            type string;\r
             description "Unique Neutron UUID of an instance of the network role ";\r
-        } \r
-        leaf neutron-id { \r
-            type string; \r
+        }\r
+        leaf neutron-id {\r
+            type string;\r
             description "Unique Neutron UUID of an instance of the network role ";\r
-        } \r
-        leaf network-id { \r
-            type string; \r
+        }\r
+        leaf network-id {\r
+            type string;\r
             description "Unique Neutron UUID of an instance of the network role ";\r
-        } \r
-        leaf subnet-id { \r
-            type string; \r
+        }\r
+        leaf subnet-id {\r
+            type string;\r
             description "ipv4 subnet UUID to be passed into the HEAT template for DHCP assignment";\r
         }\r
         leaf contrail-network-fqdn {\r
@@ -345,16 +348,16 @@ module VNF-API {
             description "contrail network policy object";\r
         }\r
         // 1610\r
-        leaf ipv6-subnet-id { \r
-            type string; \r
+        leaf ipv6-subnet-id {\r
+            type string;\r
             description "ipv6 subnet UUID to be passed into the HEAT template for DHCP assignment";\r
         }\r
-        leaf ipv6-subnet-name { \r
-            type string; \r
+        leaf ipv6-subnet-name {\r
+            type string;\r
             description "ipv6 subnet-name that corresponds to the ipv6 subnet-id";\r
         }\r
-        leaf subnet-name { \r
-            type string; \r
+        leaf subnet-name {\r
+            type string;\r
             description "ipv4 subnet-name that corresponds to the ipv4 subnet-id";\r
         }\r
     }\r
@@ -362,6 +365,7 @@ module VNF-API {
     // 1610\r
     grouping sriov-vlan-filter-list {\r
         list sriov-vlan-filter-list {\r
+            key "sriov-vlan-filter";\r
             leaf sriov-vlan-filter {\r
                 type string;\r
             }\r
@@ -372,13 +376,13 @@ module VNF-API {
         leaf network-role {\r
             type string;\r
             description "network (identified by role) that this VM connects to.  Should also be included in the vnf-networks for the containing VNF";\r
-    \r
+\r
         }\r
         leaf use-dhcp {\r
-            type enumeration { \r
+            type enumeration {\r
                   enum "Y";\r
                   enum "N";\r
-            } \r
+            }\r
             description "Indicator to use DHCP on this network for this VM";\r
         }\r
         leaf ip-count {\r
@@ -386,6 +390,7 @@ module VNF-API {
             description "The number of ip addresses to be assigned per vm for this network role";\r
         }\r
         list network-ips {\r
+            key "ip-address";\r
             ordered-by user;\r
             leaf ip-address {\r
                 //type string;\r
@@ -394,6 +399,7 @@ module VNF-API {
             }\r
         }\r
         list network-ips-v6 {\r
+            key "ip-address-ipv6";\r
             ordered-by user;\r
             leaf ip-address-ipv6 {\r
                 //type string;\r
@@ -402,6 +408,7 @@ module VNF-API {
             }\r
         }\r
         list network-macs {\r
+            key "mac-address";\r
             ordered-by user;\r
             leaf mac-address {\r
                 type string;\r
@@ -419,6 +426,7 @@ module VNF-API {
             description "Floating ipv6 for VMs of a given type on this network";\r
         }\r
         list interface-route-prefixes {\r
+            key "interface-route-prefix-cidr";\r
             ordered-by user;\r
             leaf interface-route-prefix {\r
                 type ietf:ip-address;\r
@@ -434,47 +442,47 @@ module VNF-API {
     grouping vnf-parameters {\r
         list vnf-parameters {\r
             key vnf-parameter-name;\r
-            leaf vnf-parameter-name { \r
-                type string; \r
+            leaf vnf-parameter-name {\r
+                type string;\r
                 description "The name of an arbitrary instance-specific vnf-parameters";\r
-            } \r
-            leaf vnf-parameter-value { \r
-                type string; \r
+            }\r
+            leaf vnf-parameter-value {\r
+                type string;\r
                 description "The value of an arbitrary instance-specific vnf-parameters ";\r
-            } \r
+            }\r
         }\r
     }\r
 \r
-    grouping network-topology-information { \r
-        container network-topology-information { \r
+    grouping network-topology-information {\r
+        container network-topology-information {\r
             uses network-topology-identifier;\r
-            uses subnets; \r
-            uses vpn-bindings; \r
+            uses subnets;\r
+            uses vpn-bindings;\r
             uses network-policy;\r
             uses route-table-reference;\r
             uses provider-network-information;\r
         }\r
-    } \r
-\r
-    grouping network-topology-identifier { \r
-        container network-topology-identifier { \r
-            leaf service-type { \r
-                type string;\r
-            } \r
-            leaf network-name { \r
-                type string; \r
-            } \r
-            leaf network-role { \r
-                type string; \r
-            } \r
-            leaf network-type { \r
-                type string; \r
-            } \r
-            leaf network-technology{ \r
-                type string; \r
-            } \r
-        } \r
-    } \r
+    }\r
+\r
+    grouping network-topology-identifier {\r
+        container network-topology-identifier {\r
+            leaf service-type {\r
+                type string;\r
+            }\r
+            leaf network-name {\r
+                type string;\r
+            }\r
+            leaf network-role {\r
+                type string;\r
+            }\r
+            leaf network-type {\r
+                type string;\r
+            }\r
+            leaf network-technology{\r
+                type string;\r
+            }\r
+        }\r
+    }\r
     grouping subnets {\r
         list subnets {\r
             key start-address;\r
@@ -508,9 +516,9 @@ module VNF-API {
             leaf subnet-name {\r
                 type string;\r
             }\r
-            \r
+\r
         }\r
-    } \r
+    }\r
 \r
     grouping vpn-bindings {\r
         list vpn-bindings {\r
@@ -522,7 +530,7 @@ module VNF-API {
                 type string;\r
             }\r
         }\r
-    } \r
+    }\r
 \r
     grouping network-policy {\r
         list network-policy {\r
@@ -534,11 +542,12 @@ module VNF-API {
                 type string;\r
             }\r
         }\r
-    } \r
+    }\r
 \r
     //1610\r
     grouping route-table-reference {\r
         list route-table-reference {\r
+            key "route-table-reference-id";\r
             leaf route-table-reference-id {\r
                 type string;\r
             }\r
@@ -570,46 +579,46 @@ module VNF-API {
     /*               SERVICE_DATA                                */\r
     /***********************************************************/\r
     container vnfs {\r
-        uses vnf-model-infrastructure; \r
-    } \r
-    grouping vnf-model-infrastructure { \r
-        list vnf-list { \r
-            key vnf-id; \r
-            leaf vnf-id { \r
-                type string; \r
-                mandatory true; \r
+        uses vnf-model-infrastructure;\r
+    }\r
+    grouping vnf-model-infrastructure {\r
+        list vnf-list {\r
+            key vnf-id;\r
+            leaf vnf-id {\r
+                type string;\r
+                mandatory true;\r
                 description "vf-module-id";\r
-            } \r
-            uses service-data; \r
-            uses service-status; \r
-        } \r
-    } \r
-    grouping service-data { \r
-        container service-data { \r
-            uses vnf-configuration-information; \r
-            uses oper-status; \r
-        } \r
-    } \r
-    grouping service-status { \r
-        container service-status { \r
-            leaf response-code { \r
-                type string; \r
-            } \r
-            leaf response-message { \r
-                type string; \r
-            } \r
-            leaf final-indicator { \r
-                type string; \r
-            } \r
-            leaf request-status { \r
-                type enumeration { \r
+            }\r
+            uses service-data;\r
+            uses service-status;\r
+        }\r
+    }\r
+    grouping service-data {\r
+        container service-data {\r
+            uses vnf-configuration-information;\r
+            uses oper-status;\r
+        }\r
+    }\r
+    grouping service-status {\r
+        container service-status {\r
+            leaf response-code {\r
+                type string;\r
+            }\r
+            leaf response-message {\r
+                type string;\r
+            }\r
+            leaf final-indicator {\r
+                type string;\r
+            }\r
+            leaf request-status {\r
+                type enumeration {\r
                     enum "synccomplete";\r
                     enum "asynccomplete";\r
                     enum "notifycomplete";\r
-                } \r
-            } \r
-            leaf vnfsdn-action { \r
-                type enumeration { \r
+                }\r
+            }\r
+            leaf vnfsdn-action {\r
+                type enumeration {\r
                     enum "PreloadNetworkRequest";\r
                     enum "DeletePreloadNetworkRequest";\r
                     enum "NetworkActivateRequest";\r
@@ -629,26 +638,26 @@ module VNF-API {
                     enum "VfModuleActivateRequest";\r
                     enum "ChangeVfModuleActivateRequest";\r
                     enum "DisconnectVfModuleRequest";\r
-                } \r
-            } \r
-            leaf vnfsdn-subaction { \r
-                type enumeration { \r
+                }\r
+            }\r
+            leaf vnfsdn-subaction {\r
+                type enumeration {\r
                     enum "SUPP";\r
                     enum "CANCEL";\r
-                } \r
+                }\r
             }\r
-            leaf rpc-name { \r
-                type enumeration { \r
+            leaf rpc-name {\r
+                type enumeration {\r
                     enum "vnf-topology-operation";\r
                     enum "preload-vnf-topology-operation";\r
                     enum "vnf-instance-topology-operation";\r
                     enum "preload-vnf-instance-topology-operation";\r
                     enum "vf-module-topology-operation";\r
                     enum "preload-vf-module-topology-operation";\r
-                } \r
-            } \r
-            leaf rpc-action { \r
-                type enumeration { \r
+                }\r
+            }\r
+            leaf rpc-action {\r
+                type enumeration {\r
                     enum "reserve";\r
                     enum "assign";\r
                     enum "activate";  // equal to commit\r
@@ -656,75 +665,75 @@ module VNF-API {
                     enum "changeassign";\r
                     enum "changedelete";\r
                     enum "rollback";\r
-                } \r
-            } \r
-            leaf response-timestamp { \r
-                type string; \r
-            } \r
-        } \r
-    } \r
-    grouping vnf-configuration-information { \r
-        uses sdnc-request-header; \r
-        uses request-information; \r
+                }\r
+            }\r
+            leaf response-timestamp {\r
+                type string;\r
+            }\r
+        }\r
+    }\r
+    grouping vnf-configuration-information {\r
+        uses sdnc-request-header;\r
+        uses request-information;\r
         uses service-information;\r
         uses vnf-request-information;\r
-        uses vnf-topology; \r
-    } \r
-    grouping vnf-topology-response-body { \r
-        leaf svc-request-id { \r
-            type string; \r
-        } \r
-        leaf response-code { \r
-            type string; \r
-        } \r
-        leaf response-message { \r
-            type string; \r
-        } \r
-        leaf ack-final-indicator { \r
-            type string; \r
-        } \r
-    } \r
-\r
-    grouping vnf-information { \r
-        container vnf-information { \r
-            leaf vnf-service-type { \r
-                type string;\r
-            } \r
-            leaf vnf-id { \r
-                type string; \r
+        uses vnf-topology;\r
+    }\r
+    grouping vnf-topology-response-body {\r
+        leaf svc-request-id {\r
+            type string;\r
+        }\r
+        leaf response-code {\r
+            type string;\r
+        }\r
+        leaf response-message {\r
+            type string;\r
+        }\r
+        leaf ack-final-indicator {\r
+            type string;\r
+        }\r
+    }\r
+\r
+    grouping vnf-information {\r
+        container vnf-information {\r
+            leaf vnf-service-type {\r
+                type string;\r
+            }\r
+            leaf vnf-id {\r
+                type string;\r
                 description "vf-module-id";\r
-            } \r
-        } \r
-    } \r
+            }\r
+        }\r
+    }\r
 \r
-    grouping network-information { \r
-        container network-information { \r
-            leaf network-service-type { \r
+    grouping network-information {\r
+        container network-information {\r
+            leaf network-service-type {\r
                 type string;\r
-            } \r
-            leaf network-id { \r
-                type string; \r
-            } \r
-        } \r
-    } \r
+            }\r
+            leaf network-id {\r
+                type string;\r
+            }\r
+        }\r
+    }\r
 \r
 \r
     // Carried over from l3sdn and potentially not needed\r
-    grouping oper-status { \r
-        container oper-status { \r
-            leaf order-status { \r
-                type enumeration { \r
+    grouping oper-status {\r
+        container oper-status {\r
+            leaf order-status {\r
+                type enumeration {\r
                     enum "Active";\r
                     enum "PendingAssignment";\r
                     enum "PendingCreate";\r
                     enum "PendingUpdate";\r
                     enum "PendingDelete";\r
                     enum "Deleted";\r
-                    \r
-                } \r
+\r
+                }\r
             }\r
-            leaf last-action { \r
-                type enumeration { \r
+            leaf last-action {\r
+                type enumeration {\r
                     enum "VNFActivateRequest";\r
                     enum "ChangeVNFActivateRequest";\r
                     enum "VnfInstanceActivateRequest";\r
@@ -740,91 +749,91 @@ module VNF-API {
                     enum "DeletePreloadVnfInstanceRequest";\r
                     enum "PreloadVfModuleRequest";\r
                     enum "DeletePreloadVfModuleRequest";\r
-                } \r
-            } \r
-            leaf last-svc-request-id { \r
-                type string; \r
-            } \r
-            leaf last-order-status { \r
-                type enumeration { \r
+                }\r
+            }\r
+            leaf last-svc-request-id {\r
+                type string;\r
+            }\r
+            leaf last-order-status {\r
+                type enumeration {\r
                     enum "Active";\r
                     enum "PendingAssignment";\r
                     enum "PendingCreate";\r
                     enum "PendingUpdate";\r
                     enum "PendingDelete";\r
                     enum "Deleted";\r
-                } \r
-            } \r
-            leaf create-timestamp { \r
-                type string; \r
-            } \r
-            leaf modify-timestamp { \r
-                type string; \r
-            } \r
-            leaf maintenance-indicator { \r
-                type enumeration { \r
+                }\r
+            }\r
+            leaf create-timestamp {\r
+                type string;\r
+            }\r
+            leaf modify-timestamp {\r
+                type string;\r
+            }\r
+            leaf maintenance-indicator {\r
+                type enumeration {\r
                     enum "Y";\r
                     enum "N";\r
-                } \r
-            } \r
-        } \r
-    } \r
-    grouping vnf-topology { \r
+                }\r
+            }\r
+        }\r
+    }\r
+    grouping vnf-topology {\r
         leaf vnf-id {\r
-            type string; \r
+            type string;\r
             description "vf-module-id";\r
         }\r
-        uses vnf-topology-information; \r
-    } \r
-    \r
-    \r
+        uses vnf-topology-information;\r
+    }\r
+\r
+\r
     rpc vnf-topology-operation {\r
-        input { \r
-            uses sdnc-request-header; \r
-            uses request-information; \r
+        input {\r
+            uses sdnc-request-header;\r
+            uses request-information;\r
             uses service-information;\r
-            uses vnf-request-information; \r
-        } \r
-        output { \r
-            uses vnf-topology-response-body; \r
+            uses vnf-request-information;\r
+        }\r
+        output {\r
+            uses vnf-topology-response-body;\r
             uses vnf-information;\r
             uses service-information;\r
-        } \r
-    } \r
+        }\r
+    }\r
 \r
     rpc network-topology-operation {\r
-        input { \r
-            uses sdnc-request-header; \r
-            uses request-information; \r
+        input {\r
+            uses sdnc-request-header;\r
+            uses request-information;\r
             uses service-information;\r
-            uses network-request-information; \r
-        } \r
-        output { \r
-            uses vnf-topology-response-body; \r
+            uses network-request-information;\r
+        }\r
+        output {\r
+            uses vnf-topology-response-body;\r
             uses network-information;\r
             uses service-information;\r
-        } \r
-    } \r
+        }\r
+    }\r
 \r
     rpc preload-vnf-topology-operation {\r
-        input { \r
-            uses sdnc-request-header; \r
-            uses request-information; \r
+        input {\r
+            uses sdnc-request-header;\r
+            uses request-information;\r
             uses vnf-topology-information;\r
-        } \r
-        output { \r
-            uses vnf-topology-response-body; \r
-        } \r
+        }\r
+        output {\r
+            uses vnf-topology-response-body;\r
+        }\r
     }\r
 \r
     rpc preload-network-topology-operation {\r
-        input { \r
-            uses sdnc-request-header; \r
-            uses request-information; \r
+        input {\r
+            uses sdnc-request-header;\r
+            uses request-information;\r
             uses network-topology-information;\r
-        } \r
-        output { \r
-            uses vnf-topology-response-body; \r
-        } \r
+        }\r
+        output {\r
+            uses vnf-topology-response-body;\r
+        }\r
     }\r
 }\r
index 1c573d2..7899d52 100755 (executable)
@@ -6,8 +6,8 @@ submodule vnfsubmodule {
     /********************************************/\r
     /*             vnf-instance                 */\r
     /********************************************/\r
-       grouping vnf-instance-request-information { \r
-               container vnf-instance-request-information { \r
+       grouping vnf-instance-request-information {\r
+               container vnf-instance-request-information {\r
             leaf request-version {\r
                 type string;\r
             }\r
@@ -19,7 +19,7 @@ submodule vnfsubmodule {
                                description "List of vnf networks to override preload";\r
                        }\r
                }\r
-       } \r
+       }\r
 \r
     grouping region-identifier {\r
         leaf tenant {\r
@@ -37,51 +37,51 @@ submodule vnfsubmodule {
     /***********************************************************/\r
 \r
        container preload-vnf-instances {\r
-               uses preload-vnf-instance-model-information; \r
-       } \r
-       grouping preload-vnf-instance-model-information { \r
-               list vnf-instance-preload-list { \r
-                       key "vnf-instance-name vnf-model-id"; \r
-                       leaf vnf-instance-name { \r
-                               type string; \r
+               uses preload-vnf-instance-model-information;\r
+       }\r
+       grouping preload-vnf-instance-model-information {\r
+               list vnf-instance-preload-list {\r
+                       key "vnf-instance-name vnf-model-id";\r
+                       leaf vnf-instance-name {\r
+                               type string;\r
                                description "vnf-instance-name, aka generic-vnf-name";\r
-                       } \r
-                       leaf vnf-model-id { \r
-                               type string; \r
+                       }\r
+                       leaf vnf-model-id {\r
+                               type string;\r
                                description "vnf-model-id, aka generic-vnf-type";\r
-                       } \r
-                       uses vnf-instance-preload-data; \r
-               } \r
-       } \r
+                       }\r
+                       uses vnf-instance-preload-data;\r
+               }\r
+       }\r
 \r
-       grouping vnf-instance-preload-data { \r
-               container vnf-instance-preload-data { \r
-                       uses vnf-instance-topology-information; \r
-                       uses vnfapi:oper-status; \r
+       grouping vnf-instance-preload-data {\r
+               container vnf-instance-preload-data {\r
+                       uses vnf-instance-topology-information;\r
+                       uses vnfapi:oper-status;\r
                }\r
-       } \r
+       }\r
 \r
-       grouping vnf-instance-topology-information { \r
-               container vnf-instance-topology-information { \r
+       grouping vnf-instance-topology-information {\r
+               container vnf-instance-topology-information {\r
                        uses vnf-instance-identifiers;\r
-                       uses vnfapi:service-information; \r
-                       uses vnfapi:vnf-assignments; \r
-                       uses vnfapi:vnf-parameters; \r
+                       uses vnfapi:service-information;\r
+                       uses vnfapi:vnf-assignments;\r
+                       uses vnfapi:vnf-parameters;\r
                }\r
-       } \r
+       }\r
 \r
     // This is used by MSO request for assign,rollback,activate,delete, etc\r
-       grouping vnf-instance-topology-identifier { \r
-               leaf vnf-instance-name { \r
-                       type string; \r
-               } \r
-               leaf vnf-model-id { \r
-                       type string; \r
-               } \r
-               leaf vnf-instance-id { \r
-                       type string; \r
-               } \r
-       } \r
+       grouping vnf-instance-topology-identifier {\r
+               leaf vnf-instance-name {\r
+                       type string;\r
+               }\r
+               leaf vnf-model-id {\r
+                       type string;\r
+               }\r
+               leaf vnf-instance-id {\r
+                       type string;\r
+               }\r
+       }\r
 \r
     // container used in preload identifiers\r
     grouping vnf-instance-identifiers {\r
@@ -94,20 +94,20 @@ submodule vnfsubmodule {
     /*               SERVICE_DATA  - vnf-instance              */\r
        /***********************************************************/\r
        container vnf-instances {\r
-               uses vnf-instance-model-infrastructure; \r
-       } \r
-       grouping vnf-instance-model-infrastructure { \r
-               list vnf-instance-list { \r
-                       key vnf-instance-id; \r
-                       leaf vnf-instance-id { \r
-                               type string; \r
-                               mandatory true; \r
+               uses vnf-instance-model-infrastructure;\r
+       }\r
+       grouping vnf-instance-model-infrastructure {\r
+               list vnf-instance-list {\r
+                       key vnf-instance-id;\r
+                       leaf vnf-instance-id {\r
+                               type string;\r
+                               mandatory true;\r
                                description "generic-vnf-id";\r
-                       } \r
+                       }\r
                        uses vnf-instance-service-data;\r
-                       uses vnfapi:service-status; \r
-               } \r
-       } \r
+                       uses vnfapi:service-status;\r
+               }\r
+       }\r
 \r
     grouping vnf-instance-service-data {\r
         container vnf-instance-service-data {\r
@@ -117,16 +117,17 @@ submodule vnfsubmodule {
         }\r
     }\r
 \r
-       grouping vnf-instance-configuration-information { \r
-               uses vnfapi:sdnc-request-header; \r
-               uses vnfapi:request-information; \r
+       grouping vnf-instance-configuration-information {\r
+               uses vnfapi:sdnc-request-header;\r
+               uses vnfapi:request-information;\r
                uses vnfapi:service-information;\r
                uses vnf-instance-request-information;\r
-               uses vnf-instance-topology; \r
-       } \r
+               uses vnf-instance-topology;\r
+       }\r
 \r
     grouping vf-module-relationship-list {\r
         list vf-module-relationship-list {\r
+            key "vf-module-id";\r
             leaf vf-module-id {\r
                 type string;\r
                 description "vf-module-id";\r
@@ -134,74 +135,74 @@ submodule vnfsubmodule {
         }\r
     }\r
 \r
-       grouping vnf-instance-topology-response-body { \r
-               leaf svc-request-id { \r
-                       type string; \r
-               } \r
-               leaf response-code { \r
-                       type string; \r
-               } \r
-               leaf response-message { \r
-                       type string; \r
-               } \r
-               leaf ack-final-indicator { \r
-                       type string; \r
-               } \r
-       } \r
-\r
-       grouping vnf-instance-information { \r
-               container vnf-instance-information { \r
-                       leaf vnf-instance-id { \r
-                               type string; \r
+       grouping vnf-instance-topology-response-body {\r
+               leaf svc-request-id {\r
+                       type string;\r
+               }\r
+               leaf response-code {\r
+                       type string;\r
+               }\r
+               leaf response-message {\r
+                       type string;\r
+               }\r
+               leaf ack-final-indicator {\r
+                       type string;\r
+               }\r
+       }\r
+\r
+       grouping vnf-instance-information {\r
+               container vnf-instance-information {\r
+                       leaf vnf-instance-id {\r
+                               type string;\r
                                description "vnf-instance-id";\r
-                       } \r
-               } \r
-       } \r
+                       }\r
+               }\r
+       }\r
 \r
-       grouping vnf-instance-topology { \r
+       grouping vnf-instance-topology {\r
                leaf vnf-instance-id {\r
-                       type string; \r
+                       type string;\r
                        description "vnf-instance-id";\r
                }\r
-               uses vnf-instance-topology-information; \r
-       } \r
-       \r
-       \r
+               uses vnf-instance-topology-information;\r
+       }\r
+\r
+\r
        rpc vnf-instance-topology-operation {\r
-               input { \r
-                       uses sdnc-request-header; \r
-                       uses request-information; \r
+               input {\r
+                       uses sdnc-request-header;\r
+                       uses request-information;\r
                        uses service-information;\r
-                       uses vnf-instance-request-information; \r
-               } \r
-               output { \r
-                       uses vnf-instance-topology-response-body; \r
+                       uses vnf-instance-request-information;\r
+               }\r
+               output {\r
+                       uses vnf-instance-topology-response-body;\r
                        uses vnf-instance-information;\r
                        uses service-information;\r
-               } \r
-       } \r
+               }\r
+       }\r
 \r
        rpc preload-vnf-instance-topology-operation {\r
-               input { \r
-                       uses sdnc-request-header; \r
-                       uses request-information; \r
+               input {\r
+                       uses sdnc-request-header;\r
+                       uses request-information;\r
                        uses vnf-instance-topology-information;\r
-               } \r
-               output { \r
-                       uses vnf-instance-topology-response-body; \r
-               } \r
+               }\r
+               output {\r
+                       uses vnf-instance-topology-response-body;\r
+               }\r
        }\r
 \r
     /********************************************/\r
     /*             vf-module                    */\r
     /********************************************/\r
-       grouping vf-module-request-information { \r
-               container vf-module-request-information { \r
+       grouping vf-module-request-information {\r
+               container vf-module-request-information {\r
             uses vnf-instance-topology-identifier;\r
             uses region-identifier;\r
             uses vf-module-topology-identifier;\r
                }\r
-       } \r
+       }\r
 \r
     grouping vf-module-identifiers {\r
         container vf-module-identifiers {\r
@@ -211,146 +212,146 @@ submodule vnfsubmodule {
 \r
     grouping vf-module-topology-identifier {\r
         leaf vf-module-id {\r
-            type string; \r
+            type string;\r
             description "vf-module id";\r
         }\r
-        leaf vf-module-name { \r
-            type string; \r
+        leaf vf-module-name {\r
+            type string;\r
             description "vf-module-name";\r
-        } \r
-        leaf vf-module-model-id { \r
-            type string; \r
+        }\r
+        leaf vf-module-model-id {\r
+            type string;\r
             description "vf-module-type";\r
         }\r
-    } \r
+    }\r
 \r
     /***********************************************************/\r
     /*             PRELOAD DATA  - vfmodule                    */\r
     /***********************************************************/\r
        container preload-vf-modules {\r
-               uses preload-vf-module-model-information; \r
-       } \r
-\r
-       grouping preload-vf-module-model-information { \r
-               list vf-module-preload-list { \r
-                       key "vf-module-name vf-module-model-id"; \r
-                       leaf vf-module-name { \r
-                               type string; \r
+               uses preload-vf-module-model-information;\r
+       }\r
+\r
+       grouping preload-vf-module-model-information {\r
+               list vf-module-preload-list {\r
+                       key "vf-module-name vf-module-model-id";\r
+                       leaf vf-module-name {\r
+                               type string;\r
                                description "vf-module-name";\r
-                       } \r
-                       leaf vf-module-model-id { \r
-                               type string; \r
+                       }\r
+                       leaf vf-module-model-id {\r
+                               type string;\r
                                description "vf-module-type";\r
-                       } \r
-                       uses vf-module-preload-data; \r
-               } \r
-       } \r
+                       }\r
+                       uses vf-module-preload-data;\r
+               }\r
+       }\r
 \r
-       grouping vf-module-preload-data { \r
-               container vf-module-preload-data { \r
-                       uses vf-module-topology-information; \r
-                       uses vnfapi:oper-status; \r
+       grouping vf-module-preload-data {\r
+               container vf-module-preload-data {\r
+                       uses vf-module-topology-information;\r
+                       uses vnfapi:oper-status;\r
                }\r
-       } \r
+       }\r
 \r
-       grouping vf-module-topology-information { \r
-               container vf-module-topology-information { \r
+       grouping vf-module-topology-information {\r
+               container vf-module-topology-information {\r
                        uses vf-module-identifiers;\r
-                       uses vnfapi:vnf-assignments; \r
-                       uses vnfapi:vnf-parameters; \r
+                       uses vnfapi:vnf-assignments;\r
+                       uses vnfapi:vnf-parameters;\r
                }\r
-       } \r
+       }\r
 \r
 \r
     /***********************************************************/\r
     /*               SERVICE_DATA - vfmodule                   */\r
     /***********************************************************/\r
        container vf-modules {\r
-               uses vf-module-model-infrastructure; \r
-       } \r
-       grouping vf-module-model-infrastructure { \r
-               list vf-module-list { \r
-                       key vf-module-id; \r
-                       leaf vf-module-id { \r
-                               type string; \r
-                               mandatory true; \r
+               uses vf-module-model-infrastructure;\r
+       }\r
+       grouping vf-module-model-infrastructure {\r
+               list vf-module-list {\r
+                       key vf-module-id;\r
+                       leaf vf-module-id {\r
+                               type string;\r
+                               mandatory true;\r
                                description "vf-module-id";\r
-                       } \r
+                       }\r
                        uses vf-module-service-data;\r
-                       uses vnfapi:service-status; \r
-               } \r
-       } \r
+                       uses vnfapi:service-status;\r
+               }\r
+       }\r
 \r
    grouping vf-module-service-data {\r
      container vf-module-service-data {\r
        uses vf-module-configuration-information;\r
        uses vnfapi:oper-status;\r
      }\r
-    } \r
+    }\r
 \r
-       grouping vf-module-configuration-information { \r
-               uses vnfapi:sdnc-request-header; \r
-               uses vnfapi:request-information; \r
+       grouping vf-module-configuration-information {\r
+               uses vnfapi:sdnc-request-header;\r
+               uses vnfapi:request-information;\r
                uses vnfapi:service-information;\r
                uses vf-module-request-information;\r
-               uses vf-module-topology; \r
-       } \r
-\r
-       grouping vf-module-topology-response-body { \r
-               leaf svc-request-id { \r
-                       type string; \r
-               } \r
-               leaf response-code { \r
-                       type string; \r
-               } \r
-               leaf response-message { \r
-                       type string; \r
-               } \r
-               leaf ack-final-indicator { \r
-                       type string; \r
-               } \r
-       } \r
-\r
-       grouping vf-module-information { \r
-               container vf-module-information { \r
-                       leaf vf-module-id { \r
-                               type string; \r
+               uses vf-module-topology;\r
+       }\r
+\r
+       grouping vf-module-topology-response-body {\r
+               leaf svc-request-id {\r
+                       type string;\r
+               }\r
+               leaf response-code {\r
+                       type string;\r
+               }\r
+               leaf response-message {\r
+                       type string;\r
+               }\r
+               leaf ack-final-indicator {\r
+                       type string;\r
+               }\r
+       }\r
+\r
+       grouping vf-module-information {\r
+               container vf-module-information {\r
+                       leaf vf-module-id {\r
+                               type string;\r
                                description "vf-module-id";\r
-                       } \r
-               } \r
-       } \r
+                       }\r
+               }\r
+       }\r
 \r
-       grouping vf-module-topology { \r
+       grouping vf-module-topology {\r
                leaf vf-module-id {\r
-                       type string; \r
+                       type string;\r
                        description "vf-module-id";\r
                }\r
-               uses vf-module-topology-information; \r
-       } \r
-       \r
-       \r
+               uses vf-module-topology-information;\r
+       }\r
+\r
+\r
        rpc vf-module-topology-operation {\r
-               input { \r
-                       uses sdnc-request-header; \r
-                       uses request-information; \r
+               input {\r
+                       uses sdnc-request-header;\r
+                       uses request-information;\r
                        uses service-information;\r
-                       uses vf-module-request-information; \r
-               } \r
-               output { \r
-                       uses vf-module-topology-response-body; \r
+                       uses vf-module-request-information;\r
+               }\r
+               output {\r
+                       uses vf-module-topology-response-body;\r
                        uses vf-module-information;\r
                        uses service-information;\r
-               } \r
-       } \r
+               }\r
+       }\r
 \r
        rpc preload-vf-module-topology-operation {\r
-               input { \r
-                       uses sdnc-request-header; \r
-                       uses request-information; \r
+               input {\r
+                       uses sdnc-request-header;\r
+                       uses request-information;\r
                        uses vf-module-topology-information;\r
-               } \r
-               output { \r
-                       uses vf-module-topology-response-body; \r
-               } \r
+               }\r
+               output {\r
+                       uses vf-module-topology-response-body;\r
+               }\r
        }\r
 }\r