[AAI-174 Amsterdam] removed invalid edge rules 55/7655/2
authorThreefoot, Jane (jt6620) <jt6620@att.com>
Tue, 15 Aug 2017 20:28:10 +0000 (16:28 -0400)
committerThreefoot, Jane (jt6620) <jt6620@att.com>
Tue, 15 Aug 2017 20:44:27 +0000 (16:44 -0400)
Change-Id: Ibed817603255fd417025b2bfc62781482d5b3d2a
Signed-off-by: Threefoot, Jane (jt6620) <jt6620@att.com>
aai-core/src/main/resources/dbedgerules/DbEdgeRules_v10.json
aai-core/src/main/resources/dbedgerules/DbEdgeRules_v11.json
aai-core/src/main/resources/dbedgerules/DbEdgeRules_v8.json
aai-core/src/main/resources/dbedgerules/DbEdgeRules_v9.json
aai-schema/src/main/resources/aai_schema/aai_schema_v11.xsd
aai-schema/src/main/resources/oxm/aai_oxm_v11.xml

index b1173c2..1b53035 100644 (file)
@@ -6,7 +6,7 @@
                        "label": "groupsResourcesIn",
                        "direction": "OUT",
                        "multiplicity": "Many2Many",
-                       "contains": "NONE",
+                       "contains-other-v": "NONE",
                        "delete-other-v": "NONE",
                        "SVC-INFRA": "NONE",
                        "prevent-delete": "!${direction}"
@@ -17,7 +17,7 @@
                        "label": "uses",
                        "direction": "OUT",
                        "multiplicity": "Many2Many",
-                       "contains": "NONE",
+                       "contains-other-v": "NONE",
                        "delete-other-v": "NONE",
                        "SVC-INFRA": "NONE",
                        "prevent-delete": "!${direction}"
@@ -28,7 +28,7 @@
                        "label": "supportsServiceCapability",
                        "direction": "OUT",
                        "multiplicity": "Many2Many",
-                       "contains": "NONE",
+                       "contains-other-v": "NONE",
                        "delete-other-v": "NONE",
                        "SVC-INFRA": "NONE",
                        "prevent-delete": "!${direction}"
@@ -39,7 +39,7 @@
                        "label": "locatedIn",
                        "direction": "OUT",
                        "multiplicity": "Many2One",
-                       "contains": "NONE",
+                       "contains-other-v": "NONE",
                        "delete-other-v": "NONE",
                        "SVC-INFRA": "NONE",
                        "prevent-delete": "!${direction}"
@@ -50,7 +50,7 @@
                        "label": "uses",
                        "direction": "OUT",
                        "multiplicity": "Many2Many",
-                       "contains": "NONE",
+                       "contains-other-v": "NONE",
                        "delete-other-v": "NONE",
                        "SVC-INFRA": "NONE",
                        "prevent-delete": "NONE"
@@ -61,7 +61,7 @@
                        "label": "has",
                        "direction": "OUT",
                        "multiplicity": "One2Many",
-                       "contains": "${direction}",
+                       "contains-other-v": "${direction}",
                        "delete-other-v": "NONE",
                        "SVC-INFRA": "!${direction}",
                        "prevent-delete": "${direction}"
@@ -72,7 +72,7 @@
                        "label": "has",
                        "direction": "OUT",
                        "multiplicity": "One2Many",
-                       "contains": "${direction}",
+                       "contains-other-v": "${direction}",
                        "delete-other-v": "NONE",
                        "SVC-INFRA": "NONE",
                        "prevent-delete": "${direction}"
@@ -83,7 +83,7 @@
                        "label": "has",
                        "direction": "OUT",
                        "multiplicity": "One2Many",
-                       "contains": "${direction}",
+                       "contains-other-v": "${direction}",
                        "delete-other-v": "NONE",
                        "SVC-INFRA": "NONE",
                        "prevent-delete": "${direction}"
@@ -94,7 +94,7 @@
                        "label": "has",
                        "direction": "OUT",
                        "multiplicity": "One2Many",
-                       "contains": "${direction}",
+                       "contains-other-v": "${direction}",
                        "delete-other-v": "NONE",
                        "SVC-INFRA": "NONE",
                        "prevent-delete": "${direction}"
                        "label": "has",
                        "direction": "OUT",
                        "multiplicity": "One2Many",
-                       "contains": "${direction}",
+                       "contains-other-v": "${direction}",
                        "delete-other-v": "NONE",
                        "SVC-INFRA": "NONE",
                        "prevent-delete": "${direction}"
                        "label": "has",
                        "direction": "OUT",
                        "multiplicity": "One2Many",
-                       "contains": "${direction}",
+                       "contains-other-v": "${direction}",
                        "delete-other-v": "NONE",
                        "SVC-INFRA": "NONE",
                        "prevent-delete": "${direction}"
                        "label": "has",
                        "direction": "OUT",
                        "multiplicity": "One2Many",
-                       "contains": "${direction}",
-                       "uses-resource": "${direction}",
+                       "contains-other-v": "${direction}",
                        "delete-other-v": "NONE",
                        "SVC-INFRA": "NONE",
                        "prevent-delete": "${direction}"
                        "label": "has",
                        "direction": "OUT",
                        "multiplicity": "One2Many",
-                       "contains": "${direction}",
+                       "contains-other-v": "${direction}",
                        "delete-other-v": "NONE",
                        "SVC-INFRA": "NONE",
                        "prevent-delete": "${direction}"
                        "label": "has",
                        "direction": "OUT",
                        "multiplicity": "One2Many",
-                       "contains": "${direction}",
+                       "contains-other-v": "${direction}",
                        "delete-other-v": "NONE",
                        "SVC-INFRA": "NONE",
                        "prevent-delete": "${direction}"
                        "label": "isMemberOf",
                        "direction": "OUT",
                        "multiplicity": "Many2One",
-                       "contains": "NONE",
+                       "contains-other-v": "NONE",
                        "delete-other-v": "NONE",
                        "SVC-INFRA": "NONE",
                        "prevent-delete": "NONE"
                        "label": "hasCtagPool",
                        "direction": "OUT",
                        "multiplicity": "Many2Many",
-                       "contains": "${direction}",
+                       "contains-other-v": "${direction}",
                        "delete-other-v": "NONE",
                        "SVC-INFRA": "NONE",
                        "prevent-delete": "NONE"
                        "label": "usesL3Network",
                        "direction": "OUT",
                        "multiplicity": "Many2Many",
-                       "contains": "NONE",
+                       "contains-other-v": "NONE",
                        "delete-other-v": "NONE",
                        "SVC-INFRA": "${direction}",
                        "prevent-delete": "NONE"
                        "label": "supportsAvailabilityZone",
                        "direction": "OUT",
                        "multiplicity": "Many2Many",
-                       "contains": "NONE",
+                       "contains-other-v": "NONE",
                        "delete-other-v": "NONE",
                        "SVC-INFRA": "NONE",
                        "prevent-delete": "!${direction}"
                        "label": "subscribesTo",
                        "direction": "OUT",
                        "multiplicity": "Many2Many",
-                       "contains": "${direction}",
+                       "contains-other-v": "${direction}",
                        "delete-other-v": "NONE",
                        "SVC-INFRA": "!${direction}",
                        "prevent-delete": "NONE"
                        "label": "existsIn",
                        "direction": "OUT",
                        "multiplicity": "Many2Many",
-                       "contains": "NONE",
+                       "contains-other-v": "NONE",
                        "delete-other-v": "NONE",
                        "SVC-INFRA": "NONE",
                        "prevent-delete": "!${direction}"
                        "label": "hasLInterface",
                        "direction": "OUT",
                        "multiplicity": "Many2Many",
-                       "contains": "${direction}",
+                       "contains-other-v": "${direction}",
                        "delete-other-v": "NONE",
                        "SVC-INFRA": "${direction}",
                        "prevent-delete": "NONE"
                        "label": "hasAvailabilityZone",
                        "direction": "OUT",
                        "multiplicity": "Many2Many",
-                       "contains": "NONE",
+                       "contains-other-v": "NONE",
                        "delete-other-v": "NONE",
                        "SVC-INFRA": "${direction}",
                        "prevent-delete": "!${direction}"
                        "label": "hasLAGInterface",
                        "direction": "OUT",
                        "multiplicity": "Many2Many",
-                       "contains": "${direction}",
+                       "contains-other-v": "${direction}",
                        "delete-other-v": "NONE",
                        "SVC-INFRA": "${direction}",
                        "prevent-delete": "NONE"
                        "label": "usesL3Network",
                        "direction": "OUT",
                        "multiplicity": "Many2Many",
-                       "contains": "NONE",
-                       "uses-resource": "${direction}",
+                       "contains-other-v": "NONE",
                        "delete-other-v": "NONE",
                        "SVC-INFRA": "${direction}",
                        "prevent-delete": "NONE"
                        "label": "runsOnPserver",
                        "direction": "OUT",
                        "multiplicity": "Many2Many",
-                       "contains": "NONE",
-                       "uses-resource": "${direction}",
+                       "contains-other-v": "NONE",
                        "delete-other-v": "NONE",
                        "SVC-INFRA": "${direction}",
                        "prevent-delete": "!${direction}"
                        "label": "usesVnfImage",
                        "direction": "OUT",
                        "multiplicity": "Many2One",
-                       "contains": "NONE",
+                       "contains-other-v": "NONE",
                        "delete-other-v": "NONE",
                        "SVC-INFRA": "${direction}",
                        "prevent-delete": "!${direction}"
                        "label": "runsOnVserver",
                        "direction": "OUT",
                        "multiplicity": "One2Many",
-                       "contains": "NONE",
-                       "uses-resource": "${direction}",
+                       "contains-other-v": "NONE",
                        "delete-other-v": "NONE",
                        "SVC-INFRA": "${direction}",
                        "prevent-delete": "NONE"
                        "label": "hasInstance",
                        "direction": "OUT",
                        "multiplicity": "Many2Many",
-                       "contains": "NONE",
-                       "uses-resource": "${direction}",
+                       "contains-other-v": "NONE",
                        "delete-other-v": "NONE",
                        "SVC-INFRA": "${direction}",
                        "prevent-delete": "NONE"
                        "label": "hasSitePairSet",
                        "direction": "OUT",
                        "multiplicity": "Many2Many",
-                       "contains": "NONE",
+                       "contains-other-v": "NONE",
                        "delete-other-v": "NONE",
                        "SVC-INFRA": "NONE",
                        "prevent-delete": "NONE"
                        "label": "hasNetworkProfile",
                        "direction": "OUT",
                        "multiplicity": "Many2Many",
-                       "contains": "NONE",
+                       "contains-other-v": "NONE",
                        "delete-other-v": "NONE",
                        "SVC-INFRA": "NONE",
                        "prevent-delete": "NONE"
                        "label": "has",
                        "direction": "OUT",
                        "multiplicity": "Many2Many",
-                       "contains": "NONE",
+                       "contains-other-v": "NONE",
                        "delete-other-v": "NONE",
                        "SVC-INFRA": "NONE",
                        "prevent-delete": "NONE"
                        "label": "has",
                        "direction": "OUT",
                        "multiplicity": "One2Many",
-                       "contains": "NONE",
+                       "contains-other-v": "NONE",
                        "delete-other-v": "NONE",
                        "SVC-INFRA": "NONE",
                        "prevent-delete": "!${direction}"
                },
-               {
-                       "from": "image",
-                       "to": "metadata",
-                       "label": "hasMetaData",
-                       "direction": "OUT",
-                       "multiplicity": "Many2Many",
-                       "contains": "${direction}",
-                       "delete-other-v": "NONE",
-                       "SVC-INFRA": "NONE",
-                       "prevent-delete": "NONE"
-               },
                {
                        "from": "image",
                        "to": "metadatum",
                        "label": "hasMetaDatum",
                        "direction": "OUT",
                        "multiplicity": "Many2Many",
-                       "contains": "${direction}",
+                       "contains-other-v": "${direction}",
                        "delete-other-v": "NONE",
                        "SVC-INFRA": "NONE",
                        "prevent-delete": "NONE"
                        "label": "isMemberOf",
                        "direction": "OUT",
                        "multiplicity": "Many2Many",
-                       "contains": "NONE",
+                       "contains-other-v": "NONE",
                        "delete-other-v": "NONE",
                        "SVC-INFRA": "NONE",
                        "prevent-delete": "NONE"
                        "label": "hasIpAddress",
                        "direction": "OUT",
                        "multiplicity": "Many2Many",
-                       "contains": "${direction}",
+                       "contains-other-v": "${direction}",
                        "delete-other-v": "NONE",
                        "SVC-INFRA": "${direction}",
                        "prevent-delete": "NONE"
                        "label": "hasIpAddress",
                        "direction": "OUT",
                        "multiplicity": "Many2Many",
-                       "contains": "${direction}",
+                       "contains-other-v": "${direction}",
                        "delete-other-v": "NONE",
                        "SVC-INFRA": "${direction}",
                        "prevent-delete": "NONE"
                        "label": "has",
                        "direction": "OUT",
                        "multiplicity": "One2Many",
-                       "contains": "${direction}",
+                       "contains-other-v": "${direction}",
                        "delete-other-v": "NONE",
                        "SVC-INFRA": "${direction}",
                        "prevent-delete": "NONE"
                        "label": "usesLogicalLink",
                        "direction": "OUT",
                        "multiplicity": "Many2Many",
-                       "contains": "NONE",
+                       "contains-other-v": "NONE",
                        "delete-other-v": "${direction}",
                        "SVC-INFRA": "${direction}",
                        "prevent-delete": "NONE"
                        "label": "uses",
                        "direction": "OUT",
                        "multiplicity": "Many2Many",
-                       "contains": "NONE",
+                       "contains-other-v": "NONE",
                        "delete-other-v": "${direction}",
                        "SVC-INFRA": "${direction}",
                        "prevent-delete": "NONE"
                        "label": "hasVlan",
                        "direction": "OUT",
                        "multiplicity": "Many2Many",
-                       "contains": "${direction}",
+                       "contains-other-v": "${direction}",
                        "delete-other-v": "NONE",
                        "SVC-INFRA": "NONE",
                        "prevent-delete": "NONE"
                        "label": "has",
                        "direction": "OUT",
                        "multiplicity": "One2One",
-                       "contains": "${direction}",
+                       "contains-other-v": "${direction}",
                        "delete-other-v": "NONE",
                        "SVC-INFRA": "NONE",
                        "prevent-delete": "NONE"
                        "label": "isMemberOf",
                        "direction": "OUT",
                        "multiplicity": "Many2Many",
-                       "contains": "NONE",
+                       "contains-other-v": "NONE",
                        "delete-other-v": "NONE",
                        "SVC-INFRA": "NONE",
                        "prevent-delete": "NONE"
                        "label": "isMemberOf",
                        "direction": "OUT",
                        "multiplicity": "Many2Many",
-                       "contains": "NONE",
+                       "contains-other-v": "NONE",
                        "delete-other-v": "NONE",
                        "SVC-INFRA": "NONE",
                        "prevent-delete": "NONE"
                        "label": "isMemberOf",
                        "direction": "OUT",
                        "multiplicity": "Many2Many",
-                       "contains": "NONE",
+                       "contains-other-v": "NONE",
                        "delete-other-v": "NONE",
                        "SVC-INFRA": "${direction}",
                        "prevent-delete": "NONE"
                        "label": "isMemberOf",
                        "direction": "OUT",
                        "multiplicity": "Many2Many",
-                       "contains": "NONE",
+                       "contains-other-v": "NONE",
                        "delete-other-v": "NONE",
                        "SVC-INFRA": "${direction}",
                        "prevent-delete": "NONE"
                        "label": "isMemberOf",
                        "direction": "OUT",
                        "multiplicity": "Many2Many",
-                       "contains": "NONE",
+                       "contains-other-v": "NONE",
                        "delete-other-v": "NONE",
                        "SVC-INFRA": "${direction}",
-                       "prevent-delete": "!${direction}"
+                       "prevent-delete": "NONE"
                },
                {
                        "from": "l3-interface-ipv6-address-list",
                        "label": "isMemberOf",
                        "direction": "OUT",
                        "multiplicity": "Many2Many",
-                       "contains": "NONE",
+                       "contains-other-v": "NONE",
                        "delete-other-v": "NONE",
                        "SVC-INFRA": "${direction}",
-                       "prevent-delete": "!${direction}"
+                       "prevent-delete": "NONE"
                },
                {
                        "from": "l3-network",
                        "label": "usesVpnBinding",
                        "direction": "OUT",
                        "multiplicity": "Many2Many",
-                       "contains": "NONE",
+                       "contains-other-v": "NONE",
                        "delete-other-v": "NONE",
                        "SVC-INFRA": "NONE",
                        "prevent-delete": "!${direction}"
                        "label": "hasSubnet",
                        "direction": "OUT",
                        "multiplicity": "Many2Many",
-                       "contains": "${direction}",
+                       "contains-other-v": "${direction}",
                        "delete-other-v": "NONE",
                        "SVC-INFRA": "!${direction}",
                        "prevent-delete": "NONE"
                        "label": "hasInstance",
                        "direction": "OUT",
                        "multiplicity": "Many2Many",
-                       "contains": "NONE",
+                       "contains-other-v": "NONE",
                        "delete-other-v": "NONE",
                        "SVC-INFRA": "!${direction}",
                        "prevent-delete": "NONE"
                        "label": "hasCtagAssignment",
                        "direction": "OUT",
                        "multiplicity": "Many2Many",
-                       "contains": "${direction}",
+                       "contains-other-v": "${direction}",
                        "delete-other-v": "NONE",
                        "SVC-INFRA": "${direction}",
                        "prevent-delete": "NONE"
                        "label": "uses",
                        "direction": "OUT",
                        "multiplicity": "Many2Many",
-                       "contains": "NONE",
+                       "contains-other-v": "NONE",
                        "delete-other-v": "NONE",
                        "SVC-INFRA": "${direction}",
                        "prevent-delete": "NONE"
                        "label": "has",
                        "direction": "OUT",
                        "multiplicity": "One2Many",
-                       "contains": "${direction}",
+                       "contains-other-v": "${direction}",
                        "delete-other-v": "NONE",
                        "SVC-INFRA": "NONE",
                        "prevent-delete": "NONE"
                        "label": "uses",
                        "direction": "OUT",
                        "multiplicity": "Many2Many",
-                       "contains": "NONE",
+                       "contains-other-v": "NONE",
                        "delete-other-v": "NONE",
                        "SVC-INFRA": "NONE",
                        "prevent-delete": "NONE"
                        "label": "usesLAGLink",
                        "direction": "OUT",
                        "multiplicity": "Many2Many",
-                       "contains": "NONE",
-                       "uses-resource": "${direction}",
+                       "contains-other-v": "NONE",
                        "delete-other-v": "${direction}",
                        "SVC-INFRA": "${direction}",
                        "prevent-delete": "NONE"
                        "label": "usesPInterface",
                        "direction": "OUT",
                        "multiplicity": "Many2Many",
-                       "contains": "NONE",
-                       "uses-resource": "${direction}",
+                       "contains-other-v": "NONE",
                        "delete-other-v": "NONE",
                        "SVC-INFRA": "${direction}",
                        "prevent-delete": "NONE"
                        "label": "hasLInterface",
                        "direction": "OUT",
                        "multiplicity": "Many2Many",
-                       "contains": "${direction}",
+                       "contains-other-v": "${direction}",
                        "delete-other-v": "NONE",
                        "SVC-INFRA": "${direction}",
                        "prevent-delete": "NONE"
                        "label": "usesLAGLink",
                        "direction": "OUT",
                        "multiplicity": "Many2Many",
-                       "contains": "NONE",
-                       "uses-resource": "${direction}",
+                       "contains-other-v": "NONE",
                        "delete-other-v": "NONE",
                        "SVC-INFRA": "${direction}",
                        "prevent-delete": "NONE"
                        "label": "bridgedTo",
                        "direction": "OUT",
                        "multiplicity": "Many2Many",
-                       "contains": "NONE",
+                       "contains-other-v": "NONE",
                        "delete-other-v": "NONE",
                        "SVC-INFRA": "NONE",
                        "prevent-delete": "NONE"
                        "label": "uses",
                        "direction": "OUT",
                        "multiplicity": "One2Many",
-                       "contains": "NONE",
+                       "contains-other-v": "NONE",
                        "delete-other-v": "NONE",
                        "SVC-INFRA": "${direction}",
                        "prevent-delete": "NONE"
                        "label": "has",
                        "direction": "OUT",
                        "multiplicity": "One2Many",
-                       "contains": "${direction}",
+                       "contains-other-v": "${direction}",
                        "delete-other-v": "NONE",
                        "SVC-INFRA": "NONE",
                        "prevent-delete": "NONE"
                        "label": "startsWith",
                        "direction": "OUT",
                        "multiplicity": "One2Many",
-                       "contains": "${direction}",
+                       "contains-other-v": "${direction}",
                        "delete-other-v": "NONE",
                        "SVC-INFRA": "NONE",
                        "prevent-delete": "NONE"
                        "label": "isA",
                        "direction": "OUT",
                        "multiplicity": "Many2One",
-                       "contains": "NONE",
+                       "contains-other-v": "NONE",
                        "delete-other-v": "NONE",
                        "SVC-INFRA": "NONE",
                        "prevent-delete": "!${direction}"
                        "label": "hasMetaData",
                        "direction": "OUT",
                        "multiplicity": "One2Many",
-                       "contains": "${direction}",
+                       "contains-other-v": "${direction}",
                        "delete-other-v": "NONE",
                        "SVC-INFRA": "NONE",
                        "prevent-delete": "NONE"
                        "label": "connectsTo",
                        "direction": "OUT",
                        "multiplicity": "One2Many",
-                       "contains": "${direction}",
+                       "contains-other-v": "${direction}",
                        "delete-other-v": "NONE",
                        "SVC-INFRA": "NONE",
                        "prevent-delete": "NONE"
                        "label": "uses",
                        "direction": "OUT",
                        "multiplicity": "One2Many",
-                       "contains": "${direction}",
+                       "contains-other-v": "${direction}",
                        "delete-other-v": "NONE",
                        "SVC-INFRA": "NONE",
                        "prevent-delete": "NONE"
                        "label": "connectsTo",
                        "direction": "OUT",
                        "multiplicity": "One2Many",
-                       "contains": "${direction}",
+                       "contains-other-v": "${direction}",
                        "delete-other-v": "NONE",
                        "SVC-INFRA": "NONE",
                        "prevent-delete": "NONE"
                        "label": "uses",
                        "direction": "OUT",
                        "multiplicity": "One2Many",
-                       "contains": "${direction}",
+                       "contains-other-v": "${direction}",
                        "delete-other-v": "NONE",
                        "SVC-INFRA": "NONE",
                        "prevent-delete": "NONE"
                        "label": "uses",
                        "direction": "OUT",
                        "multiplicity": "One2Many",
-                       "contains": "${direction}",
+                       "contains-other-v": "${direction}",
                        "delete-other-v": "NONE",
                        "SVC-INFRA": "NONE",
                        "prevent-delete": "NONE"
                        "label": "has",
                        "direction": "OUT",
                        "multiplicity": "One2Many",
-                       "contains": "${direction}",
+                       "contains-other-v": "${direction}",
                        "delete-other-v": "NONE",
                        "SVC-INFRA": "NONE",
                        "prevent-delete": "NONE"
                        "label": "relatedTo",
                        "direction": "OUT",
                        "multiplicity": "One2Many",
-                       "contains": "NONE",
+                       "contains-other-v": "NONE",
                        "delete-other-v": "NONE",
                        "SVC-INFRA": "NONE",
                        "prevent-delete": "!${direction}"
                        "label": "startsWith",
                        "direction": "OUT",
                        "multiplicity": "One2One",
-                       "contains": "${direction}",
+                       "contains-other-v": "${direction}",
                        "delete-other-v": "NONE",
                        "SVC-INFRA": "NONE",
                        "prevent-delete": "NONE"
                        "label": "connectsTo",
                        "direction": "OUT",
                        "multiplicity": "Many2Many",
-                       "contains": "${direction}",
+                       "contains-other-v": "${direction}",
                        "delete-other-v": "NONE",
                        "SVC-INFRA": "NONE",
                        "prevent-delete": "NONE"
                        "label": "isA",
                        "direction": "OUT",
                        "multiplicity": "Many2One",
-                       "contains": "NONE",
+                       "contains-other-v": "NONE",
                        "delete-other-v": "NONE",
                        "SVC-INFRA": "NONE",
                        "prevent-delete": "!${direction}"
                        "label": "uses",
                        "direction": "OUT",
                        "multiplicity": "One2Many",
-                       "contains": "${direction}",
+                       "contains-other-v": "${direction}",
                        "delete-other-v": "NONE",
                        "SVC-INFRA": "NONE",
                        "prevent-delete": "NONE"
                        "label": "uses",
                        "direction": "OUT",
                        "multiplicity": "One2Many",
-                       "contains": "${direction}",
+                       "contains-other-v": "${direction}",
                        "delete-other-v": "NONE",
                        "SVC-INFRA": "NONE",
                        "prevent-delete": "NONE"
                        "label": "targets",
                        "direction": "OUT",
                        "multiplicity": "Many2Many",
-                       "contains": "NONE",
+                       "contains-other-v": "NONE",
                        "delete-other-v": "NONE",
                        "SVC-INFRA": "NONE",
                        "prevent-delete": "!${direction}"
                        "label": "hasLInterface",
                        "direction": "OUT",
                        "multiplicity": "Many2Many",
-                       "contains": "${direction}",
+                       "contains-other-v": "${direction}",
                        "delete-other-v": "NONE",
                        "SVC-INFRA": "NONE",
                        "prevent-delete": "NONE"
                        "label": "definedFor",
                        "direction": "OUT",
                        "multiplicity": "Many2Many",
-                       "contains": "NONE",
+                       "contains-other-v": "NONE",
                        "delete-other-v": "NONE",
                        "SVC-INFRA": "NONE",
                        "prevent-delete": "!${direction}"
                        "label": "supportsServiceCapability",
                        "direction": "OUT",
                        "multiplicity": "Many2Many",
-                       "contains": "NONE",
+                       "contains-other-v": "NONE",
                        "delete-other-v": "NONE",
                        "SVC-INFRA": "NONE",
                        "prevent-delete": "!${direction}"
                        "label": "hasLInterface",
                        "direction": "OUT",
                        "multiplicity": "Many2Many",
-                       "contains": "${direction}",
+                       "contains-other-v": "${direction}",
                        "delete-other-v": "NONE",
                        "SVC-INFRA": "${direction}",
                        "prevent-delete": "NONE"
                        "label": "usesPhysicalLink",
                        "direction": "OUT",
                        "multiplicity": "Many2Many",
-                       "contains": "NONE",
+                       "contains-other-v": "NONE",
                        "delete-other-v": "${direction}",
                        "SVC-INFRA": "NONE",
                        "prevent-delete": "NONE"
                        "label": "usesLogicalLink",
                        "direction": "OUT",
                        "multiplicity": "Many2One",
-                       "contains": "NONE",
+                       "contains-other-v": "NONE",
                        "delete-other-v": "NONE",
                        "SVC-INFRA": "${direction}",
                        "prevent-delete": "NONE"
                        "label": "hasCTag",
                        "direction": "OUT",
                        "multiplicity": "Many2Many",
-                       "contains": "${direction}",
-                       "uses-resource": "${direction}",
+                       "contains-other-v": "${direction}",
                        "delete-other-v": "NONE",
                        "SVC-INFRA": "${direction}",
                        "prevent-delete": "NONE"
                        "label": "locatedIn",
                        "direction": "OUT",
                        "multiplicity": "Many2One",
-                       "contains": "NONE",
+                       "contains-other-v": "NONE",
                        "delete-other-v": "NONE",
                        "SVC-INFRA": "${direction}",
                        "prevent-delete": "!${direction}"
                        "label": "locatedIn",
                        "direction": "OUT",
                        "multiplicity": "Many2One",
-                       "contains": "NONE",
+                       "contains-other-v": "NONE",
                        "delete-other-v": "NONE",
                        "SVC-INFRA": "${direction}",
                        "prevent-delete": "NONE"
                        "label": "existsIn",
                        "direction": "OUT",
                        "multiplicity": "Many2One",
-                       "contains": "NONE",
+                       "contains-other-v": "NONE",
                        "delete-other-v": "NONE",
                        "SVC-INFRA": "${direction}",
                        "prevent-delete": "!${direction}"
                        "label": "hasLAGInterface",
                        "direction": "OUT",
                        "multiplicity": "Many2Many",
-                       "contains": "${direction}",
+                       "contains-other-v": "${direction}",
                        "delete-other-v": "NONE",
                        "SVC-INFRA": "${direction}",
                        "prevent-delete": "NONE"
                        "label": "hasPinterface",
                        "direction": "OUT",
                        "multiplicity": "Many2Many",
-                       "contains": "${direction}",
-                       "uses-resource": "${direction}",
+                       "contains-other-v": "${direction}",
                        "delete-other-v": "NONE",
                        "SVC-INFRA": "${direction}",
                        "prevent-delete": "NONE"
                        "label": "isMemberOf",
                        "direction": "OUT",
                        "multiplicity": "Many2One",
-                       "contains": "NONE",
+                       "contains-other-v": "NONE",
                        "delete-other-v": "NONE",
                        "SVC-INFRA": "NONE",
                        "prevent-delete": "NONE"
                        "label": "hasPinterface",
                        "direction": "OUT",
                        "multiplicity": "Many2Many",
-                       "contains": "${direction}",
-                       "uses-resource": "${direction}",
+                       "contains-other-v": "${direction}",
                        "delete-other-v": "NONE",
                        "SVC-INFRA": "${direction}",
                        "prevent-delete": "NONE"
                        "label": "has",
                        "direction": "OUT",
                        "multiplicity": "One2Many",
-                       "contains": "${direction}",
+                       "contains-other-v": "${direction}",
                        "delete-other-v": "NONE",
                        "SVC-INFRA": "${direction}",
                        "prevent-delete": "NONE"
                        "label": "locatedIn",
                        "direction": "OUT",
                        "multiplicity": "Many2One",
-                       "contains": "NONE",
+                       "contains-other-v": "NONE",
                        "delete-other-v": "NONE",
                        "SVC-INFRA": "NONE",
                        "prevent-delete": "!${direction}"
                        "label": "isMemberOf",
                        "direction": "OUT",
                        "multiplicity": "Many2Many",
-                       "contains": "NONE",
+                       "contains-other-v": "NONE",
                        "delete-other-v": "NONE",
                        "SVC-INFRA": "NONE",
                        "prevent-delete": "NONE"
                        "label": "isMemberOf",
                        "direction": "OUT",
                        "multiplicity": "Many2One",
-                       "contains": "NONE",
+                       "contains-other-v": "NONE",
                        "delete-other-v": "NONE",
                        "SVC-INFRA": "NONE",
                        "prevent-delete": "NONE"
                        "label": "hasIPAGFacingVLAN",
                        "direction": "OUT",
                        "multiplicity": "Many2Many",
-                       "contains": "NONE",
-                       "uses-resource": "${direction}",
+                       "contains-other-v": "NONE",
                        "delete-other-v": "NONE",
                        "SVC-INFRA": "NONE",
                        "prevent-delete": "NONE"
                        "label": "uses",
                        "direction": "OUT",
                        "multiplicity": "One2Many",
-                       "contains": "NONE",
-                       "uses-resource": "${direction}",
+                       "contains-other-v": "NONE",
                        "delete-other-v": "NONE",
                        "SVC-INFRA": "NONE",
                        "prevent-delete": "NONE"
                        "label": "hasInstance",
                        "direction": "OUT",
                        "multiplicity": "Many2Many",
-                       "contains": "${direction}",
+                       "contains-other-v": "${direction}",
                        "delete-other-v": "NONE",
                        "SVC-INFRA": "!${direction}",
                        "prevent-delete": "NONE"
                        "label": "hasRoutingInstance",
                        "direction": "OUT",
                        "multiplicity": "Many2Many",
-                       "contains": "${direction}",
+                       "contains-other-v": "${direction}",
                        "delete-other-v": "NONE",
                        "SVC-INFRA": "NONE",
                        "prevent-delete": "NONE"
                        "label": "hasSitePair",
                        "direction": "OUT",
                        "multiplicity": "Many2Many",
-                       "contains": "${direction}",
+                       "contains-other-v": "${direction}",
                        "delete-other-v": "NONE",
                        "SVC-INFRA": "NONE",
                        "prevent-delete": "NONE"
                        "label": "hasClassOfService",
                        "direction": "OUT",
                        "multiplicity": "Many2Many",
-                       "contains": "${direction}",
+                       "contains-other-v": "${direction}",
                        "delete-other-v": "NONE",
                        "SVC-INFRA": "NONE",
                        "prevent-delete": "NONE"
                        "label": "usesL3Network",
                        "direction": "OUT",
                        "multiplicity": "Many2Many",
-                       "contains": "NONE",
+                       "contains-other-v": "NONE",
                        "delete-other-v": "NONE",
                        "SVC-INFRA": "NONE",
                        "prevent-delete": "NONE"
                        "label": "relatedTo",
                        "direction": "OUT",
                        "multiplicity": "Many2Many",
-                       "contains": "NONE",
+                       "contains-other-v": "NONE",
                        "delete-other-v": "NONE",
                        "SVC-INFRA": "NONE",
                        "prevent-delete": "NONE"
                        "label": "owns",
                        "direction": "OUT",
                        "multiplicity": "One2Many",
-                       "contains": "${direction}",
+                       "contains-other-v": "${direction}",
                        "delete-other-v": "NONE",
                        "SVC-INFRA": "!${direction}",
                        "prevent-delete": "${direction}"
                        "label": "hasAvailabilityZone",
                        "direction": "OUT",
                        "multiplicity": "Many2Many",
-                       "contains": "NONE",
+                       "contains-other-v": "NONE",
                        "delete-other-v": "NONE",
                        "SVC-INFRA": "NONE",
                        "prevent-delete": "!${direction}"
                        "label": "locatedIn",
                        "direction": "OUT",
                        "multiplicity": "Many2Many",
-                       "contains": "NONE",
+                       "contains-other-v": "NONE",
                        "delete-other-v": "NONE",
                        "SVC-INFRA": "${direction}",
                        "prevent-delete": "!${direction}"
                        "label": "hasPortGroup",
                        "direction": "OUT",
                        "multiplicity": "Many2Many",
-                       "contains": "${direction}",
-                       "uses-resource": "${direction}",
+                       "contains-other-v": "${direction}",
                        "delete-other-v": "NONE",
                        "SVC-INFRA": "${direction}",
                        "prevent-delete": "NONE"
                        "label": "runsOnVserver",
                        "direction": "OUT",
                        "multiplicity": "Many2Many",
-                       "contains": "NONE",
-                       "uses-resource": "${direction}",
+                       "contains-other-v": "NONE",
                        "delete-other-v": "NONE",
                        "SVC-INFRA": "${direction}",
                        "prevent-delete": "NONE"
                        "label": "hasServiceInstance",
                        "direction": "OUT",
                        "multiplicity": "Many2Many",
-                       "contains": "NONE",
+                       "contains-other-v": "NONE",
                        "delete-other-v": "NONE",
                        "SVC-INFRA": "!${direction}",
                        "prevent-delete": "NONE"
                        "label": "hasVNF",
                        "direction": "OUT",
                        "multiplicity": "Many2Many",
-                       "contains": "NONE",
+                       "contains-other-v": "NONE",
                        "delete-other-v": "NONE",
                        "SVC-INFRA": "!${direction}",
                        "prevent-delete": "NONE"
                        "label": "hasIpAddress",
                        "direction": "OUT",
                        "multiplicity": "Many2Many",
-                       "contains": "${direction}",
+                       "contains-other-v": "${direction}",
                        "delete-other-v": "NONE",
                        "SVC-INFRA": "${direction}",
                        "prevent-delete": "NONE"
                        "label": "hasIpAddress",
                        "direction": "OUT",
                        "multiplicity": "Many2Many",
-                       "contains": "${direction}",
+                       "contains-other-v": "${direction}",
                        "delete-other-v": "NONE",
                        "SVC-INFRA": "${direction}",
                        "prevent-delete": "NONE"
                },
-               {
-                       "from": "vpe",
-                       "to": "complex",
-                       "label": "locatedIn",
-                       "direction": "OUT",
-                       "multiplicity": "Many2Many",
-                       "contains": "NONE",
-                       "delete-other-v": "NONE",
-                       "SVC-INFRA": "NONE",
-                       "prevent-delete": "!${direction}"
-               },
-               {
-                       "from": "vpe",
-                       "to": "ctag-pool",
-                       "label": "usesCtagPool",
-                       "direction": "OUT",
-                       "multiplicity": "Many2Many",
-                       "contains": "NONE",
-                       "delete-other-v": "NONE",
-                       "SVC-INFRA": "NONE",
-                       "prevent-delete": "NONE"
-               },
-               {
-                       "from": "vpe",
-                       "to": "l-interface",
-                       "label": "hasLInterface",
-                       "direction": "OUT",
-                       "multiplicity": "Many2Many",
-                       "contains": "${direction}",
-                       "delete-other-v": "NONE",
-                       "SVC-INFRA": "NONE",
-                       "prevent-delete": "NONE"
-               },
-               {
-                       "from": "vpe",
-                       "to": "lag-interface",
-                       "label": "hasLAGInterface",
-                       "direction": "OUT",
-                       "multiplicity": "Many2Many",
-                       "contains": "${direction}",
-                       "delete-other-v": "NONE",
-                       "SVC-INFRA": "NONE",
-                       "prevent-delete": "NONE"
-               },
-               {
-                       "from": "vpe",
-                       "to": "vserver",
-                       "label": "runsOnVserver",
-                       "direction": "OUT",
-                       "multiplicity": "Many2Many",
-                       "contains": "NONE",
-                       "uses-resource": "${direction}",
-                       "delete-other-v": "NONE",
-                       "SVC-INFRA": "NONE",
-                       "prevent-delete": "NONE"
-               },
                {
                        "from": "vpls-pe",
                        "to": "complex",
                        "label": "locatedIn",
                        "direction": "OUT",
                        "multiplicity": "Many2Many",
-                       "contains": "NONE",
+                       "contains-other-v": "NONE",
                        "delete-other-v": "NONE",
                        "SVC-INFRA": "NONE",
                        "prevent-delete": "!${direction}"
                        "label": "usesCtagPool",
                        "direction": "OUT",
                        "multiplicity": "Many2Many",
-                       "contains": "NONE",
+                       "contains-other-v": "NONE",
                        "delete-other-v": "NONE",
                        "SVC-INFRA": "NONE",
                        "prevent-delete": "NONE"
                        "label": "hasPinterface",
                        "direction": "OUT",
                        "multiplicity": "Many2Many",
-                       "contains": "${direction}",
+                       "contains-other-v": "${direction}",
                        "delete-other-v": "NONE",
                        "SVC-INFRA": "NONE",
                        "prevent-delete": "NONE"
                        "label": "hasLAGinterface",
                        "direction": "OUT",
                        "multiplicity": "Many2Many",
-                       "contains": "${direction}",
+                       "contains-other-v": "${direction}",
                        "delete-other-v": "NONE",
                        "SVC-INFRA": "NONE",
                        "prevent-delete": "NONE"
                        "label": "hasFlavor",
                        "direction": "OUT",
                        "multiplicity": "Many2One",
-                       "contains": "NONE",
+                       "contains-other-v": "NONE",
                        "delete-other-v": "NONE",
                        "SVC-INFRA": "${direction}",
                        "prevent-delete": "!${direction}"
                        "label": "hasImage",
                        "direction": "OUT",
                        "multiplicity": "Many2One",
-                       "contains": "NONE",
+                       "contains-other-v": "NONE",
                        "delete-other-v": "NONE",
                        "SVC-INFRA": "${direction}",
                        "prevent-delete": "!${direction}"
                },
-               {
-                       "from": "vserver",
-                       "to": "ipaddress",
-                       "label": "hasIpAddress",
-                       "direction": "OUT",
-                       "multiplicity": "Many2Many",
-                       "contains": "${direction}",
-                       "uses-resource": "${direction}",
-                       "delete-other-v": "NONE",
-                       "SVC-INFRA": "NONE",
-                       "prevent-delete": "NONE"
-               },
                {
                        "from": "vserver",
                        "to": "l-interface",
                        "label": "hasLInterface",
                        "direction": "OUT",
                        "multiplicity": "Many2Many",
-                       "contains": "${direction}",
+                       "contains-other-v": "${direction}",
                        "delete-other-v": "NONE",
                        "SVC-INFRA": "${direction}",
                        "prevent-delete": "NONE"
                        "label": "runsOnPserver",
                        "direction": "OUT",
                        "multiplicity": "Many2One",
-                       "contains": "NONE",
-                       "uses-resource": "${direction}",
+                       "contains-other-v": "NONE",
                        "delete-other-v": "NONE",
                        "SVC-INFRA": "${direction}",
                        "prevent-delete": "!${direction}"
                        "label": "hasVolume",
                        "direction": "OUT",
                        "multiplicity": "Many2Many",
-                       "contains": "${direction}",
-                       "uses-resource": "${direction}",
+                       "contains-other-v": "${direction}",
                        "delete-other-v": "NONE",
                        "SVC-INFRA": "${direction}",
                        "prevent-delete": "NONE"
                        "label": "hosts",
                        "direction": "OUT",
                        "multiplicity": "Many2Many",
-                       "contains": "NONE",
-                       "uses-resource": "${direction}",
+                       "contains-other-v": "NONE",
                        "delete-other-v": "NONE",
                        "SVC-INFRA": "${direction}",
                        "prevent-delete": "NONE"
                        "label": "uses",
                        "direction": "OUT",
                        "multiplicity": "One2One",
-                       "contains": "NONE",
+                       "contains-other-v": "NONE",
                        "delete-other-v": "NONE",
                        "SVC-INFRA": "${direction}",
                        "prevent-delete": "NONE"
                        "label": "uses",
                        "direction": "OUT",
                        "multiplicity": "Many2Many",
-                       "contains": "NONE",
-                       "uses-resource": "${direction}",
+                       "contains-other-v": "NONE",
                        "delete-other-v": "NONE",
                        "SVC-INFRA": "NONE",
                        "prevent-delete": "NONE"
                        "label": "hasMetaData",
                        "direction": "OUT",
                        "multiplicity": "Many2Many",
-                       "contains": "${direction}",
+                       "contains-other-v": "${direction}",
                        "delete-other-v": "NONE",
                        "SVC-INFRA": "NONE",
                        "prevent-delete": "NONE"
                        "label": "uses",
                        "direction": "OUT",
                        "multiplicity": "Many2Many",
-                       "contains": "NONE",
+                       "contains-other-v": "NONE",
                        "delete-other-v": "${direction}",
                        "SVC-INFRA": "NONE",
                        "prevent-delete": "NONE"
                        "label": "dependsOn",
                        "direction": "OUT",
                        "multiplicity": "One2Many",
-                       "contains": "NONE",
-                       "uses-resource": "${direction}",
+                       "contains-other-v": "NONE",
                        "delete-other-v": "NONE",
                        "SVC-INFRA": "NONE",
                        "prevent-delete": "NONE"
                        "label": "dependsOn",
                        "direction": "OUT",
                        "multiplicity": "One2Many",
-                       "contains": "NONE",
-                       "uses-resource": "${direction}",
+                       "contains-other-v": "NONE",
                        "delete-other-v": "NONE",
                        "SVC-INFRA": "NONE",
                        "prevent-delete": "NONE"
                        "label": "contains",
                        "direction": "OUT",
                        "multiplicity": "Many2Many",
-                       "contains": "NONE",
+                       "contains-other-v": "NONE",
                        "delete-other-v": "NONE",
                        "SVC-INFRA": "NONE",
                        "prevent-delete": "NONE"
                        "label": "hasMetaData",
                        "direction": "OUT",
                        "multiplicity": "Many2Many",
-                       "contains": "${direction}",
+                       "contains-other-v": "${direction}",
                        "delete-other-v": "NONE",
                        "SVC-INFRA": "NONE",
                        "prevent-delete": "NONE"
                        "label": "contains",
                        "direction": "OUT",
                        "multiplicity": "Many2Many",
-                       "contains": "NONE",
-                       "uses-resource": "${direction}",
+                       "contains-other-v": "NONE",
                        "delete-other-v": "NONE",
                        "SVC-INFRA": "NONE",
                        "prevent-delete": "NONE"
                        "label": "bridgedTo",
                        "direction": "OUT",
                        "multiplicity": "Many2Many",
-                       "contains": "NONE",
+                       "contains-other-v": "NONE",
                        "delete-other-v": "NONE",
                        "SVC-INFRA": "NONE",
                        "prevent-delete": "NONE"
                        "label": "bridgedTo",
                        "direction": "OUT",
                        "multiplicity": "Many2Many",
-                       "contains": "NONE",
+                       "contains-other-v": "NONE",
                        "delete-other-v": "NONE",
                        "SVC-INFRA": "NONE",
                        "prevent-delete": "!${direction}"
                        "label": "uses",
                        "direction": "OUT",
                        "multiplicity": "Many2Many",
-                       "contains": "NONE",
-                       "uses-resource": "${direction}",
+                       "contains-other-v": "NONE",
                        "delete-other-v": "NONE",
                        "SVC-INFRA": "NONE",
                        "prevent-delete": "NONE"
                        "label": "existsIn",
                        "direction": "OUT",
                        "multiplicity": "Many2Many",
-                       "contains": "NONE",
+                       "contains-other-v": "NONE",
                        "delete-other-v": "NONE",
                        "SVC-INFRA": "${direction}",
                        "prevent-delete": "!${direction}"
                        "label": "belongsTo",
                        "direction": "OUT",
                        "multiplicity": "Many2Many",
-                       "contains": "NONE",
+                       "contains-other-v": "NONE",
                        "delete-other-v": "NONE",
                        "SVC-INFRA": "${direction}",
                        "prevent-delete": "NONE"
                        "label": "hasVigServer",
                        "direction": "OUT",
                        "multiplicity": "One2Many",
-                       "contains": "${direction}",
-                       "uses-resource": "${direction}",
+                       "contains-other-v": "${direction}",
                        "delete-other-v": "NONE",
                        "SVC-INFRA": "NONE",
                        "prevent-delete": "NONE"
                        "label": "uses",
                        "direction": "OUT",
                        "multiplicity": "Many2One",
-                       "contains": "NONE",
-                       "uses-resource": "${direction}",
+                       "contains-other-v": "NONE",
                        "delete-other-v": "NONE",
                        "SVC-INFRA": "NONE",
                        "prevent-delete": "NONE"
                        "label": "uses",
                        "direction": "OUT",
                        "multiplicity": "One2One",
-                       "contains": "NONE",
+                       "contains-other-v": "NONE",
                        "delete-other-v": "NONE",
                        "SVC-INFRA": "${direction}",
                        "prevent-delete": "NONE"
                        "label": "isPartOf",
                        "direction": "OUT",
                        "multiplicity": "Many2One",
-                       "contains": "NONE",
+                       "contains-other-v": "NONE",
                        "delete-other-v": "NONE",
                        "SVC-INFRA": "${direction}",
                        "prevent-delete": "NONE"
                        "label": "uses",
                        "direction": "OUT",
                        "multiplicity": "Many2Many",
-                       "contains": "NONE",
+                       "contains-other-v": "NONE",
                        "delete-other-v": "NONE",
                        "SVC-INFRA": "${direction}",
                        "prevent-delete": "NONE"
                        "label": "uses",
                        "direction": "OUT",
                        "multiplicity": "One2Many",
-                       "contains": "NONE",
+                       "contains-other-v": "NONE",
                        "delete-other-v": "${direction}",
                        "SVC-INFRA": "${direction}",
                        "prevent-delete": "${direction}"
                        "label": "has",
                        "direction": "OUT",
                        "multiplicity": "One2Many",
-                       "contains": "${direction}",
+                       "contains-other-v": "${direction}",
                        "delete-other-v": "NONE",
                        "SVC-INFRA": "${direction}",
                        "prevent-delete": "NONE"
                        "label": "uses",
                        "direction": "OUT",
                        "multiplicity": "One2Many",
-                       "contains": "NONE",
+                       "contains-other-v": "NONE",
                        "delete-other-v": "NONE",
                        "SVC-INFRA": "${direction}",
                        "prevent-delete": "NONE"
                        "label": "uses",
                        "direction": "OUT",
                        "multiplicity": "One2Many",
-                       "contains": "NONE",
+                       "contains-other-v": "NONE",
                        "delete-other-v": "${direction}",
                        "SVC-INFRA": "${direction}",
                        "prevent-delete": "NONE"
                        "label": "usesLogicalLink",
                        "direction": "OUT",
                        "multiplicity": "Many2Many",
-                       "contains": "NONE",
+                       "contains-other-v": "NONE",
                        "delete-other-v": "${direction}",
                        "SVC-INFRA": "${direction}",
                        "prevent-delete": "NONE"
                        "label": "has",
                        "direction": "OUT",
                        "multiplicity": "One2Many",
-                       "contains": "${direction}",
+                       "contains-other-v": "${direction}",
                        "delete-other-v": "NONE",
                        "SVC-INFRA": "NONE",
                        "prevent-delete": "NONE"
                        "label": "uses",
                        "direction": "OUT",
                        "multiplicity": "One2Many",
-                       "contains": "NONE",
+                       "contains-other-v": "NONE",
                        "delete-other-v": "NONE",
                        "SVC-INFRA": "NONE",
                        "prevent-delete": "NONE"
                        "label": "isPartOf",
                        "direction": "OUT",
                        "multiplicity": "Many2Many",
-                       "contains": "NONE",
+                       "contains-other-v": "NONE",
                        "delete-other-v": "NONE",
                        "SVC-INFRA": "NONE",
                        "prevent-delete": "NONE"
                        "label": "isPartOf",
                        "direction": "OUT",
                        "multiplicity": "Many2Many",
-                       "contains": "NONE",
+                       "contains-other-v": "NONE",
                        "delete-other-v": "NONE",
                        "SVC-INFRA": "NONE",
                        "prevent-delete": "NONE"
                        "label": "isMemberOf",
                        "direction": "OUT",
                        "multiplicity": "Many2Many",
-                       "contains": "NONE",
+                       "contains-other-v": "NONE",
                        "delete-other-v": "NONE",
                        "SVC-INFRA": "NONE",
                        "prevent-delete": "NONE"
                        "label": "uses",
                        "direction": "OUT",
                        "multiplicity": "One2One",
-                       "contains": "NONE",
+                       "contains-other-v": "NONE",
                        "delete-other-v": "NONE",
                        "SVC-INFRA": "NONE",
                        "prevent-delete": "NONE"
                        "label": "isPartOf",
                        "direction": "OUT",
                        "multiplicity": "Many2Many",
-                       "contains": "NONE",
+                       "contains-other-v": "NONE",
                        "delete-other-v": "NONE",
                        "SVC-INFRA": "NONE",
                        "prevent-delete": "NONE"
                        "label": "isMemberOf",
                        "direction": "OUT",
                        "multiplicity": "Many2Many",
-                       "contains": "NONE",
+                       "contains-other-v": "NONE",
                        "delete-other-v": "NONE",
                        "SVC-INFRA": "NONE",
                        "prevent-delete": "NONE"
                        "label": "isMemberOf",
                        "direction": "OUT",
                        "multiplicity": "Many2Many",
-                       "contains": "NONE",
+                       "contains-other-v": "NONE",
                        "delete-other-v": "NONE",
                        "SVC-INFRA": "NONE",
                        "prevent-delete": "NONE"
                        "label": "has",
                        "direction": "OUT",
                        "multiplicity": "One2One",
-                       "contains": "${direction}",
+                       "contains-other-v": "${direction}",
                        "delete-other-v": "NONE",
                        "SVC-INFRA": "NONE",
                        "prevent-delete": "NONE"
                        "label": "existsIn",
                        "direction": "OUT",
                        "multiplicity": "Many2Many",
-                       "contains": "NONE",
+                       "contains-other-v": "NONE",
                        "delete-other-v": "NONE",
                        "SVC-INFRA": "NONE",
                        "prevent-delete": "NONE"
                        "label": "uses",
                        "direction": "OUT",
                        "multiplicity": "Many2Many",
-                       "contains": "NONE",
+                       "contains-other-v": "NONE",
                        "delete-other-v": "NONE",
                        "SVC-INFRA": "NONE",
                        "prevent-delete": "!${direction}"
                        "label": "has",
                        "direction": "OUT",
                        "multiplicity": "One2Many",
-                       "contains": "${direction}",
+                       "contains-other-v": "${direction}",
                        "delete-other-v": "NONE",
                        "SVC-INFRA": "NONE",
                        "prevent-delete": "NONE"
                        "label": "has",
                        "direction": "OUT",
                        "multiplicity": "One2Many",
-                       "contains": "${direction}",
+                       "contains-other-v": "${direction}",
                        "delete-other-v": "NONE",
                        "SVC-INFRA": "NONE",
                        "prevent-delete": "NONE"
                        "label": "has",
                        "direction": "OUT",
                        "multiplicity": "One2Many",
-                       "contains": "${direction}",
+                       "contains-other-v": "${direction}",
                        "delete-other-v": "NONE",
                        "SVC-INFRA": "NONE",
                        "prevent-delete": "NONE"
                        "label": "has",
                        "direction": "OUT",
                        "multiplicity": "One2Many",
-                       "contains": "${direction}",
-                       "delete-other-v": "NONE",
-                       "SVC-INFRA": "NONE",
-                       "prevent-delete": "NONE"
-               },
-               {
-                       "from": "vpe",
-                       "to": "entitlement",
-                       "label": "has",
-                       "direction": "OUT",
-                       "multiplicity": "One2Many",
-                       "contains": "${direction}",
-                       "delete-other-v": "NONE",
-                       "SVC-INFRA": "NONE",
-                       "prevent-delete": "NONE"
-               },
-               {
-                       "from": "vpe",
-                       "to": "license",
-                       "label": "has",
-                       "direction": "OUT",
-                       "multiplicity": "One2Many",
-                       "contains": "${direction}",
+                       "contains-other-v": "${direction}",
                        "delete-other-v": "NONE",
                        "SVC-INFRA": "NONE",
                        "prevent-delete": "NONE"
                        "label": "existsIn",
                        "direction": "OUT",
                        "multiplicity": "Many2One",
-                       "contains": "NONE",
+                       "contains-other-v": "NONE",
                        "delete-other-v": "NONE",
                        "SVC-INFRA": "NONE",
                        "prevent-delete": "!${direction}"
                        "label": "has",
                        "direction": "OUT",
                        "multiplicity": "Many2Many",
-                       "contains": "${direction}",
+                       "contains-other-v": "${direction}",
                        "delete-other-v": "NONE",
                        "SVC-INFRA": "NONE",
                        "prevent-delete": "NONE"
                        "label": "uses",
                        "direction": "OUT",
                        "multiplicity": "Many2Many",
-                       "contains": "NONE",
+                       "contains-other-v": "NONE",
                        "delete-other-v": "NONE",
                        "SVC-INFRA": "NONE",
                        "prevent-delete": "NONE"
index 01e1e67..9bcf4b7 100644 (file)
-{"rules":
-[
 {
-       "from" : "availability-zone",
-       "to" : "complex",
-       "label" : "groupsResourcesIn",
-       "direction" : "OUT",
-       "multiplicity" : "Many2Many",
-       "isParent" : "false",
-       "usesResource" : "false",
-       "hasDelTarget" : "false",
-       "SVC-INFRA" : "false"
-},
-{
-       "from" : "generic-vnf",
-       "to" : "license-key-resource",
-       "label" : "uses",
-       "direction" : "OUT",
-       "multiplicity" : "Many2Many",
-       "isParent" : "false",
-       "usesResource" : "false",
-       "hasDelTarget" : "false",
-       "SVC-INFRA" : "false"
-},
-{
-       "from" : "availability-zone",
-       "to" : "service-capability",
-       "label" : "supportsServiceCapability",
-       "direction" : "OUT",
-       "multiplicity" : "Many2Many",
-       "isParent" : "false",
-       "usesResource" : "false",
-       "hasDelTarget" : "false",
-       "SVC-INFRA" : "false"
-},
-{
-       "from" : "cloud-region",
-       "to" : "complex",
-       "label" : "locatedIn",
-       "direction" : "OUT",
-       "multiplicity" : "Many2One",
-       "isParent" : "false",
-       "usesResource" : "false",
-       "hasDelTarget" : "false",
-       "SVC-INFRA" : "false"
-},
-{
-       "from" : "cloud-region",
-       "to" : "l3-network",
-       "label" : "uses",
-       "direction" : "OUT",
-       "multiplicity" : "Many2Many",
-       "isParent" : "false",
-       "usesResource" : "false",
-       "hasDelTarget" : "false",
-       "SVC-INFRA" : "false"
-},
-{
-       "from" : "cloud-region",
-       "to" : "tenant",
-       "label" : "has",
-       "direction" : "OUT",
-       "multiplicity" : "One2Many",
-       "isParent" : "true",
-       "usesResource" : "false",
-       "hasDelTarget" : "false",
-       "SVC-INFRA" : "reverse"
-},
-{
-       "from" : "cloud-region",
-       "to" : "image",
-       "label" : "has",
-       "direction" : "OUT",
-       "multiplicity" : "One2Many",
-       "isParent" : "true",
-       "usesResource" : "false",
-       "hasDelTarget" : "false",
-       "SVC-INFRA" : "false"
-},
-{
-       "from" : "cloud-region",
-       "to" : "flavor",
-       "label" : "has",
-       "direction" : "OUT",
-       "multiplicity" : "One2Many",
-       "isParent" : "true",
-       "usesResource" : "false",
-       "hasDelTarget" : "false",
-       "SVC-INFRA" : "false"
-},
-{
-       "from" : "cloud-region",
-       "to" : "availability-zone",
-       "label" : "has",
-       "direction" : "OUT",
-       "multiplicity" : "One2Many",
-       "isParent" : "true",
-       "usesResource" : "false",
-       "hasDelTarget" : "false",
-       "SVC-INFRA" : "false"
-},
-{
-       "from" : "cloud-region",
-       "to" : "oam-network",
-       "label" : "has",
-       "direction" : "OUT",
-       "multiplicity" : "One2Many",
-       "isParent" : "true",
-       "usesResource" : "false",
-       "hasDelTarget" : "false",
-       "SVC-INFRA" : "false"
-},
-{
-       "from" : "cloud-region",
-       "to" : "dvs-switch",
-       "label" : "has",
-       "direction" : "OUT",
-       "multiplicity" : "One2Many",
-       "isParent" : "true",
-       "usesResource" : "false",
-       "hasDelTarget" : "false",
-       "SVC-INFRA" : "false"
-},
-{
-       "from" : "cloud-region",
-       "to" : "volume-group",
-       "label" : "has",
-       "direction" : "OUT",
-       "multiplicity" : "One2Many",
-       "isParent" : "true",
-       "usesResource" : "true",
-       "hasDelTarget" : "false",
-       "SVC-INFRA" : "false"
-},
-{
-       "from" : "cloud-region",
-       "to" : "group-assignment",
-       "label" : "has",
-       "direction" : "OUT",
-       "multiplicity" : "One2Many",
-       "isParent" : "true",
-       "usesResource" : "false",
-       "hasDelTarget" : "false",
-       "SVC-INFRA" : "false"
-},
-{
-       "from" : "cloud-region",
-       "to" : "snapshot",
-       "label" : "has",
-       "direction" : "OUT",
-       "multiplicity" : "One2Many",
-       "isParent" : "true",
-       "usesResource" : "false",
-       "hasDelTarget" : "false",
-       "SVC-INFRA" : "false"
-},
-{
-       "from" : "cloud-region",
-       "to" : "zone",
-       "label" : "isMemberOf",
-       "direction" : "OUT",
-       "multiplicity" : "Many2One",
-       "isParent" : "false",
-       "usesResource" : "false",
-       "hasDelTarget" : "false",
-       "SVC-INFRA" : "false"
-},
-{
-       "from" : "complex",
-       "to" : "ctag-pool",
-       "label" : "hasCtagPool",
-       "direction" : "OUT",
-       "multiplicity" : "Many2Many",
-       "isParent" : "true",
-       "usesResource" : "false",
-       "hasDelTarget" : "false",
-       "SVC-INFRA" : "false"
-},
-{
-       "from" : "complex",
-       "to" : "l3-network",
-       "label" : "usesL3Network",
-       "direction" : "OUT",
-       "multiplicity" : "Many2Many",
-       "isParent" : "false",
-       "usesResource" : "false",
-       "hasDelTarget" : "false",
-       "SVC-INFRA" : "true"
-},
-{
-       "from" : "ctag-pool",
-       "to" : "availability-zone",
-       "label" : "supportsAvailabilityZone",
-       "direction" : "OUT",
-       "multiplicity" : "Many2Many",
-       "isParent" : "false",
-       "usesResource" : "false",
-       "hasDelTarget" : "false",
-       "SVC-INFRA" : "false"
-},
-{
-       "from" : "customer",
-       "to" : "service-subscription",
-       "label" : "subscribesTo",
-       "direction" : "OUT",
-       "multiplicity" : "Many2Many",
-       "isParent" : "true",
-       "usesResource" : "false",
-       "hasDelTarget" : "false",
-       "SVC-INFRA" : "reverse"
-},
-{
-       "from" : "dvs-switch",
-       "to" : "availability-zone",
-       "label" : "existsIn",
-       "direction" : "OUT",
-       "multiplicity" : "Many2Many",
-       "isParent" : "false",
-       "usesResource" : "false",
-       "hasDelTarget" : "false",
-       "SVC-INFRA" : "false"
-},
-{
-       "from" : "generic-vnf",
-       "to" : "l-interface",
-       "label" : "hasLInterface",
-       "direction" : "OUT",
-       "multiplicity" : "Many2Many",
-       "isParent" : "true",
-       "usesResource" : "false",
-       "hasDelTarget" : "false",
-       "SVC-INFRA" : "true"
-},
-{
-       "from" : "generic-vnf",
-       "to" : "availability-zone",
-       "label" : "hasAvailabilityZone",
-       "direction" : "OUT",
-       "multiplicity" : "Many2Many",
-       "isParent" : "false",
-       "usesResource" : "false",
-       "hasDelTarget" : "false",
-       "SVC-INFRA" : "true"
-},
-{
-       "from" : "generic-vnf",
-       "to" : "lag-interface",
-       "label" : "hasLAGInterface",
-       "direction" : "OUT",
-       "multiplicity" : "Many2Many",
-       "isParent" : "true",
-       "usesResource" : "false",
-       "hasDelTarget" : "false",
-       "SVC-INFRA" : "true"
-},
-{
-       "from" : "generic-vnf",
-       "to" : "l3-network",
-       "label" : "usesL3Network",
-       "direction" : "OUT",
-       "multiplicity" : "Many2Many",
-       "isParent" : "false",
-       "usesResource" : "true",
-       "hasDelTarget" : "false",
-       "SVC-INFRA" : "true"
-},
-{
-       "from" : "generic-vnf",
-       "to" : "pserver",
-       "label" : "runsOnPserver",
-       "direction" : "OUT",
-       "multiplicity" : "Many2Many",
-       "isParent" : "false",
-       "usesResource" : "true",
-       "hasDelTarget" : "false",
-       "SVC-INFRA" : "true"
-},
-{
-       "from" : "generic-vnf",
-       "to" : "vnf-image",
-       "label" : "usesVnfImage",
-       "direction" : "OUT",
-       "multiplicity" : "Many2One",
-       "isParent" : "false",
-       "usesResource" : "false",
-       "hasDelTarget" : "false",
-       "SVC-INFRA" : "true"
-},
-{
-       "from" : "generic-vnf",
-       "to" : "vserver",
-       "label" : "runsOnVserver",
-       "direction" : "OUT",
-       "multiplicity" : "One2Many",
-       "isParent" : "false",
-       "usesResource" : "true",
-       "hasDelTarget" : "false",
-       "SVC-INFRA" : "true"
-},
-{
-       "from" : "generic-vnf",
-       "to" : "service-instance",
-       "label" : "hasInstance",
-       "direction" : "OUT",
-       "multiplicity" : "Many2Many",
-       "isParent" : "false",
-       "usesResource" : "true",
-       "hasDelTarget" : "false",
-       "SVC-INFRA" : "true"
-},
-{
-       "from" : "generic-vnf",
-       "to" : "site-pair-set",
-       "label" : "hasSitePairSet",
-       "direction" : "OUT",
-       "multiplicity" : "Many2Many",
-       "isParent" : "false",
-       "usesResource" : "false",
-       "hasDelTarget" : "false",
-       "SVC-INFRA" : "false"
-},
-{
-       "from" : "generic-vnf",
-       "to" : "network-profile",
-       "label" : "hasNetworkProfile",
-       "direction" : "OUT",
-       "multiplicity" : "Many2Many",
-       "isParent" : "false",
-       "usesResource" : "false",
-       "hasDelTarget" : "false",
-       "SVC-INFRA" : "false"
-},
-{
-       "from" : "generic-vnf",
-       "to" : "pnf",
-       "label" : "hostedOn",
-       "direction" : "OUT",
-       "multiplicity" : "Many2Many",
-       "isParent" : "false",
-       "usesResource" : "false",
-       "hasDelTarget" : "false",
-       "SVC-INFRA" : "false"
-},
-{
-       "from" : "group-assignment",
-       "to" : "tenant",
-       "label" : "has",
-       "direction" : "OUT",
-       "multiplicity" : "Many2Many",
-       "isParent" : "false",
-       "usesResource" : "false",
-       "hasDelTarget" : "false",
-       "SVC-INFRA" : "false"
-},
-{
-       "from" : "group-assignment",
-       "to" : "pserver",
-       "label" : "has",
-       "direction" : "OUT",
-       "multiplicity" : "One2Many",
-       "isParent" : "false",
-       "usesResource" : "false",
-       "hasDelTarget" : "false",
-       "SVC-INFRA" : "false"
-},
-{
-       "from" : "image",
-       "to" : "metadata",
-       "label" : "hasMetaData",
-       "direction" : "OUT",
-       "multiplicity" : "Many2Many",
-       "isParent" : "true",
-       "usesResource" : "false",
-       "hasDelTarget" : "false",
-       "SVC-INFRA" : "false"
-},
-{
-       "from" : "image",
-       "to" : "metadatum",
-       "label" : "hasMetaDatum",
-       "direction" : "OUT",
-       "multiplicity" : "Many2Many",
-       "isParent" : "true",
-       "usesResource" : "false",
-       "hasDelTarget" : "false",
-       "SVC-INFRA" : "false"
-},
-{
-       "from" : "l-interface",
-       "to" : "instance-group",
-       "label" : "isMemberOf",
-       "direction" : "OUT",
-       "multiplicity" : "Many2Many",
-       "isParent" : "false",
-       "usesResource" : "false",
-       "hasDelTarget" : "false",
-       "SVC-INFRA" : "false"
-},
-{
-       "from" : "vnfc",
-       "to" : "instance-group",
-       "label" : "isMemberOf",
-       "direction" : "OUT",
-       "multiplicity" : "Many2Many",
-       "isParent" : "false",
-       "usesResource" : "false",
-       "hasDelTarget" : "false",
-       "SVC-INFRA" : "false"
-},
-{
-       "from" : "l-interface",
-       "to" : "l3-interface-ipv4-address-list",
-       "label" : "hasIpAddress",
-       "direction" : "OUT",
-       "multiplicity" : "Many2Many",
-       "isParent" : "true",
-       "usesResource" : "false",
-       "hasDelTarget" : "false",
-       "SVC-INFRA" : "true"
-},
-{
-       "from" : "l-interface",
-       "to" : "l3-interface-ipv6-address-list",
-       "label" : "hasIpAddress",
-       "direction" : "OUT",
-       "multiplicity" : "Many2Many",
-       "isParent" : "true",
-       "usesResource" : "false",
-       "hasDelTarget" : "false",
-       "SVC-INFRA" : "true"
-},
-{
-       "from" : "l-interface",
-       "to" : "l-interface",
-       "label" : "has",
-       "direction" : "OUT",
-       "multiplicity" : "One2Many",
-       "isParent" : "true",
-       "usesResource" : "false",
-       "hasDelTarget" : "false",
-       "SVC-INFRA" : "true"
-},
-{
-       "from" : "l-interface",
-       "to" : "logical-link",
-       "label" : "usesLogicalLink",
-       "direction" : "OUT",
-       "multiplicity" : "Many2Many",
-       "isParent" : "false",
-       "usesResource" : "false",
-       "hasDelTarget" : "true",
-       "SVC-INFRA" : "true"
-},
-{
-       "from" : "lag-interface",
-       "to" : "logical-link",
-       "label" : "uses",
-       "direction" : "OUT",
-       "multiplicity" : "Many2Many",
-       "isParent" : "false",
-       "usesResource" : "false",
-       "hasDelTarget" : "true",
-       "SVC-INFRA" : "true"
-},
-{
-       "from" : "l-interface",
-       "to" : "vlan",
-       "label" : "hasVlan",
-       "direction" : "OUT",
-       "multiplicity" : "Many2Many",
-       "isParent" : "true",
-       "usesResource" : "false",
-       "hasDelTarget" : "false",
-       "SVC-INFRA" : "false"
-},
-{
-       "from" : "l-interface",
-       "to" : "sriov-vf",
-       "label" : "has",
-       "direction" : "OUT",
-       "multiplicity" : "One2One",
-       "isParent" : "true",
-       "usesResource" : "false",
-       "hasDelTarget" : "false",
-       "SVC-INFRA" : "false"
-},
-{
-       "from" : "l3-interface-ipv4-address-list",
-       "to" : "instance-group",
-       "label" : "isMemberOf",
-       "direction" : "OUT",
-       "multiplicity" : "Many2Many",
-       "isParent" : "false",
-       "usesResource" : "false",
-       "hasDelTarget" : "false",
-       "SVC-INFRA" : "false"
-},
-{
-       "from" : "l3-interface-ipv6-address-list",
-       "to" : "instance-group",
-       "label" : "isMemberOf",
-       "direction" : "OUT",
-       "multiplicity" : "Many2Many",
-       "isParent" : "false",
-       "usesResource" : "false",
-       "hasDelTarget" : "false",
-       "SVC-INFRA" : "false"
-},
-{
-       "from" : "l3-interface-ipv4-address-list",
-       "to" : "l3-network",
-       "label" : "isMemberOf",
-       "direction" : "OUT",
-       "multiplicity" : "Many2Many",
-       "isParent" : "false",
-       "usesResource" : "false",
-       "hasDelTarget" : "false",
-       "SVC-INFRA" : "true"
-},
-{
-       "from" : "l3-interface-ipv6-address-list",
-       "to" : "l3-network",
-       "label" : "isMemberOf",
-       "direction" : "OUT",
-       "multiplicity" : "Many2Many",
-       "isParent" : "false",
-       "usesResource" : "false",
-       "hasDelTarget" : "false",
-       "SVC-INFRA" : "true"
-},
-{
-       "from" : "l3-interface-ipv4-address-list",
-       "to" : "subnet",
-       "label" : "isMemberOf",
-       "direction" : "OUT",
-       "multiplicity" : "Many2Many",
-       "isParent" : "false",
-       "usesResource" : "false",
-       "hasDelTarget" : "false",
-       "SVC-INFRA" : "true"
-},
-{
-       "from" : "l3-interface-ipv6-address-list",
-       "to" : "subnet",
-       "label" : "isMemberOf",
-       "direction" : "OUT",
-       "multiplicity" : "Many2Many",
-       "isParent" : "false",
-       "usesResource" : "false",
-       "hasDelTarget" : "false",
-       "SVC-INFRA" : "true"
-},
-{
-       "from" : "l3-network",
-       "to" : "vpn-binding",
-       "label" : "usesVpnBinding",
-       "direction" : "OUT",
-       "multiplicity" : "Many2Many",
-       "isParent" : "false",
-       "usesResource" : "false",
-       "hasDelTarget" : "false",
-       "SVC-INFRA" : "false"
-},
-{
-       "from" : "l3-network",
-       "to" : "instance-group",
-       "label" : "memberOf",
-       "direction" : "OUT",
-       "multiplicity" : "Many2Many",
-       "isParent" : "false",
-       "usesResource" : "false",
-       "hasDelTarget" : "false",
-       "SVC-INFRA" : "false"
-},
-{
-       "from" : "l3-network",
-       "to" : "subnet",
-       "label" : "hasSubnet",
-       "direction" : "OUT",
-       "multiplicity" : "Many2Many",
-       "isParent" : "true",
-       "usesResource" : "false",
-       "hasDelTarget" : "false",
-       "SVC-INFRA" : "reverse"
-},
-{
-       "from" : "l3-network",
-       "to" : "service-instance",
-       "label" : "hasInstance",
-       "direction" : "OUT",
-       "multiplicity" : "Many2Many",
-       "isParent" : "false",
-       "usesResource" : "false",
-       "hasDelTarget" : "false",
-       "SVC-INFRA" : "reverse"
-},
-{
-       "from" : "l3-network",
-       "to" : "ctag-assignment",
-       "label" : "hasCtagAssignment",
-       "direction" : "OUT",
-       "multiplicity" : "Many2Many",
-       "isParent" : "true",
-       "usesResource" : "false",
-       "hasDelTarget" : "false",
-       "SVC-INFRA" : "true"
-},
-{
-       "from" : "l3-network",
-       "to" : "network-policy",
-       "label" : "uses",
-       "direction" : "OUT",
-       "multiplicity" : "Many2Many",
-       "isParent" : "false",
-       "usesResource" : "false",
-       "hasDelTarget" : "false",
-       "SVC-INFRA" : "true"
-},
-{
-       "from" : "l3-network",
-       "to" : "segmentation-assignment",
-       "label" : "has",
-       "direction" : "OUT",
-       "multiplicity" : "One2Many",
-       "isParent" : "true",
-       "usesResource" : "false",
-       "hasDelTarget" : "false",
-       "SVC-INFRA" : "false"
-},
-{
-       "from" : "l3-network",
-       "to" : "route-table-reference",
-       "label" : "uses",
-       "direction" : "OUT",
-       "multiplicity" : "Many2Many",
-       "isParent" : "false",
-       "usesResource" : "false",
-       "hasDelTarget" : "false",
-       "SVC-INFRA" : "false"
-},
-{
-       "from" : "lag-interface",
-       "to" : "lag-link",
-       "label" : "usesLAGLink",
-       "direction" : "OUT",
-       "multiplicity" : "Many2Many",
-       "isParent" : "false",
-       "usesResource" : "true",
-       "hasDelTarget" : "true",
-       "SVC-INFRA" : "true"
-},
-{
-       "from" : "lag-interface",
-       "to" : "p-interface",
-       "label" : "usesPInterface",
-       "direction" : "OUT",
-       "multiplicity" : "Many2Many",
-       "isParent" : "false",
-       "usesResource" : "true",
-       "hasDelTarget" : "false",
-       "SVC-INFRA" : "true"
-},
-{
-       "from" : "lag-interface",
-       "to" : "l-interface",
-       "label" : "hasLInterface",
-       "direction" : "OUT",
-       "multiplicity" : "Many2Many",
-       "isParent" : "true",
-       "usesResource" : "false",
-       "hasDelTarget" : "false",
-       "SVC-INFRA" : "true"
-},
-{
-       "from" : "logical-link",
-       "to" : "lag-link",
-       "label" : "usesLAGLink",
-       "direction" : "OUT",
-       "multiplicity" : "Many2Many",
-       "isParent" : "false",
-       "usesResource" : "true",
-       "hasDelTarget" : "false",
-       "SVC-INFRA" : "true"
-},
-{
-       "from" : "logical-link",
-       "to" : "pnf",
-       "label" : "bridgedTo",
-       "direction" : "OUT",
-       "multiplicity" : "Many2Many",
-       "isParent" : "false",
-       "usesResource" : "false",
-       "hasDelTarget" : "false",
-       "SVC-INFRA" : "false"
-},
-{
-       "from" : "logical-link",
-       "to" : "logical-link",
-       "label" : "uses",
-       "direction" : "OUT",
-       "multiplicity" : "One2Many",
-       "isParent" : "false",
-       "usesResource" : "false",
-       "hasDelTarget" : "false",
-       "SVC-INFRA" : "true"
-},
-{
-       "from" : "model",
-       "to" : "model-ver",
-       "label" : "has",
-       "direction" : "OUT",
-       "multiplicity" : "One2Many",
-       "isParent" : "true",
-       "usesResource" : "false",
-       "hasDelTarget" : "false",
-       "SVC-INFRA" : "false"
-},
-{
-       "from" : "model-ver",
-       "to" : "model-element",
-       "label" : "startsWith",
-       "direction" : "OUT",
-       "multiplicity" : "One2Many",
-       "isParent" : "true",
-       "usesResource" : "false",
-       "hasDelTarget" : "false",
-       "SVC-INFRA" : "false"
-},
-{
-       "from" : "model-element",
-       "to" : "model-ver",
-       "label" : "isA",
-       "direction" : "OUT",
-       "multiplicity" : "Many2One",
-       "isParent" : "false",
-       "usesResource" : "false",
-       "hasDelTarget" : "false",
-       "SVC-INFRA" : "false"
-},
-{
-       "from" : "model-ver",
-       "to" : "metadatum",
-       "label" : "hasMetaData",
-       "direction" : "OUT",
-       "multiplicity" : "One2Many",
-       "isParent" : "true",
-       "usesResource" : "false",
-       "hasDelTarget" : "false",
-       "SVC-INFRA" : "false"
-},
-{
-       "from" : "model-element",
-       "to" : "model-element",
-       "label" : "connectsTo",
-       "direction" : "OUT",
-       "multiplicity" : "One2Many",
-       "isParent" : "true",
-       "usesResource" : "false",
-       "hasDelTarget" : "false",
-       "SVC-INFRA" : "false"
-},
-{
-       "from" : "model-element",
-       "to" : "model-constraint",
-       "label" : "uses",
-       "direction" : "OUT",
-       "multiplicity" : "One2Many",
-       "isParent" : "true",
-       "usesResource" : "false",
-       "hasDelTarget" : "false",
-       "SVC-INFRA" : "false"
-},
-{
-       "from" : "model-element",
-       "to" : "constrained-element-set",
-       "label" : "connectsTo",
-       "direction" : "OUT",
-       "multiplicity" : "One2Many",
-       "isParent" : "true",
-       "usesResource" : "false",
-       "hasDelTarget" : "false",
-       "SVC-INFRA" : "false"
-},
-{
-       "from" : "model-constraint",
-       "to" : "constrained-element-set",
-       "label" : "uses",
-       "direction" : "OUT",
-       "multiplicity" : "One2Many",
-       "isParent" : "true",
-       "usesResource" : "false",
-       "hasDelTarget" : "false",
-       "SVC-INFRA" : "false"
-},
-{
-       "from" : "constrained-element-set",
-       "to" : "element-choice-set",
-       "label" : "uses",
-       "direction" : "OUT",
-       "multiplicity" : "One2Many",
-       "isParent" : "true",
-       "usesResource" : "false",
-       "hasDelTarget" : "false",
-       "SVC-INFRA" : "false"
-},
-{
-       "from" : "element-choice-set",
-       "to" : "model-element",
-       "label" : "has",
-       "direction" : "OUT",
-       "multiplicity" : "One2Many",
-       "isParent" : "true",
-       "usesResource" : "false",
-       "hasDelTarget" : "false",
-       "SVC-INFRA" : "false"
-},
-{
-       "from" : "named-query",
-       "to" : "model",
-       "label" : "relatedTo",
-       "direction" : "OUT",
-       "multiplicity" : "One2Many",
-       "isParent" : "false",
-       "usesResource" : "false",
-       "hasDelTarget" : "false",
-       "SVC-INFRA" : "false"
-},
-{
-       "from" : "named-query",
-       "to" : "named-query-element",
-       "label" : "startsWith",
-       "direction" : "OUT",
-       "multiplicity" : "One2One",
-       "isParent" : "true",
-       "usesResource" : "false",
-       "hasDelTarget" : "false",
-       "SVC-INFRA" : "false"
-},
-{
-       "from" : "named-query-element",
-       "to" : "named-query-element",
-       "label" : "connectsTo",
-       "direction" : "OUT",
-       "multiplicity" : "Many2Many",
-       "isParent" : "true",
-       "usesResource" : "false",
-       "hasDelTarget" : "false",
-       "SVC-INFRA" : "false"
-},
-{
-       "from" : "named-query-element",
-       "to" : "model",
-       "label" : "isA",
-       "direction" : "OUT",
-       "multiplicity" : "Many2One",
-       "isParent" : "false",
-       "usesResource" : "false",
-       "hasDelTarget" : "false",
-       "SVC-INFRA" : "false"
-},
-{
-       "from" : "named-query-element",
-       "to" : "property-constraint",
-       "label" : "uses",
-       "direction" : "OUT",
-       "multiplicity" : "One2Many",
-       "isParent" : "true",
-       "usesResource" : "false",
-       "hasDelTarget" : "false",
-       "SVC-INFRA" : "false"
-},
-{
-       "from" : "named-query-element",
-       "to" : "related-lookup",
-       "label" : "uses",
-       "direction" : "OUT",
-       "multiplicity" : "One2Many",
-       "isParent" : "true",
-       "usesResource" : "false",
-       "hasDelTarget" : "false",
-       "SVC-INFRA" : "false"
-},
-{
-       "from" : "instance-group",
-       "to" : "model",
-       "label" : "targets",
-       "direction" : "OUT",
-       "multiplicity" : "Many2Many",
-       "isParent" : "false",
-       "usesResource" : "false",
-       "hasDelTarget" : "false",
-       "SVC-INFRA" : "false"
-},
-{
-       "from" : "newvce",
-       "to" : "l-interface",
-       "label" : "hasLInterface",
-       "direction" : "OUT",
-       "multiplicity" : "Many2Many",
-       "isParent" : "true",
-       "usesResource" : "false",
-       "hasDelTarget" : "false",
-       "SVC-INFRA" : "false"
-},
-{
-       "from" : "oam-network",
-       "to" : "complex",
-       "label" : "definedFor",
-       "direction" : "OUT",
-       "multiplicity" : "Many2Many",
-       "isParent" : "false",
-       "usesResource" : "false",
-       "hasDelTarget" : "false",
-       "SVC-INFRA" : "false"
-},
-{
-       "from" : "oam-network",
-       "to" : "service-capability",
-       "label" : "supportsServiceCapability",
-       "direction" : "OUT",
-       "multiplicity" : "Many2Many",
-       "isParent" : "false",
-       "usesResource" : "false",
-       "hasDelTarget" : "false",
-       "SVC-INFRA" : "false"
-},
-{
-       "from" : "p-interface",
-       "to" : "l-interface",
-       "label" : "hasLInterface",
-       "direction" : "OUT",
-       "multiplicity" : "Many2Many",
-       "isParent" : "true",
-       "usesResource" : "false",
-       "hasDelTarget" : "false",
-       "SVC-INFRA" : "true"
-},
-{
-       "from" : "p-interface",
-       "to" : "physical-link",
-       "label" : "usesPhysicalLink",
-       "direction" : "OUT",
-       "multiplicity" : "Many2Many",
-       "isParent" : "false",
-       "usesResource" : "false",
-       "hasDelTarget" : "true",
-       "SVC-INFRA" : "false"
-},
-{
-       "from" : "p-interface",
-       "to" : "logical-link",
-       "label" : "usesLogicalLink",
-       "direction" : "OUT",
-       "multiplicity" : "Many2One",
-       "isParent" : "false",
-       "usesResource" : "false",
-       "hasDelTarget" : "false",
-       "SVC-INFRA" : "true"
-},
-{
-       "from" : "port-group",
-       "to" : "cvlan-tag",
-       "label" : "hasCTag",
-       "direction" : "OUT",
-       "multiplicity" : "Many2Many",
-       "isParent" : "true",
-       "usesResource" : "true",
-       "hasDelTarget" : "false",
-       "SVC-INFRA" : "true"
-},
-{
-       "from" : "pserver",
-       "to" : "complex",
-       "label" : "locatedIn",
-       "direction" : "OUT",
-       "multiplicity" : "Many2One",
-       "isParent" : "false",
-       "usesResource" : "false",
-       "hasDelTarget" : "false",
-       "SVC-INFRA" : "true"
-},
-{
-       "from" : "pserver",
-       "to" : "cloud-region",
-       "label" : "locatedIn",
-       "direction" : "OUT",
-       "multiplicity" : "Many2One",
-       "isParent" : "false",
-       "usesResource" : "false",
-       "hasDelTarget" : "false",
-       "SVC-INFRA" : "true"
-},
-{
-       "from" : "pserver",
-       "to" : "availability-zone",
-       "label" : "existsIn",
-       "direction" : "OUT",
-       "multiplicity" : "Many2One",
-       "isParent" : "false",
-       "usesResource" : "false",
-       "hasDelTarget" : "false",
-       "SVC-INFRA" : "true"
-},
-{
-       "from" : "pserver",
-       "to" : "lag-interface",
-       "label" : "hasLAGInterface",
-       "direction" : "OUT",
-       "multiplicity" : "Many2Many",
-       "isParent" : "true",
-       "usesResource" : "false",
-       "hasDelTarget" : "false",
-       "SVC-INFRA" : "true"
-},
-{
-       "from" : "pserver",
-       "to" : "p-interface",
-       "label" : "hasPinterface",
-       "direction" : "OUT",
-       "multiplicity" : "Many2Many",
-       "isParent" : "true",
-       "usesResource" : "true",
-       "hasDelTarget" : "false",
-       "SVC-INFRA" : "true"
-},
-{
-       "from" : "pserver",
-       "to" : "zone",
-       "label" : "isMemberOf",
-       "direction" : "OUT",
-       "multiplicity" : "Many2One",
-       "isParent" : "false",
-       "usesResource" : "false",
-       "hasDelTarget" : "false",
-       "SVC-INFRA" : "false"
-},
-{
-       "from" : "pnf",
-       "to" : "p-interface",
-       "label" : "hasPinterface",
-       "direction" : "OUT",
-       "multiplicity" : "Many2Many",
-       "isParent" : "true",
-       "usesResource" : "true",
-       "hasDelTarget" : "false",
-       "SVC-INFRA" : "true"
-},
-{
-       "from" : "pnf",
-       "to" : "lag-interface",
-       "label" : "has",
-       "direction" : "OUT",
-       "multiplicity" : "One2Many",
-       "isParent" : "true",
-       "usesResource" : "false",
-       "hasDelTarget" : "false",
-       "SVC-INFRA" : "true"
-},
-{
-       "from" : "pnf",
-       "to" : "complex",
-       "label" : "locatedIn",
-       "direction" : "OUT",
-       "multiplicity" : "Many2One",
-       "isParent" : "false",
-       "usesResource" : "false",
-       "hasDelTarget" : "false",
-       "SVC-INFRA" : "false"
-},
-{
-       "from" : "pnf",
-       "to" : "instance-group",
-       "label" : "isMemberOf",
-       "direction" : "OUT",
-       "multiplicity" : "Many2Many",
-       "isParent" : "false",
-       "usesResource" : "false",
-       "hasDelTarget" : "false",
-       "SVC-INFRA" : "false"
-},
-{
-       "from" : "pnf",
-       "to" : "zone",
-       "label" : "isMemberOf",
-       "direction" : "OUT",
-       "multiplicity" : "Many2One",
-       "isParent" : "false",
-       "usesResource" : "false",
-       "hasDelTarget" : "false",
-       "SVC-INFRA" : "false"
-},
-{
-       "from" : "service-instance",
-       "to" : "zone",
-       "label" : "locatedIn",
-       "direction" : "OUT",
-       "multiplicity" : "Many2One",
-       "isParent" : "false",
-       "usesResource" : "true",
-       "hasDelTarget" : "false",
-       "SVC-INFRA" : "true"
-},
-{
-       "from" : "service-instance",
-       "to" : "cvlan-tag",
-       "label" : "hasIPAGFacingVLAN",
-       "direction" : "OUT",
-       "multiplicity" : "Many2Many",
-       "isParent" : "false",
-       "usesResource" : "true",
-       "hasDelTarget" : "false",
-       "SVC-INFRA" : "false"
-},
-{
-       "from" : "service-instance",
-       "to" : "pnf",
-       "label" : "uses",
-       "direction" : "OUT",
-       "multiplicity" : "One2Many",
-       "isParent" : "false",
-       "usesResource" : "true",
-       "hasDelTarget" : "false",
-       "SVC-INFRA" : "false"
-},
-{
-       "from" : "service-subscription",
-       "to" : "service-instance",
-       "label" : "hasInstance",
-       "direction" : "OUT",
-       "multiplicity" : "Many2Many",
-       "isParent" : "true",
-       "usesResource" : "false",
-       "hasDelTarget" : "false",
-       "SVC-INFRA" : "reverse"
-},
-{
-       "from" : "site-pair-set",
-       "to" : "routing-instance",
-       "label" : "hasRoutingInstance",
-       "direction" : "OUT",
-       "multiplicity" : "Many2Many",
-       "isParent" : "true",
-       "usesResource" : "false",
-       "hasDelTarget" : "false",
-       "SVC-INFRA" : "false"
-},
-{
-       "from" : "routing-instance",
-       "to" : "site-pair",
-       "label" : "hasSitePair",
-       "direction" : "OUT",
-       "multiplicity" : "Many2Many",
-       "isParent" : "true",
-       "usesResource" : "false",
-       "hasDelTarget" : "false",
-       "SVC-INFRA" : "false"
-},
-{
-       "from" : "site-pair",
-       "to" : "class-of-service",
-       "label" : "hasClassOfService",
-       "direction" : "OUT",
-       "multiplicity" : "Many2Many",
-       "isParent" : "true",
-       "usesResource" : "false",
-       "hasDelTarget" : "false",
-       "SVC-INFRA" : "false"
-},
-{
-       "from" : "tenant",
-       "to" : "l3-network",
-       "label" : "usesL3Network",
-       "direction" : "OUT",
-       "multiplicity" : "Many2Many",
-       "isParent" : "false",
-       "usesResource" : "false",
-       "hasDelTarget" : "false",
-       "SVC-INFRA" : "false"
-},
-{
-       "from" : "tenant",
-       "to" : "service-subscription",
-       "label" : "relatedTo",
-       "direction" : "OUT",
-       "multiplicity" : "Many2Many",
-       "isParent" : "false",
-       "usesResource" : "false",
-       "hasDelTarget" : "false",
-       "SVC-INFRA" : "false"
-},
-{
-       "from" : "tenant",
-       "to" : "vserver",
-       "label" : "owns",
-       "direction" : "OUT",
-       "multiplicity" : "One2Many",
-       "isParent" : "true",
-       "usesResource" : "false",
-       "hasDelTarget" : "false",
-       "SVC-INFRA" : "reverse"
-},
-{
-       "from" : "vce",
-       "to" : "availability-zone",
-       "label" : "hasAvailabilityZone",
-       "direction" : "OUT",
-       "multiplicity" : "Many2Many",
-       "isParent" : "false",
-       "usesResource" : "false",
-       "hasDelTarget" : "false",
-       "SVC-INFRA" : "false"
-},
-{
-       "from" : "vce",
-       "to" : "complex",
-       "label" : "locatedIn",
-       "direction" : "OUT",
-       "multiplicity" : "Many2Many",
-       "isParent" : "false",
-       "usesResource" : "false",
-       "hasDelTarget" : "false",
-       "SVC-INFRA" : "true"
-},
-{
-       "from" : "vce",
-       "to" : "port-group",
-       "label" : "hasPortGroup",
-       "direction" : "OUT",
-       "multiplicity" : "Many2Many",
-       "isParent" : "true",
-       "usesResource" : "true",
-       "hasDelTarget" : "false",
-       "SVC-INFRA" : "true"
-},
-{
-       "from" : "vce",
-       "to" : "vserver",
-       "label" : "runsOnVserver",
-       "direction" : "OUT",
-       "multiplicity" : "Many2Many",
-       "isParent" : "false",
-       "usesResource" : "true",
-       "hasDelTarget" : "false",
-       "SVC-INFRA" : "true"
-},
-{
-       "from" : "vce",
-       "to" : "service-instance",
-       "label" : "hasServiceInstance",
-       "direction" : "OUT",
-       "multiplicity" : "Many2Many",
-       "isParent" : "false",
-       "usesResource" : "false",
-       "hasDelTarget" : "false",
-       "SVC-INFRA" : "reverse"
-},
-{
-       "from" : "virtual-data-center",
-       "to" : "generic-vnf",
-       "label" : "hasVNF",
-       "direction" : "OUT",
-       "multiplicity" : "Many2Many",
-       "isParent" : "false",
-       "usesResource" : "false",
-       "hasDelTarget" : "false",
-       "SVC-INFRA" : "reverse"
-},
-{
-       "from" : "vlan",
-       "to" : "l3-interface-ipv4-address-list",
-       "label" : "hasIpAddress",
-       "direction" : "OUT",
-       "multiplicity" : "Many2Many",
-       "isParent" : "true",
-       "usesResource" : "false",
-       "hasDelTarget" : "false",
-       "SVC-INFRA" : "true"
-},
-{
-       "from" : "vlan",
-       "to" : "l3-interface-ipv6-address-list",
-       "label" : "hasIpAddress",
-       "direction" : "OUT",
-       "multiplicity" : "Many2Many",
-       "isParent" : "true",
-       "usesResource" : "false",
-       "hasDelTarget" : "false",
-       "SVC-INFRA" : "true"
-},
-{
-       "from" : "vpe",
-       "to" : "complex",
-       "label" : "locatedIn",
-       "direction" : "OUT",
-       "multiplicity" : "Many2Many",
-       "isParent" : "false",
-       "usesResource" : "false",
-       "hasDelTarget" : "false",
-       "SVC-INFRA" : "false"
-},
-{
-       "from" : "vpe",
-       "to" : "ctag-pool",
-       "label" : "usesCtagPool",
-       "direction" : "OUT",
-       "multiplicity" : "Many2Many",
-       "isParent" : "false",
-       "usesResource" : "false",
-       "hasDelTarget" : "false",
-       "SVC-INFRA" : "false"
-},
-{
-       "from" : "vpe",
-       "to" : "l-interface",
-       "label" : "hasLInterface",
-       "direction" : "OUT",
-       "multiplicity" : "Many2Many",
-       "isParent" : "true",
-       "usesResource" : "false",
-       "hasDelTarget" : "false",
-       "SVC-INFRA" : "false"
-},
-{
-       "from" : "vpe",
-       "to" : "lag-interface",
-       "label" : "hasLAGInterface",
-       "direction" : "OUT",
-       "multiplicity" : "Many2Many",
-       "isParent" : "true",
-       "usesResource" : "false",
-       "hasDelTarget" : "false",
-       "SVC-INFRA" : "false"
-},
-{
-       "from" : "vpe",
-       "to" : "vserver",
-       "label" : "runsOnVserver",
-       "direction" : "OUT",
-       "multiplicity" : "Many2Many",
-       "isParent" : "false",
-       "usesResource" : "true",
-       "hasDelTarget" : "false",
-       "SVC-INFRA" : "false"
-},
-{
-       "from" : "vpls-pe",
-       "to" : "complex",
-       "label" : "locatedIn",
-       "direction" : "OUT",
-       "multiplicity" : "Many2Many",
-       "isParent" : "false",
-       "usesResource" : "false",
-       "hasDelTarget" : "false",
-       "SVC-INFRA" : "false"
-},
-{
-       "from" : "vpls-pe",
-       "to" : "ctag-pool",
-       "label" : "usesCtagPool",
-       "direction" : "OUT",
-       "multiplicity" : "Many2Many",
-       "isParent" : "false",
-       "usesResource" : "false",
-       "hasDelTarget" : "false",
-       "SVC-INFRA" : "false"
-},
-{
-       "from" : "vpls-pe",
-       "to" : "p-interface",
-       "label" : "hasPinterface",
-       "direction" : "OUT",
-       "multiplicity" : "Many2Many",
-       "isParent" : "true",
-       "usesResource" : "false",
-       "hasDelTarget" : "false",
-       "SVC-INFRA" : "false"
-},
-{
-       "from" : "vpls-pe",
-       "to" : "lag-interface",
-       "label" : "hasLAGinterface",
-       "direction" : "OUT",
-       "multiplicity" : "Many2Many",
-       "isParent" : "true",
-       "usesResource" : "false",
-       "hasDelTarget" : "false",
-       "SVC-INFRA" : "false"
-},
-{
-       "from" : "vserver",
-       "to" : "flavor",
-       "label" : "hasFlavor",
-       "direction" : "OUT",
-       "multiplicity" : "Many2One",
-       "isParent" : "false",
-       "usesResource" : "false",
-       "hasDelTarget" : "false",
-       "SVC-INFRA" : "true"
-},
-{
-       "from" : "vserver",
-       "to" : "image",
-       "label" : "hasImage",
-       "direction" : "OUT",
-       "multiplicity" : "Many2One",
-       "isParent" : "false",
-       "usesResource" : "false",
-       "hasDelTarget" : "false",
-       "SVC-INFRA" : "true"
-},
-{
-       "from" : "vserver",
-       "to" : "ipaddress",
-       "label" : "hasIpAddress",
-       "direction" : "OUT",
-       "multiplicity" : "Many2Many",
-       "isParent" : "true",
-       "usesResource" : "true",
-       "hasDelTarget" : "false",
-       "SVC-INFRA" : "false"
-},
-{
-       "from" : "vserver",
-       "to" : "l-interface",
-       "label" : "hasLInterface",
-       "direction" : "OUT",
-       "multiplicity" : "Many2Many",
-       "isParent" : "true",
-       "usesResource" : "false",
-       "hasDelTarget" : "false",
-       "SVC-INFRA" : "true"
-},
-{
-       "from" : "vserver",
-       "to" : "pserver",
-       "label" : "runsOnPserver",
-       "direction" : "OUT",
-       "multiplicity" : "Many2One",
-       "isParent" : "false",
-       "usesResource" : "true",
-       "hasDelTarget" : "false",
-       "SVC-INFRA" : "true"
-},
-{
-       "from" : "vserver",
-       "to" : "volume",
-       "label" : "hasVolume",
-       "direction" : "OUT",
-       "multiplicity" : "Many2Many",
-       "isParent" : "true",
-       "usesResource" : "true",
-       "hasDelTarget" : "false",
-       "SVC-INFRA" : "true"
-},
-{
-       "from" : "vserver",
-       "to" : "vnfc",
-       "label" : "hosts",
-       "direction" : "OUT",
-       "multiplicity" : "Many2Many",
-       "isParent" : "false",
-       "usesResource" : "true",
-       "hasDelTarget" : "false",
-       "SVC-INFRA" : "true"
-},
-{
-       "from" : "vserver",
-       "to" : "snapshot",
-       "label" : "uses",
-       "direction" : "OUT",
-       "multiplicity" : "One2One",
-       "isParent" : "false",
-       "usesResource" : "false",
-       "hasDelTarget" : "false",
-       "SVC-INFRA" : "true"
-},
-{
-       "from" : "service-instance",
-       "to" : "connector",
-       "label" : "uses",
-       "direction" : "OUT",
-       "multiplicity" : "Many2Many",
-       "isParent" : "false",
-       "usesResource" : "true",
-       "hasDelTarget" : "false",
-       "SVC-INFRA" : "false"
-},
-{
-       "from" : "service-instance",
-       "to" : "metadatum",
-       "label" : "hasMetaData",
-       "direction" : "OUT",
-       "multiplicity" : "Many2Many",
-       "isParent" : "true",
-       "usesResource" : "false",
-       "hasDelTarget" : "false",
-       "SVC-INFRA" : "false"
-},
-{
-       "from" : "service-instance",
-       "to" : "logical-link",
-       "label" : "uses",
-       "direction" : "OUT",
-       "multiplicity" : "Many2Many",
-       "isParent" : "false",
-       "usesResource" : "false",
-       "hasDelTarget" : "true",
-       "SVC-INFRA" : "false"
-},
-{
-       "from" : "service-instance",
-       "to" : "vlan",
-       "label" : "dependsOn",
-       "direction" : "OUT",
-       "multiplicity" : "One2Many",
-       "isParent" : "false",
-       "usesResource" : "true",
-       "hasDelTarget" : "false",
-       "SVC-INFRA" : "false"
-},
-{
-       "from" : "service-instance",
-       "to" : "service-instance",
-       "label" : "dependsOn",
-       "direction" : "OUT",
-       "multiplicity" : "One2Many",
-       "isParent" : "false",
-       "usesResource" : "true",
-       "hasDelTarget" : "false",
-       "SVC-INFRA" : "false"
-},
-{
-       "from" : "connector",
-       "to" : "virtual-data-center",
-       "label" : "contains",
-       "direction" : "OUT",
-       "multiplicity" : "Many2Many",
-       "isParent" : "false",
-       "usesResource" : "false",
-       "hasDelTarget" : "false",
-       "SVC-INFRA" : "false"
-},
-{
-       "from" : "connector",
-       "to" : "metadatum",
-       "label" : "hasMetaData",
-       "direction" : "OUT",
-       "multiplicity" : "Many2Many",
-       "isParent" : "true",
-       "usesResource" : "false",
-       "hasDelTarget" : "false",
-       "SVC-INFRA" : "false"
-},
-{
-       "from" : "virtual-data-center",
-       "to" : "logical-link",
-       "label" : "contains",
-       "direction" : "OUT",
-       "multiplicity" : "Many2Many",
-       "isParent" : "false",
-       "usesResource" : "true",
-       "hasDelTarget" : "false",
-       "SVC-INFRA" : "false"
-},
-{
-       "from" : "logical-link",
-       "to" : "generic-vnf",
-       "label" : "bridgedTo",
-       "direction" : "OUT",
-       "multiplicity" : "Many2Many",
-       "isParent" : "false",
-       "usesResource" : "false",
-       "hasDelTarget" : "false",
-       "SVC-INFRA" : "false"
-},
-{
-       "from" : "logical-link",
-       "to" : "pserver",
-       "label" : "bridgedTo",
-       "direction" : "OUT",
-       "multiplicity" : "Many2Many",
-       "isParent" : "false",
-       "usesResource" : "false",
-       "hasDelTarget" : "false",
-       "SVC-INFRA" : "false"
-},
-{
-       "from" : "vlan",
-       "to" : "multicast-configuration",
-       "label" : "uses",
-       "direction" : "OUT",
-       "multiplicity" : "Many2Many",
-       "isParent" : "false",
-       "usesResource" : "true",
-       "hasDelTarget" : "false",
-       "SVC-INFRA" : "false"
-},
-{
-       "from" : "volume-group",
-       "to" : "complex",
-       "label" : "existsIn",
-       "direction" : "OUT",
-       "multiplicity" : "Many2Many",
-       "isParent" : "false",
-       "usesResource" : "false",
-       "hasDelTarget" : "false",
-       "SVC-INFRA" : "true"
-},
-{
-       "from" : "volume-group",
-       "to" : "tenant",
-       "label" : "belongsTo",
-       "direction" : "OUT",
-       "multiplicity" : "Many2Many",
-       "isParent" : "false",
-       "usesResource" : "false",
-       "hasDelTarget" : "false",
-       "SVC-INFRA" : "true"
-},
-{
-       "from" : "ipsec-configuration",
-       "to" : "vig-server",
-       "label" : "hasVigServer",
-       "direction" : "OUT",
-       "multiplicity" : "One2Many",
-       "isParent" : "true",
-       "usesResource" : "true",
-       "hasDelTarget" : "false",
-       "SVC-INFRA" : "false"
-},
-{
-       "from" : "generic-vnf",
-       "to" : "ipsec-configuration",
-       "label" : "uses",
-       "direction" : "OUT",
-       "multiplicity" : "Many2One",
-       "isParent" : "false",
-       "usesResource" : "true",
-       "hasDelTarget" : "false",
-       "SVC-INFRA" : "false"
-},
-{
-       "from" : "vf-module",
-       "to" : "volume-group",
-       "label" : "uses",
-       "direction" : "OUT",
-       "multiplicity" : "One2One",
-       "isParent" : "false",
-       "usesResource" : "false",
-       "hasDelTarget" : "false",
-       "SVC-INFRA" : "true"
-},
-{
-       "from" : "vserver",
-       "to" : "vf-module",
-       "label" : "isPartOf",
-       "direction" : "OUT",
-       "multiplicity" : "Many2One",
-       "isParent" : "false",
-       "usesResource" : "false",
-       "hasDelTarget" : "false",
-       "SVC-INFRA" : "true"
-},
-{
-       "from" : "vf-module",
-       "to" : "l3-network",
-       "label" : "uses",
-       "direction" : "OUT",
-       "multiplicity" : "Many2Many",
-       "isParent" : "false",
-       "usesResource" : "false",
-       "hasDelTarget" : "false",
-       "SVC-INFRA" : "true"
-},
-{
-       "from" : "vf-module",
-       "to" : "vnfc",
-       "label" : "uses",
-       "direction" : "OUT",
-       "multiplicity" : "One2Many",
-       "isParent" : "false",
-       "usesResource" : "false",
-       "hasDelTarget" : "true",
-       "SVC-INFRA" : "true"
-},
-{
-       "from" : "generic-vnf",
-       "to" : "vf-module",
-       "label" : "has",
-       "direction" : "OUT",
-       "multiplicity" : "One2Many",
-       "isParent" : "true",
-       "usesResource" : "false",
-       "hasDelTarget" : "false",
-       "SVC-INFRA" : "true"
-},
-{
-       "from" : "generic-vnf",
-       "to" : "volume-group",
-       "label" : "uses",
-       "direction" : "OUT",
-       "multiplicity" : "One2Many",
-       "isParent" : "false",
-       "usesResource" : "false",
-       "hasDelTarget" : "false",
-       "SVC-INFRA" : "true"
-},
-{
-       "from" : "generic-vnf",
-       "to" : "vnfc",
-       "label" : "uses",
-       "direction" : "OUT",
-       "multiplicity" : "One2Many",
-       "isParent" : "false",
-       "usesResource" : "false",
-       "hasDelTarget" : "true",
-       "SVC-INFRA" : "true"
-},
-{
-       "from" : "vlan",
-       "to" : "logical-link",
-       "label" : "usesLogicalLink",
-       "direction" : "OUT",
-       "multiplicity" : "Many2Many",
-       "isParent" : "false",
-       "usesResource" : "false",
-       "hasDelTarget" : "true",
-       "SVC-INFRA" : "true"
-},
-{
-       "from" : "vpn-binding",
-       "to" : "route-target",
-       "label" : "has",
-       "direction" : "OUT",
-       "multiplicity" : "One2Many",
-       "isParent" : "true",
-       "usesResource" : "false",
-       "hasDelTarget" : "false",
-       "SVC-INFRA" : "false"
-},
-{
-       "from" : "service-instance",
-       "to" : "ctag-assignment",
-       "label" : "uses",
-       "direction" : "OUT",
-       "multiplicity" : "One2Many",
-       "isParent" : "false",
-       "usesResource" : "false",
-       "hasDelTarget" : "false",
-       "SVC-INFRA" : "false"
-},
-{
-       "from" : "allotted-resource",
-       "to" : "generic-vnf",
-       "label" : "isPartOf",
-       "direction" : "OUT",
-       "multiplicity" : "Many2Many",
-       "isParent" : "false",
-       "usesResource" : "false",
-       "hasDelTarget" : "false",
-       "SVC-INFRA" : "false"
-},
-{
-       "from" : "allotted-resource",
-       "to" : "l3-network",
-       "label" : "isPartOf",
-       "direction" : "OUT",
-       "multiplicity" : "Many2Many",
-       "isParent" : "false",
-       "usesResource" : "false",
-       "hasDelTarget" : "false",
-       "SVC-INFRA" : "false"
-},
-{
-       "from" : "allotted-resource",
-       "to" : "instance-group",
-       "label" : "isMemberOf",
-       "direction" : "OUT",
-       "multiplicity" : "Many2Many",
-       "isParent" : "false",
-       "usesResource" : "false",
-       "hasDelTarget" : "false",
-       "SVC-INFRA" : "false"
-},
-{
-       "from" : "allotted-resource",
-       "to" : "network-policy",
-       "label" : "uses",
-       "direction" : "OUT",
-       "multiplicity" : "One2One",
-       "isParent" : "false",
-       "usesResource" : "false",
-       "hasDelTarget" : "false",
-       "SVC-INFRA" : "false"
-},
-{
-       "from" : "allotted-resource",
-       "to" : "vlan",
-       "label" : "isPartOf",
-       "direction" : "OUT",
-       "multiplicity" : "Many2Many",
-       "isParent" : "false",
-       "usesResource" : "false",
-       "hasDelTarget" : "false",
-       "SVC-INFRA" : "false"
-},
-{
-       "from" : "allotted-resource",
-       "to" : "l-interface",
-       "label" : "uses",
-       "direction" : "OUT",
-       "multiplicity" : "One2Many",
-       "isParent" : "false",
-       "usesResource" : "false",
-       "hasDelTarget" : "false",
-       "SVC-INFRA" : "false"
-},
-{
-       "from" : "generic-vnf",
-       "to" : "instance-group",
-       "label" : "isMemberOf",
-       "direction" : "OUT",
-       "multiplicity" : "Many2Many",
-       "isParent" : "false",
-       "usesResource" : "false",
-       "hasDelTarget" : "false",
-       "SVC-INFRA" : "false"
-},
-{
-       "from" : "service-instance",
-       "to" : "instance-group",
-       "label" : "isMemberOf",
-       "direction" : "OUT",
-       "multiplicity" : "Many2Many",
-       "isParent" : "false",
-       "usesResource" : "false",
-       "hasDelTarget" : "false",
-       "SVC-INFRA" : "false"
-},
-{
-       "from" : "allotted-resource",
-       "to" : "tunnel-xconnect",
-       "label" : "has",
-       "direction" : "OUT",
-       "multiplicity" : "One2One",
-       "isParent" : "true",
-       "usesResource" : "false",
-       "hasDelTarget" : "false",
-       "SVC-INFRA" : "false"
-},
-{
-       "from" : "logical-link",
-       "to" : "cloud-region",
-       "label" : "existsIn",
-       "direction" : "OUT",
-       "multiplicity" : "Many2Many",
-       "isParent" : "false",
-       "usesResource" : "false",
-       "hasDelTarget" : "false",
-       "SVC-INFRA" : "false"
-},
-{
-       "from" : "logical-link",
-       "to" : "vpn-binding",
-       "label" : "uses",
-       "direction" : "OUT",
-       "multiplicity" : "Many2Many",
-       "isParent" : "false",
-       "usesResource" : "false",
-       "hasDelTarget" : "false",
-       "SVC-INFRA" : "false"
-},
-{
-       "from" : "generic-vnf",
-       "to" : "entitlement",
-       "label" : "has",
-       "direction" : "OUT",
-       "multiplicity" : "One2Many",
-       "isParent" : "true",
-       "usesResource" : "false",
-       "hasDelTarget" : "false",
-       "SVC-INFRA" : "false"
-},
-{
-       "from" : "generic-vnf",
-       "to" : "license",
-       "label" : "has",
-       "direction" : "OUT",
-       "multiplicity" : "One2Many",
-       "isParent" : "true",
-       "usesResource" : "false",
-       "hasDelTarget" : "false",
-       "SVC-INFRA" : "false"
-},
-{
-       "from" : "vce",
-       "to" : "entitlement",
-       "label" : "has",
-       "direction" : "OUT",
-       "multiplicity" : "One2Many",
-       "isParent" : "true",
-       "usesResource" : "false",
-       "hasDelTarget" : "false",
-       "SVC-INFRA" : "false"
-},
-{
-       "from" : "vce",
-       "to" : "license",
-       "label" : "has",
-       "direction" : "OUT",
-       "multiplicity" : "One2Many",
-       "isParent" : "true",
-       "usesResource" : "false",
-       "hasDelTarget" : "false",
-       "SVC-INFRA" : "false"
-},
-{
-       "from" : "vpe",
-       "to" : "entitlement",
-       "label" : "has",
-       "direction" : "OUT",
-       "multiplicity" : "One2Many",
-       "isParent" : "true",
-       "usesResource" : "false",
-       "hasDelTarget" : "false",
-       "SVC-INFRA" : "false"
-},
-{
-       "from" : "vpe",
-       "to" : "license",
-       "label" : "has",
-       "direction" : "OUT",
-       "multiplicity" : "One2Many",
-       "isParent" : "true",
-       "usesResource" : "false",
-       "hasDelTarget" : "false",
-       "SVC-INFRA" : "false"
-},
-{
-       "from" : "zone",
-       "to" : "complex",
-       "label" : "existsIn",
-       "direction" : "OUT",
-       "multiplicity" : "Many2One",
-       "isParent" : "false",
-       "usesResource" : "false",
-       "hasDelTarget" : "false",
-       "SVC-INFRA" : "false"
-},
-{
-       "from" : "service-instance",
-       "to" : "allotted-resource",
-       "label" : "has",
-       "direction" : "OUT",
-       "multiplicity" : "Many2Many",
-       "isParent" : "true",
-       "usesResource" : "false",
-       "hasDelTarget" : "false",
-       "SVC-INFRA" : "false"
-},
-{
-       "from" : "service-instance",
-       "to" : "allotted-resource",
-       "label" : "uses",
-       "direction" : "OUT",
-       "multiplicity" : "Many2Many",
-       "isParent" : "false",
-       "usesResource" : "false",
-       "hasDelTarget" : "false",
-       "SVC-INFRA" : "false"
-},
-{
-       "from" : "allotted-resource",
-       "to" : "vpn-binding",
-       "label" : "belongsTo",
-       "direction" : "OUT",
-       "multiplicity" : "Many2Many",
-       "isParent" : "false",
-       "usesResource" : "false",
-       "hasDelTarget" : "false",
-       "SVC-INFRA" : "false"
-},
-{
-       "from" : "generic-vnf",
-       "to" : "complex",
-       "label" : "locatedIn",
-       "direction" : "OUT",
-       "multiplicity" : "Many2Many",
-       "isParent" : "false",
-       "usesResource" : "false",
-       "hasDelTarget" : "false",
-       "SVC-INFRA" : "false"
-},
-{
-       "from" : "generic-vnf",
-       "to" : "ctag-pool",
-       "label" : "usesCtagPool",
-       "direction" : "OUT",
-       "multiplicity" : "Many2Many",
-       "isParent" : "false",
-       "usesResource" : "false",
-       "hasDelTarget" : "false",
-       "SVC-INFRA" : "false"
-},
-{
-       "from" : "p-interface",
-       "to" : "sriov-pf",
-       "label" : "has",
-       "direction" : "OUT",
-       "multiplicity" : "One2One",
-       "isParent" : "true",
-       "usesResource" : "false",
-       "hasDelTarget" : "false",
-       "SVC-INFRA" : "false"
-},
-{
-       "from" : "sriov-vf",
-       "to" : "sriov-pf",
-       "label" : "uses",
-       "direction" : "OUT",
-       "multiplicity" : "Many2One",
-       "isParent" : "false",
-       "usesResource" : "true",
-       "hasDelTarget" : "false",
-       "SVC-INFRA" : "false"
+       "rules": [
+               {
+                       "from": "availability-zone",
+                       "to": "complex",
+                       "label": "groupsResourcesIn",
+                       "direction": "OUT",
+                       "multiplicity": "Many2Many",
+                       "contains-other-v": "NONE",
+                       "delete-other-v": "NONE",
+                       "SVC-INFRA": "NONE",
+                       "prevent-delete": "!${direction}"
+               },
+               {
+                       "from": "generic-vnf",
+                       "to": "license-key-resource",
+                       "label": "uses",
+                       "direction": "OUT",
+                       "multiplicity": "Many2Many",
+                       "contains-other-v": "NONE",
+                       "delete-other-v": "NONE",
+                       "SVC-INFRA": "NONE",
+                       "prevent-delete": "!${direction}"
+               },
+               {
+                       "from": "availability-zone",
+                       "to": "service-capability",
+                       "label": "supportsServiceCapability",
+                       "direction": "OUT",
+                       "multiplicity": "Many2Many",
+                       "contains-other-v": "NONE",
+                       "delete-other-v": "NONE",
+                       "SVC-INFRA": "NONE",
+                       "prevent-delete": "!${direction}"
+               },
+               {
+                       "from": "cloud-region",
+                       "to": "complex",
+                       "label": "locatedIn",
+                       "direction": "OUT",
+                       "multiplicity": "Many2One",
+                       "contains-other-v": "NONE",
+                       "delete-other-v": "NONE",
+                       "SVC-INFRA": "NONE",
+                       "prevent-delete": "!${direction}"
+               },
+               {
+                       "from": "cloud-region",
+                       "to": "l3-network",
+                       "label": "uses",
+                       "direction": "OUT",
+                       "multiplicity": "Many2Many",
+                       "contains-other-v": "NONE",
+                       "delete-other-v": "NONE",
+                       "SVC-INFRA": "NONE",
+                       "prevent-delete": "NONE"
+               },
+               {
+                       "from": "cloud-region",
+                       "to": "tenant",
+                       "label": "has",
+                       "direction": "OUT",
+                       "multiplicity": "One2Many",
+                       "contains-other-v": "${direction}",
+                       "delete-other-v": "NONE",
+                       "SVC-INFRA": "!${direction}",
+                       "prevent-delete": "${direction}"
+               },
+               {
+                       "from": "cloud-region",
+                       "to": "image",
+                       "label": "has",
+                       "direction": "OUT",
+                       "multiplicity": "One2Many",
+                       "contains-other-v": "${direction}",
+                       "delete-other-v": "NONE",
+                       "SVC-INFRA": "NONE",
+                       "prevent-delete": "${direction}"
+               },
+               {
+                       "from": "cloud-region",
+                       "to": "flavor",
+                       "label": "has",
+                       "direction": "OUT",
+                       "multiplicity": "One2Many",
+                       "contains-other-v": "${direction}",
+                       "delete-other-v": "NONE",
+                       "SVC-INFRA": "NONE",
+                       "prevent-delete": "${direction}"
+               },
+               {
+                       "from": "cloud-region",
+                       "to": "availability-zone",
+                       "label": "has",
+                       "direction": "OUT",
+                       "multiplicity": "One2Many",
+                       "contains-other-v": "${direction}",
+                       "delete-other-v": "NONE",
+                       "SVC-INFRA": "NONE",
+                       "prevent-delete": "${direction}"
+               },
+               {
+                       "from": "cloud-region",
+                       "to": "oam-network",
+                       "label": "has",
+                       "direction": "OUT",
+                       "multiplicity": "One2Many",
+                       "contains-other-v": "${direction}",
+                       "delete-other-v": "NONE",
+                       "SVC-INFRA": "NONE",
+                       "prevent-delete": "${direction}"
+               },
+               {
+                       "from": "cloud-region",
+                       "to": "dvs-switch",
+                       "label": "has",
+                       "direction": "OUT",
+                       "multiplicity": "One2Many",
+                       "contains-other-v": "${direction}",
+                       "delete-other-v": "NONE",
+                       "SVC-INFRA": "NONE",
+                       "prevent-delete": "${direction}"
+               },
+               {
+                       "from": "cloud-region",
+                       "to": "volume-group",
+                       "label": "has",
+                       "direction": "OUT",
+                       "multiplicity": "One2Many",
+                       "contains-other-v": "${direction}",
+                       "delete-other-v": "NONE",
+                       "SVC-INFRA": "NONE",
+                       "prevent-delete": "${direction}"
+               },
+               {
+                       "from": "cloud-region",
+                       "to": "group-assignment",
+                       "label": "has",
+                       "direction": "OUT",
+                       "multiplicity": "One2Many",
+                       "contains-other-v": "${direction}",
+                       "delete-other-v": "NONE",
+                       "SVC-INFRA": "NONE",
+                       "prevent-delete": "${direction}"
+               },
+               {
+                       "from": "cloud-region",
+                       "to": "snapshot",
+                       "label": "has",
+                       "direction": "OUT",
+                       "multiplicity": "One2Many",
+                       "contains-other-v": "${direction}",
+                       "delete-other-v": "NONE",
+                       "SVC-INFRA": "NONE",
+                       "prevent-delete": "${direction}"
+               },
+               {
+                       "from": "cloud-region",
+                       "to": "zone",
+                       "label": "isMemberOf",
+                       "direction": "OUT",
+                       "multiplicity": "Many2One",
+                       "contains-other-v": "NONE",
+                       "delete-other-v": "NONE",
+                       "SVC-INFRA": "NONE",
+                       "prevent-delete": "NONE"
+               },
+               {
+                       "from": "complex",
+                       "to": "ctag-pool",
+                       "label": "hasCtagPool",
+                       "direction": "OUT",
+                       "multiplicity": "Many2Many",
+                       "contains-other-v": "${direction}",
+                       "delete-other-v": "NONE",
+                       "SVC-INFRA": "NONE",
+                       "prevent-delete": "NONE"
+               },
+               {
+                       "from": "complex",
+                       "to": "l3-network",
+                       "label": "usesL3Network",
+                       "direction": "OUT",
+                       "multiplicity": "Many2Many",
+                       "contains-other-v": "NONE",
+                       "delete-other-v": "NONE",
+                       "SVC-INFRA": "${direction}",
+                       "prevent-delete": "NONE"
+               },
+               {
+                       "from": "ctag-pool",
+                       "to": "availability-zone",
+                       "label": "supportsAvailabilityZone",
+                       "direction": "OUT",
+                       "multiplicity": "Many2Many",
+                       "contains-other-v": "NONE",
+                       "delete-other-v": "NONE",
+                       "SVC-INFRA": "NONE",
+                       "prevent-delete": "!${direction}"
+               },
+               {
+                       "from": "customer",
+                       "to": "service-subscription",
+                       "label": "subscribesTo",
+                       "direction": "OUT",
+                       "multiplicity": "Many2Many",
+                       "contains-other-v": "${direction}",
+                       "delete-other-v": "NONE",
+                       "SVC-INFRA": "!${direction}",
+                       "prevent-delete": "NONE"
+               },
+               {
+                       "from": "dvs-switch",
+                       "to": "availability-zone",
+                       "label": "existsIn",
+                       "direction": "OUT",
+                       "multiplicity": "Many2Many",
+                       "contains-other-v": "NONE",
+                       "delete-other-v": "NONE",
+                       "SVC-INFRA": "NONE",
+                       "prevent-delete": "!${direction}"
+               },
+               {
+                       "from": "generic-vnf",
+                       "to": "l-interface",
+                       "label": "hasLInterface",
+                       "direction": "OUT",
+                       "multiplicity": "Many2Many",
+                       "contains-other-v": "${direction}",
+                       "delete-other-v": "NONE",
+                       "SVC-INFRA": "${direction}",
+                       "prevent-delete": "NONE"
+               },
+               {
+                       "from": "generic-vnf",
+                       "to": "availability-zone",
+                       "label": "hasAvailabilityZone",
+                       "direction": "OUT",
+                       "multiplicity": "Many2Many",
+                       "contains-other-v": "NONE",
+                       "delete-other-v": "NONE",
+                       "SVC-INFRA": "${direction}",
+                       "prevent-delete": "!${direction}"
+               },
+               {
+                       "from": "generic-vnf",
+                       "to": "lag-interface",
+                       "label": "hasLAGInterface",
+                       "direction": "OUT",
+                       "multiplicity": "Many2Many",
+                       "contains-other-v": "${direction}",
+                       "delete-other-v": "NONE",
+                       "SVC-INFRA": "${direction}",
+                       "prevent-delete": "NONE"
+               },
+               {
+                       "from": "generic-vnf",
+                       "to": "l3-network",
+                       "label": "usesL3Network",
+                       "direction": "OUT",
+                       "multiplicity": "Many2Many",
+                       "contains-other-v": "NONE",
+                       "delete-other-v": "NONE",
+                       "SVC-INFRA": "${direction}",
+                       "prevent-delete": "NONE"
+               },
+               {
+                       "from": "generic-vnf",
+                       "to": "pserver",
+                       "label": "runsOnPserver",
+                       "direction": "OUT",
+                       "multiplicity": "Many2Many",
+                       "contains-other-v": "NONE",
+                       "delete-other-v": "NONE",
+                       "SVC-INFRA": "${direction}",
+                       "prevent-delete": "!${direction}"
+               },
+               {
+                       "from": "generic-vnf",
+                       "to": "vnf-image",
+                       "label": "usesVnfImage",
+                       "direction": "OUT",
+                       "multiplicity": "Many2One",
+                       "contains-other-v": "NONE",
+                       "delete-other-v": "NONE",
+                       "SVC-INFRA": "${direction}",
+                       "prevent-delete": "!${direction}"
+               },
+               {
+                       "from": "generic-vnf",
+                       "to": "vserver",
+                       "label": "runsOnVserver",
+                       "direction": "OUT",
+                       "multiplicity": "One2Many",
+                       "contains-other-v": "NONE",
+                       "delete-other-v": "NONE",
+                       "SVC-INFRA": "${direction}",
+                       "prevent-delete": "NONE"
+               },
+               {
+                       "from": "generic-vnf",
+                       "to": "service-instance",
+                       "label": "hasInstance",
+                       "direction": "OUT",
+                       "multiplicity": "Many2Many",
+                       "contains-other-v": "NONE",
+                       "delete-other-v": "NONE",
+                       "SVC-INFRA": "${direction}",
+                       "prevent-delete": "NONE"
+               },
+               {
+                       "from": "generic-vnf",
+                       "to": "site-pair-set",
+                       "label": "hasSitePairSet",
+                       "direction": "OUT",
+                       "multiplicity": "Many2Many",
+                       "contains-other-v": "NONE",
+                       "delete-other-v": "NONE",
+                       "SVC-INFRA": "NONE",
+                       "prevent-delete": "NONE"
+               },
+               {
+                       "from": "generic-vnf",
+                       "to": "network-profile",
+                       "label": "hasNetworkProfile",
+                       "direction": "OUT",
+                       "multiplicity": "Many2Many",
+                       "contains-other-v": "NONE",
+                       "delete-other-v": "NONE",
+                       "SVC-INFRA": "NONE",
+                       "prevent-delete": "NONE"
+               },
+               {
+                       "from": "generic-vnf",
+                       "to": "pnf",
+                       "label": "hostedOn",
+                       "direction": "OUT",
+                       "multiplicity": "Many2Many",
+                       "contains-other-v": "NONE",
+                       "delete-other-v": "NONE",
+                       "SVC-INFRA": "NONE",
+                       "prevent-delete": "NONE"
+               },
+               {
+                       "from": "group-assignment",
+                       "to": "tenant",
+                       "label": "has",
+                       "direction": "OUT",
+                       "multiplicity": "Many2Many",
+                       "contains-other-v": "NONE",
+                       "delete-other-v": "NONE",
+                       "SVC-INFRA": "NONE",
+                       "prevent-delete": "NONE"
+               },
+               {
+                       "from": "group-assignment",
+                       "to": "pserver",
+                       "label": "has",
+                       "direction": "OUT",
+                       "multiplicity": "One2Many",
+                       "contains-other-v": "NONE",
+                       "delete-other-v": "NONE",
+                       "SVC-INFRA": "NONE",
+                       "prevent-delete": "!${direction}"
+               },
+               {
+                       "from": "image",
+                       "to": "metadatum",
+                       "label": "hasMetaDatum",
+                       "direction": "OUT",
+                       "multiplicity": "Many2Many",
+                       "contains-other-v": "${direction}",
+                       "delete-other-v": "NONE",
+                       "SVC-INFRA": "NONE",
+                       "prevent-delete": "NONE"
+               },
+               {
+                       "from": "l-interface",
+                       "to": "instance-group",
+                       "label": "isMemberOf",
+                       "direction": "OUT",
+                       "multiplicity": "Many2Many",
+                       "contains-other-v": "NONE",
+                       "delete-other-v": "NONE",
+                       "SVC-INFRA": "NONE",
+                       "prevent-delete": "NONE"
+               },
+               {
+                       "from": "vnfc",
+                       "to": "instance-group",
+                       "label": "isMemberOf",
+                       "direction": "OUT",
+                       "multiplicity": "Many2Many",
+                       "contains-other-v": "NONE",
+                       "delete-other-v": "NONE",
+                       "SVC-INFRA": "NONE",
+                       "prevent-delete": "NONE"
+               },
+               {
+                       "from": "l-interface",
+                       "to": "l3-interface-ipv4-address-list",
+                       "label": "hasIpAddress",
+                       "direction": "OUT",
+                       "multiplicity": "Many2Many",
+                       "contains-other-v": "${direction}",
+                       "delete-other-v": "NONE",
+                       "SVC-INFRA": "${direction}",
+                       "prevent-delete": "NONE"
+               },
+               {
+                       "from": "l-interface",
+                       "to": "l3-interface-ipv6-address-list",
+                       "label": "hasIpAddress",
+                       "direction": "OUT",
+                       "multiplicity": "Many2Many",
+                       "contains-other-v": "${direction}",
+                       "delete-other-v": "NONE",
+                       "SVC-INFRA": "${direction}",
+                       "prevent-delete": "NONE"
+               },
+               {
+                       "from": "l-interface",
+                       "to": "l-interface",
+                       "label": "has",
+                       "direction": "OUT",
+                       "multiplicity": "One2Many",
+                       "contains-other-v": "${direction}",
+                       "delete-other-v": "NONE",
+                       "SVC-INFRA": "${direction}",
+                       "prevent-delete": "NONE"
+               },
+               {
+                       "from": "l-interface",
+                       "to": "logical-link",
+                       "label": "usesLogicalLink",
+                       "direction": "OUT",
+                       "multiplicity": "Many2Many",
+                       "contains-other-v": "NONE",
+                       "delete-other-v": "${direction}",
+                       "SVC-INFRA": "${direction}",
+                       "prevent-delete": "NONE"
+               },
+               {
+                       "from": "lag-interface",
+                       "to": "logical-link",
+                       "label": "uses",
+                       "direction": "OUT",
+                       "multiplicity": "Many2Many",
+                       "contains-other-v": "NONE",
+                       "delete-other-v": "${direction}",
+                       "SVC-INFRA": "${direction}",
+                       "prevent-delete": "NONE"
+               },
+               {
+                       "from": "l-interface",
+                       "to": "vlan",
+                       "label": "hasVlan",
+                       "direction": "OUT",
+                       "multiplicity": "Many2Many",
+                       "contains-other-v": "${direction}",
+                       "delete-other-v": "NONE",
+                       "SVC-INFRA": "NONE",
+                       "prevent-delete": "NONE"
+               },
+               {
+                       "from": "l-interface",
+                       "to": "sriov-vf",
+                       "label": "has",
+                       "direction": "OUT",
+                       "multiplicity": "One2One",
+                       "contains-other-v": "${direction}",
+                       "delete-other-v": "NONE",
+                       "SVC-INFRA": "NONE",
+                       "prevent-delete": "NONE"
+               },
+               {
+                       "from": "l3-interface-ipv4-address-list",
+                       "to": "instance-group",
+                       "label": "isMemberOf",
+                       "direction": "OUT",
+                       "multiplicity": "Many2Many",
+                       "contains-other-v": "NONE",
+                       "delete-other-v": "NONE",
+                       "SVC-INFRA": "NONE",
+                       "prevent-delete": "NONE"
+               },
+               {
+                       "from": "l3-interface-ipv6-address-list",
+                       "to": "instance-group",
+                       "label": "isMemberOf",
+                       "direction": "OUT",
+                       "multiplicity": "Many2Many",
+                       "contains-other-v": "NONE",
+                       "delete-other-v": "NONE",
+                       "SVC-INFRA": "NONE",
+                       "prevent-delete": "NONE"
+               },
+               {
+                       "from": "l3-interface-ipv4-address-list",
+                       "to": "l3-network",
+                       "label": "isMemberOf",
+                       "direction": "OUT",
+                       "multiplicity": "Many2Many",
+                       "contains-other-v": "NONE",
+                       "delete-other-v": "NONE",
+                       "SVC-INFRA": "${direction}",
+                       "prevent-delete": "NONE"
+               },
+               {
+                       "from": "l3-interface-ipv6-address-list",
+                       "to": "l3-network",
+                       "label": "isMemberOf",
+                       "direction": "OUT",
+                       "multiplicity": "Many2Many",
+                       "contains-other-v": "NONE",
+                       "delete-other-v": "NONE",
+                       "SVC-INFRA": "${direction}",
+                       "prevent-delete": "NONE"
+               },
+               {
+                       "from": "l3-interface-ipv4-address-list",
+                       "to": "subnet",
+                       "label": "isMemberOf",
+                       "direction": "OUT",
+                       "multiplicity": "Many2Many",
+                       "contains-other-v": "NONE",
+                       "delete-other-v": "NONE",
+                       "SVC-INFRA": "${direction}",
+                       "prevent-delete": "NONE"
+               },
+               {
+                       "from": "l3-interface-ipv6-address-list",
+                       "to": "subnet",
+                       "label": "isMemberOf",
+                       "direction": "OUT",
+                       "multiplicity": "Many2Many",
+                       "contains-other-v": "NONE",
+                       "delete-other-v": "NONE",
+                       "SVC-INFRA": "${direction}",
+                       "prevent-delete": "NONE"
+               },
+               {
+                       "from": "l3-network",
+                       "to": "vpn-binding",
+                       "label": "usesVpnBinding",
+                       "direction": "OUT",
+                       "multiplicity": "Many2Many",
+                       "contains-other-v": "NONE",
+                       "delete-other-v": "NONE",
+                       "SVC-INFRA": "NONE",
+                       "prevent-delete": "!${direction}"
+               },
+               {
+                       "from": "l3-network",
+                       "to": "instance-group",
+                       "label": "memberOf",
+                       "direction": "OUT",
+                       "multiplicity": "Many2Many",
+                       "contains-other-v": "NONE",
+                       "delete-other-v": "NONE",
+                       "SVC-INFRA": "NONE",
+                       "prevent-delete": "NONE"
+               },
+               {
+                       "from": "l3-network",
+                       "to": "subnet",
+                       "label": "hasSubnet",
+                       "direction": "OUT",
+                       "multiplicity": "Many2Many",
+                       "contains-other-v": "${direction}",
+                       "delete-other-v": "NONE",
+                       "SVC-INFRA": "!${direction}",
+                       "prevent-delete": "NONE"
+               },
+               {
+                       "from": "l3-network",
+                       "to": "service-instance",
+                       "label": "hasInstance",
+                       "direction": "OUT",
+                       "multiplicity": "Many2Many",
+                       "contains-other-v": "NONE",
+                       "delete-other-v": "NONE",
+                       "SVC-INFRA": "!${direction}",
+                       "prevent-delete": "NONE"
+               },
+               {
+                       "from": "l3-network",
+                       "to": "ctag-assignment",
+                       "label": "hasCtagAssignment",
+                       "direction": "OUT",
+                       "multiplicity": "Many2Many",
+                       "contains-other-v": "${direction}",
+                       "delete-other-v": "NONE",
+                       "SVC-INFRA": "${direction}",
+                       "prevent-delete": "NONE"
+               },
+               {
+                       "from": "l3-network",
+                       "to": "network-policy",
+                       "label": "uses",
+                       "direction": "OUT",
+                       "multiplicity": "Many2Many",
+                       "contains-other-v": "NONE",
+                       "delete-other-v": "NONE",
+                       "SVC-INFRA": "${direction}",
+                       "prevent-delete": "NONE"
+               },
+               {
+                       "from": "l3-network",
+                       "to": "segmentation-assignment",
+                       "label": "has",
+                       "direction": "OUT",
+                       "multiplicity": "One2Many",
+                       "contains-other-v": "${direction}",
+                       "delete-other-v": "NONE",
+                       "SVC-INFRA": "NONE",
+                       "prevent-delete": "NONE"
+               },
+               {
+                       "from": "l3-network",
+                       "to": "route-table-reference",
+                       "label": "uses",
+                       "direction": "OUT",
+                       "multiplicity": "Many2Many",
+                       "contains-other-v": "NONE",
+                       "delete-other-v": "NONE",
+                       "SVC-INFRA": "NONE",
+                       "prevent-delete": "NONE"
+               },
+               {
+                       "from": "lag-interface",
+                       "to": "lag-link",
+                       "label": "usesLAGLink",
+                       "direction": "OUT",
+                       "multiplicity": "Many2Many",
+                       "contains-other-v": "NONE",
+                       "delete-other-v": "${direction}",
+                       "SVC-INFRA": "${direction}",
+                       "prevent-delete": "NONE"
+               },
+               {
+                       "from": "lag-interface",
+                       "to": "p-interface",
+                       "label": "usesPInterface",
+                       "direction": "OUT",
+                       "multiplicity": "Many2Many",
+                       "contains-other-v": "NONE",
+                       "delete-other-v": "NONE",
+                       "SVC-INFRA": "${direction}",
+                       "prevent-delete": "NONE"
+               },
+               {
+                       "from": "lag-interface",
+                       "to": "l-interface",
+                       "label": "hasLInterface",
+                       "direction": "OUT",
+                       "multiplicity": "Many2Many",
+                       "contains-other-v": "${direction}",
+                       "delete-other-v": "NONE",
+                       "SVC-INFRA": "${direction}",
+                       "prevent-delete": "NONE"
+               },
+               {
+                       "from": "logical-link",
+                       "to": "lag-link",
+                       "label": "usesLAGLink",
+                       "direction": "OUT",
+                       "multiplicity": "Many2Many",
+                       "contains-other-v": "NONE",
+                       "delete-other-v": "NONE",
+                       "SVC-INFRA": "${direction}",
+                       "prevent-delete": "NONE"
+               },
+               {
+                       "from": "logical-link",
+                       "to": "pnf",
+                       "label": "bridgedTo",
+                       "direction": "OUT",
+                       "multiplicity": "Many2Many",
+                       "contains-other-v": "NONE",
+                       "delete-other-v": "NONE",
+                       "SVC-INFRA": "NONE",
+                       "prevent-delete": "NONE"
+               },
+               {
+                       "from": "logical-link",
+                       "to": "logical-link",
+                       "label": "uses",
+                       "direction": "OUT",
+                       "multiplicity": "One2Many",
+                       "contains-other-v": "NONE",
+                       "delete-other-v": "NONE",
+                       "SVC-INFRA": "${direction}",
+                       "prevent-delete": "NONE"
+               },
+               {
+                       "from": "model",
+                       "to": "model-ver",
+                       "label": "has",
+                       "direction": "OUT",
+                       "multiplicity": "One2Many",
+                       "contains-other-v": "${direction}",
+                       "delete-other-v": "NONE",
+                       "SVC-INFRA": "NONE",
+                       "prevent-delete": "NONE"
+               },
+               {
+                       "from": "model-ver",
+                       "to": "model-element",
+                       "label": "startsWith",
+                       "direction": "OUT",
+                       "multiplicity": "One2Many",
+                       "contains-other-v": "${direction}",
+                       "delete-other-v": "NONE",
+                       "SVC-INFRA": "NONE",
+                       "prevent-delete": "NONE"
+               },
+               {
+                       "from": "model-element",
+                       "to": "model-ver",
+                       "label": "isA",
+                       "direction": "OUT",
+                       "multiplicity": "Many2One",
+                       "contains-other-v": "NONE",
+                       "delete-other-v": "NONE",
+                       "SVC-INFRA": "NONE",
+                       "prevent-delete": "!${direction}"
+               },
+               {
+                       "from": "model-ver",
+                       "to": "metadatum",
+                       "label": "hasMetaData",
+                       "direction": "OUT",
+                       "multiplicity": "One2Many",
+                       "contains-other-v": "${direction}",
+                       "delete-other-v": "NONE",
+                       "SVC-INFRA": "NONE",
+                       "prevent-delete": "NONE"
+               },
+               {
+                       "from": "model-element",
+                       "to": "model-element",
+                       "label": "connectsTo",
+                       "direction": "OUT",
+                       "multiplicity": "One2Many",
+                       "contains-other-v": "${direction}",
+                       "delete-other-v": "NONE",
+                       "SVC-INFRA": "NONE",
+                       "prevent-delete": "NONE"
+               },
+               {
+                       "from": "model-element",
+                       "to": "model-constraint",
+                       "label": "uses",
+                       "direction": "OUT",
+                       "multiplicity": "One2Many",
+                       "contains-other-v": "${direction}",
+                       "delete-other-v": "NONE",
+                       "SVC-INFRA": "NONE",
+                       "prevent-delete": "NONE"
+               },
+               {
+                       "from": "model-element",
+                       "to": "constrained-element-set",
+                       "label": "connectsTo",
+                       "direction": "OUT",
+                       "multiplicity": "One2Many",
+                       "contains-other-v": "${direction}",
+                       "delete-other-v": "NONE",
+                       "SVC-INFRA": "NONE",
+                       "prevent-delete": "NONE"
+               },
+               {
+                       "from": "model-constraint",
+                       "to": "constrained-element-set",
+                       "label": "uses",
+                       "direction": "OUT",
+                       "multiplicity": "One2Many",
+                       "contains-other-v": "${direction}",
+                       "delete-other-v": "NONE",
+                       "SVC-INFRA": "NONE",
+                       "prevent-delete": "NONE"
+               },
+               {
+                       "from": "constrained-element-set",
+                       "to": "element-choice-set",
+                       "label": "uses",
+                       "direction": "OUT",
+                       "multiplicity": "One2Many",
+                       "contains-other-v": "${direction}",
+                       "delete-other-v": "NONE",
+                       "SVC-INFRA": "NONE",
+                       "prevent-delete": "NONE"
+               },
+               {
+                       "from": "element-choice-set",
+                       "to": "model-element",
+                       "label": "has",
+                       "direction": "OUT",
+                       "multiplicity": "One2Many",
+                       "contains-other-v": "${direction}",
+                       "delete-other-v": "NONE",
+                       "SVC-INFRA": "NONE",
+                       "prevent-delete": "NONE"
+               },
+               {
+                       "from": "named-query",
+                       "to": "model",
+                       "label": "relatedTo",
+                       "direction": "OUT",
+                       "multiplicity": "One2Many",
+                       "contains-other-v": "NONE",
+                       "delete-other-v": "NONE",
+                       "SVC-INFRA": "NONE",
+                       "prevent-delete": "!${direction}"
+               },
+               {
+                       "from": "named-query",
+                       "to": "named-query-element",
+                       "label": "startsWith",
+                       "direction": "OUT",
+                       "multiplicity": "One2One",
+                       "contains-other-v": "${direction}",
+                       "delete-other-v": "NONE",
+                       "SVC-INFRA": "NONE",
+                       "prevent-delete": "NONE"
+               },
+               {
+                       "from": "named-query-element",
+                       "to": "named-query-element",
+                       "label": "connectsTo",
+                       "direction": "OUT",
+                       "multiplicity": "Many2Many",
+                       "contains-other-v": "${direction}",
+                       "delete-other-v": "NONE",
+                       "SVC-INFRA": "NONE",
+                       "prevent-delete": "NONE"
+               },
+               {
+                       "from": "named-query-element",
+                       "to": "model",
+                       "label": "isA",
+                       "direction": "OUT",
+                       "multiplicity": "Many2One",
+                       "contains-other-v": "NONE",
+                       "delete-other-v": "NONE",
+                       "SVC-INFRA": "NONE",
+                       "prevent-delete": "!${direction}"
+               },
+               {
+                       "from": "named-query-element",
+                       "to": "property-constraint",
+                       "label": "uses",
+                       "direction": "OUT",
+                       "multiplicity": "One2Many",
+                       "contains-other-v": "${direction}",
+                       "delete-other-v": "NONE",
+                       "SVC-INFRA": "NONE",
+                       "prevent-delete": "NONE"
+               },
+               {
+                       "from": "named-query-element",
+                       "to": "related-lookup",
+                       "label": "uses",
+                       "direction": "OUT",
+                       "multiplicity": "One2Many",
+                       "contains-other-v": "${direction}",
+                       "delete-other-v": "NONE",
+                       "SVC-INFRA": "NONE",
+                       "prevent-delete": "NONE"
+               },
+               {
+                       "from": "instance-group",
+                       "to": "model",
+                       "label": "targets",
+                       "direction": "OUT",
+                       "multiplicity": "Many2Many",
+                       "contains-other-v": "NONE",
+                       "delete-other-v": "NONE",
+                       "SVC-INFRA": "NONE",
+                       "prevent-delete": "!${direction}"
+               },
+               {
+                       "from": "newvce",
+                       "to": "l-interface",
+                       "label": "hasLInterface",
+                       "direction": "OUT",
+                       "multiplicity": "Many2Many",
+                       "contains-other-v": "${direction}",
+                       "delete-other-v": "NONE",
+                       "SVC-INFRA": "NONE",
+                       "prevent-delete": "NONE"
+               },
+               {
+                       "from": "oam-network",
+                       "to": "complex",
+                       "label": "definedFor",
+                       "direction": "OUT",
+                       "multiplicity": "Many2Many",
+                       "contains-other-v": "NONE",
+                       "delete-other-v": "NONE",
+                       "SVC-INFRA": "NONE",
+                       "prevent-delete": "!${direction}"
+               },
+               {
+                       "from": "oam-network",
+                       "to": "service-capability",
+                       "label": "supportsServiceCapability",
+                       "direction": "OUT",
+                       "multiplicity": "Many2Many",
+                       "contains-other-v": "NONE",
+                       "delete-other-v": "NONE",
+                       "SVC-INFRA": "NONE",
+                       "prevent-delete": "!${direction}"
+               },
+               {
+                       "from": "p-interface",
+                       "to": "l-interface",
+                       "label": "hasLInterface",
+                       "direction": "OUT",
+                       "multiplicity": "Many2Many",
+                       "contains-other-v": "${direction}",
+                       "delete-other-v": "NONE",
+                       "SVC-INFRA": "${direction}",
+                       "prevent-delete": "NONE"
+               },
+               {
+                       "from": "p-interface",
+                       "to": "physical-link",
+                       "label": "usesPhysicalLink",
+                       "direction": "OUT",
+                       "multiplicity": "Many2Many",
+                       "contains-other-v": "NONE",
+                       "delete-other-v": "${direction}",
+                       "SVC-INFRA": "NONE",
+                       "prevent-delete": "NONE"
+               },
+               {
+                       "from": "p-interface",
+                       "to": "logical-link",
+                       "label": "usesLogicalLink",
+                       "direction": "OUT",
+                       "multiplicity": "Many2One",
+                       "contains-other-v": "NONE",
+                       "delete-other-v": "NONE",
+                       "SVC-INFRA": "${direction}",
+                       "prevent-delete": "NONE"
+               },
+               {
+                       "from": "port-group",
+                       "to": "cvlan-tag",
+                       "label": "hasCTag",
+                       "direction": "OUT",
+                       "multiplicity": "Many2Many",
+                       "contains-other-v": "${direction}",
+                       "delete-other-v": "NONE",
+                       "SVC-INFRA": "${direction}",
+                       "prevent-delete": "NONE"
+               },
+               {
+                       "from": "pserver",
+                       "to": "complex",
+                       "label": "locatedIn",
+                       "direction": "OUT",
+                       "multiplicity": "Many2One",
+                       "contains-other-v": "NONE",
+                       "delete-other-v": "NONE",
+                       "SVC-INFRA": "${direction}",
+                       "prevent-delete": "!${direction}"
+               },
+               {
+                       "from": "pserver",
+                       "to": "cloud-region",
+                       "label": "locatedIn",
+                       "direction": "OUT",
+                       "multiplicity": "Many2One",
+                       "contains-other-v": "NONE",
+                       "delete-other-v": "NONE",
+                       "SVC-INFRA": "${direction}",
+                       "prevent-delete": "NONE"
+               },
+               {
+                       "from": "pserver",
+                       "to": "availability-zone",
+                       "label": "existsIn",
+                       "direction": "OUT",
+                       "multiplicity": "Many2One",
+                       "contains-other-v": "NONE",
+                       "delete-other-v": "NONE",
+                       "SVC-INFRA": "${direction}",
+                       "prevent-delete": "!${direction}"
+               },
+               {
+                       "from": "pserver",
+                       "to": "lag-interface",
+                       "label": "hasLAGInterface",
+                       "direction": "OUT",
+                       "multiplicity": "Many2Many",
+                       "contains-other-v": "${direction}",
+                       "delete-other-v": "NONE",
+                       "SVC-INFRA": "${direction}",
+                       "prevent-delete": "NONE"
+               },
+               {
+                       "from": "pserver",
+                       "to": "p-interface",
+                       "label": "hasPinterface",
+                       "direction": "OUT",
+                       "multiplicity": "Many2Many",
+                       "contains-other-v": "${direction}",
+                       "delete-other-v": "NONE",
+                       "SVC-INFRA": "${direction}",
+                       "prevent-delete": "NONE"
+               },
+               {
+                       "from": "pserver",
+                       "to": "zone",
+                       "label": "isMemberOf",
+                       "direction": "OUT",
+                       "multiplicity": "Many2One",
+                       "contains-other-v": "NONE",
+                       "delete-other-v": "NONE",
+                       "SVC-INFRA": "NONE",
+                       "prevent-delete": "NONE"
+               },
+               {
+                       "from": "pnf",
+                       "to": "p-interface",
+                       "label": "hasPinterface",
+                       "direction": "OUT",
+                       "multiplicity": "Many2Many",
+                       "contains-other-v": "${direction}",
+                       "delete-other-v": "NONE",
+                       "SVC-INFRA": "${direction}",
+                       "prevent-delete": "NONE"
+               },
+               {
+                       "from": "pnf",
+                       "to": "lag-interface",
+                       "label": "has",
+                       "direction": "OUT",
+                       "multiplicity": "One2Many",
+                       "contains-other-v": "${direction}",
+                       "delete-other-v": "NONE",
+                       "SVC-INFRA": "${direction}",
+                       "prevent-delete": "NONE"
+               },
+               {
+                       "from": "pnf",
+                       "to": "complex",
+                       "label": "locatedIn",
+                       "direction": "OUT",
+                       "multiplicity": "Many2One",
+                       "contains-other-v": "NONE",
+                       "delete-other-v": "NONE",
+                       "SVC-INFRA": "NONE",
+                       "prevent-delete": "!${direction}"
+               },
+               {
+                       "from": "pnf",
+                       "to": "instance-group",
+                       "label": "isMemberOf",
+                       "direction": "OUT",
+                       "multiplicity": "Many2Many",
+                       "contains-other-v": "NONE",
+                       "delete-other-v": "NONE",
+                       "SVC-INFRA": "NONE",
+                       "prevent-delete": "NONE"
+               },
+               {
+                       "from": "pnf",
+                       "to": "zone",
+                       "label": "isMemberOf",
+                       "direction": "OUT",
+                       "multiplicity": "Many2One",
+                       "contains-other-v": "NONE",
+                       "delete-other-v": "NONE",
+                       "SVC-INFRA": "NONE",
+                       "prevent-delete": "NONE"
+               },
+               {
+                       "from": "service-instance",
+                       "to": "zone",
+                       "label": "locatedIn",
+                       "direction": "OUT",
+                       "multiplicity": "Many2One",
+                       "contains-other-v": "NONE",
+                       "delete-other-v": "NONE",
+                       "SVC-INFRA": "${direction}",
+                       "prevent-delete": "NONE"
+               },
+               {
+                       "from": "service-instance",
+                       "to": "cvlan-tag",
+                       "label": "hasIPAGFacingVLAN",
+                       "direction": "OUT",
+                       "multiplicity": "Many2Many",
+                       "contains-other-v": "NONE",
+                       "delete-other-v": "NONE",
+                       "SVC-INFRA": "NONE",
+                       "prevent-delete": "NONE"
+               },
+               {
+                       "from": "service-instance",
+                       "to": "pnf",
+                       "label": "uses",
+                       "direction": "OUT",
+                       "multiplicity": "One2Many",
+                       "contains-other-v": "NONE",
+                       "delete-other-v": "NONE",
+                       "SVC-INFRA": "NONE",
+                       "prevent-delete": "NONE"
+               },
+               {
+                       "from": "service-subscription",
+                       "to": "service-instance",
+                       "label": "hasInstance",
+                       "direction": "OUT",
+                       "multiplicity": "Many2Many",
+                       "contains-other-v": "${direction}",
+                       "delete-other-v": "NONE",
+                       "SVC-INFRA": "!${direction}",
+                       "prevent-delete": "NONE"
+               },
+               {
+                       "from": "site-pair-set",
+                       "to": "routing-instance",
+                       "label": "hasRoutingInstance",
+                       "direction": "OUT",
+                       "multiplicity": "Many2Many",
+                       "contains-other-v": "${direction}",
+                       "delete-other-v": "NONE",
+                       "SVC-INFRA": "NONE",
+                       "prevent-delete": "NONE"
+               },
+               {
+                       "from": "routing-instance",
+                       "to": "site-pair",
+                       "label": "hasSitePair",
+                       "direction": "OUT",
+                       "multiplicity": "Many2Many",
+                       "contains-other-v": "${direction}",
+                       "delete-other-v": "NONE",
+                       "SVC-INFRA": "NONE",
+                       "prevent-delete": "NONE"
+               },
+               {
+                       "from": "site-pair",
+                       "to": "class-of-service",
+                       "label": "hasClassOfService",
+                       "direction": "OUT",
+                       "multiplicity": "Many2Many",
+                       "contains-other-v": "${direction}",
+                       "delete-other-v": "NONE",
+                       "SVC-INFRA": "NONE",
+                       "prevent-delete": "NONE"
+               },
+               {
+                       "from": "tenant",
+                       "to": "l3-network",
+                       "label": "usesL3Network",
+                       "direction": "OUT",
+                       "multiplicity": "Many2Many",
+                       "contains-other-v": "NONE",
+                       "delete-other-v": "NONE",
+                       "SVC-INFRA": "NONE",
+                       "prevent-delete": "NONE"
+               },
+               {
+                       "from": "tenant",
+                       "to": "service-subscription",
+                       "label": "relatedTo",
+                       "direction": "OUT",
+                       "multiplicity": "Many2Many",
+                       "contains-other-v": "NONE",
+                       "delete-other-v": "NONE",
+                       "SVC-INFRA": "NONE",
+                       "prevent-delete": "NONE"
+               },
+               {
+                       "from": "tenant",
+                       "to": "vserver",
+                       "label": "owns",
+                       "direction": "OUT",
+                       "multiplicity": "One2Many",
+                       "contains-other-v": "${direction}",
+                       "delete-other-v": "NONE",
+                       "SVC-INFRA": "!${direction}",
+                       "prevent-delete": "${direction}"
+               },
+               {
+                       "from": "vce",
+                       "to": "availability-zone",
+                       "label": "hasAvailabilityZone",
+                       "direction": "OUT",
+                       "multiplicity": "Many2Many",
+                       "contains-other-v": "NONE",
+                       "delete-other-v": "NONE",
+                       "SVC-INFRA": "NONE",
+                       "prevent-delete": "!${direction}"
+               },
+               {
+                       "from": "vce",
+                       "to": "complex",
+                       "label": "locatedIn",
+                       "direction": "OUT",
+                       "multiplicity": "Many2Many",
+                       "contains-other-v": "NONE",
+                       "delete-other-v": "NONE",
+                       "SVC-INFRA": "${direction}",
+                       "prevent-delete": "!${direction}"
+               },
+               {
+                       "from": "vce",
+                       "to": "port-group",
+                       "label": "hasPortGroup",
+                       "direction": "OUT",
+                       "multiplicity": "Many2Many",
+                       "contains-other-v": "${direction}",
+                       "delete-other-v": "NONE",
+                       "SVC-INFRA": "${direction}",
+                       "prevent-delete": "NONE"
+               },
+               {
+                       "from": "vce",
+                       "to": "vserver",
+                       "label": "runsOnVserver",
+                       "direction": "OUT",
+                       "multiplicity": "Many2Many",
+                       "contains-other-v": "NONE",
+                       "delete-other-v": "NONE",
+                       "SVC-INFRA": "${direction}",
+                       "prevent-delete": "NONE"
+               },
+               {
+                       "from": "vce",
+                       "to": "service-instance",
+                       "label": "hasServiceInstance",
+                       "direction": "OUT",
+                       "multiplicity": "Many2Many",
+                       "contains-other-v": "NONE",
+                       "delete-other-v": "NONE",
+                       "SVC-INFRA": "!${direction}",
+                       "prevent-delete": "NONE"
+               },
+               {
+                       "from": "virtual-data-center",
+                       "to": "generic-vnf",
+                       "label": "hasVNF",
+                       "direction": "OUT",
+                       "multiplicity": "Many2Many",
+                       "contains-other-v": "NONE",
+                       "delete-other-v": "NONE",
+                       "SVC-INFRA": "!${direction}",
+                       "prevent-delete": "NONE"
+               },
+               {
+                       "from": "vlan",
+                       "to": "l3-interface-ipv4-address-list",
+                       "label": "hasIpAddress",
+                       "direction": "OUT",
+                       "multiplicity": "Many2Many",
+                       "contains-other-v": "${direction}",
+                       "delete-other-v": "NONE",
+                       "SVC-INFRA": "${direction}",
+                       "prevent-delete": "NONE"
+               },
+               {
+                       "from": "vlan",
+                       "to": "l3-interface-ipv6-address-list",
+                       "label": "hasIpAddress",
+                       "direction": "OUT",
+                       "multiplicity": "Many2Many",
+                       "contains-other-v": "${direction}",
+                       "delete-other-v": "NONE",
+                       "SVC-INFRA": "${direction}",
+                       "prevent-delete": "NONE"
+               },
+               {
+                       "from": "vpls-pe",
+                       "to": "complex",
+                       "label": "locatedIn",
+                       "direction": "OUT",
+                       "multiplicity": "Many2Many",
+                       "contains-other-v": "NONE",
+                       "delete-other-v": "NONE",
+                       "SVC-INFRA": "NONE",
+                       "prevent-delete": "!${direction}"
+               },
+               {
+                       "from": "vpls-pe",
+                       "to": "ctag-pool",
+                       "label": "usesCtagPool",
+                       "direction": "OUT",
+                       "multiplicity": "Many2Many",
+                       "contains-other-v": "NONE",
+                       "delete-other-v": "NONE",
+                       "SVC-INFRA": "NONE",
+                       "prevent-delete": "NONE"
+               },
+               {
+                       "from": "vpls-pe",
+                       "to": "p-interface",
+                       "label": "hasPinterface",
+                       "direction": "OUT",
+                       "multiplicity": "Many2Many",
+                       "contains-other-v": "${direction}",
+                       "delete-other-v": "NONE",
+                       "SVC-INFRA": "NONE",
+                       "prevent-delete": "NONE"
+               },
+               {
+                       "from": "vpls-pe",
+                       "to": "lag-interface",
+                       "label": "hasLAGinterface",
+                       "direction": "OUT",
+                       "multiplicity": "Many2Many",
+                       "contains-other-v": "${direction}",
+                       "delete-other-v": "NONE",
+                       "SVC-INFRA": "NONE",
+                       "prevent-delete": "NONE"
+               },
+               {
+                       "from": "vserver",
+                       "to": "flavor",
+                       "label": "hasFlavor",
+                       "direction": "OUT",
+                       "multiplicity": "Many2One",
+                       "contains-other-v": "NONE",
+                       "delete-other-v": "NONE",
+                       "SVC-INFRA": "${direction}",
+                       "prevent-delete": "!${direction}"
+               },
+               {
+                       "from": "vserver",
+                       "to": "image",
+                       "label": "hasImage",
+                       "direction": "OUT",
+                       "multiplicity": "Many2One",
+                       "contains-other-v": "NONE",
+                       "delete-other-v": "NONE",
+                       "SVC-INFRA": "${direction}",
+                       "prevent-delete": "!${direction}"
+               },
+               {
+                       "from": "vserver",
+                       "to": "l-interface",
+                       "label": "hasLInterface",
+                       "direction": "OUT",
+                       "multiplicity": "Many2Many",
+                       "contains-other-v": "${direction}",
+                       "delete-other-v": "NONE",
+                       "SVC-INFRA": "${direction}",
+                       "prevent-delete": "NONE"
+               },
+               {
+                       "from": "vserver",
+                       "to": "pserver",
+                       "label": "runsOnPserver",
+                       "direction": "OUT",
+                       "multiplicity": "Many2One",
+                       "contains-other-v": "NONE",
+                       "delete-other-v": "NONE",
+                       "SVC-INFRA": "${direction}",
+                       "prevent-delete": "!${direction}"
+               },
+               {
+                       "from": "vserver",
+                       "to": "volume",
+                       "label": "hasVolume",
+                       "direction": "OUT",
+                       "multiplicity": "Many2Many",
+                       "contains-other-v": "${direction}",
+                       "delete-other-v": "NONE",
+                       "SVC-INFRA": "${direction}",
+                       "prevent-delete": "NONE"
+               },
+               {
+                       "from": "vserver",
+                       "to": "vnfc",
+                       "label": "hosts",
+                       "direction": "OUT",
+                       "multiplicity": "Many2Many",
+                       "contains-other-v": "NONE",
+                       "delete-other-v": "NONE",
+                       "SVC-INFRA": "${direction}",
+                       "prevent-delete": "NONE"
+               },
+               {
+                       "from": "vserver",
+                       "to": "snapshot",
+                       "label": "uses",
+                       "direction": "OUT",
+                       "multiplicity": "One2One",
+                       "contains-other-v": "NONE",
+                       "delete-other-v": "NONE",
+                       "SVC-INFRA": "${direction}",
+                       "prevent-delete": "NONE"
+               },
+               {
+                       "from": "service-instance",
+                       "to": "connector",
+                       "label": "uses",
+                       "direction": "OUT",
+                       "multiplicity": "Many2Many",
+                       "contains-other-v": "NONE",
+                       "delete-other-v": "NONE",
+                       "SVC-INFRA": "NONE",
+                       "prevent-delete": "NONE"
+               },
+               {
+                       "from": "service-instance",
+                       "to": "metadatum",
+                       "label": "hasMetaData",
+                       "direction": "OUT",
+                       "multiplicity": "Many2Many",
+                       "contains-other-v": "${direction}",
+                       "delete-other-v": "NONE",
+                       "SVC-INFRA": "NONE",
+                       "prevent-delete": "NONE"
+               },
+               {
+                       "from": "service-instance",
+                       "to": "logical-link",
+                       "label": "uses",
+                       "direction": "OUT",
+                       "multiplicity": "Many2Many",
+                       "contains-other-v": "NONE",
+                       "delete-other-v": "${direction}",
+                       "SVC-INFRA": "NONE",
+                       "prevent-delete": "NONE"
+               },
+               {
+                       "from": "service-instance",
+                       "to": "vlan",
+                       "label": "dependsOn",
+                       "direction": "OUT",
+                       "multiplicity": "One2Many",
+                       "contains-other-v": "NONE",
+                       "delete-other-v": "NONE",
+                       "SVC-INFRA": "NONE",
+                       "prevent-delete": "NONE"
+               },
+               {
+                       "from": "service-instance",
+                       "to": "service-instance",
+                       "label": "dependsOn",
+                       "direction": "OUT",
+                       "multiplicity": "One2Many",
+                       "contains-other-v": "NONE",
+                       "delete-other-v": "NONE",
+                       "SVC-INFRA": "NONE",
+                       "prevent-delete": "NONE"
+               },
+               {
+                       "from": "connector",
+                       "to": "virtual-data-center",
+                       "label": "contains",
+                       "direction": "OUT",
+                       "multiplicity": "Many2Many",
+                       "contains-other-v": "NONE",
+                       "delete-other-v": "NONE",
+                       "SVC-INFRA": "NONE",
+                       "prevent-delete": "NONE"
+               },
+               {
+                       "from": "connector",
+                       "to": "metadatum",
+                       "label": "hasMetaData",
+                       "direction": "OUT",
+                       "multiplicity": "Many2Many",
+                       "contains-other-v": "${direction}",
+                       "delete-other-v": "NONE",
+                       "SVC-INFRA": "NONE",
+                       "prevent-delete": "NONE"
+               },
+               {
+                       "from": "virtual-data-center",
+                       "to": "logical-link",
+                       "label": "contains",
+                       "direction": "OUT",
+                       "multiplicity": "Many2Many",
+                       "contains-other-v": "NONE",
+                       "delete-other-v": "NONE",
+                       "SVC-INFRA": "NONE",
+                       "prevent-delete": "NONE"
+               },
+               {
+                       "from": "logical-link",
+                       "to": "generic-vnf",
+                       "label": "bridgedTo",
+                       "direction": "OUT",
+                       "multiplicity": "Many2Many",
+                       "contains-other-v": "NONE",
+                       "delete-other-v": "NONE",
+                       "SVC-INFRA": "NONE",
+                       "prevent-delete": "NONE"
+               },
+               {
+                       "from": "logical-link",
+                       "to": "pserver",
+                       "label": "bridgedTo",
+                       "direction": "OUT",
+                       "multiplicity": "Many2Many",
+                       "contains-other-v": "NONE",
+                       "delete-other-v": "NONE",
+                       "SVC-INFRA": "NONE",
+                       "prevent-delete": "!${direction}"
+               },
+               {
+                       "from": "vlan",
+                       "to": "multicast-configuration",
+                       "label": "uses",
+                       "direction": "OUT",
+                       "multiplicity": "Many2Many",
+                       "contains-other-v": "NONE",
+                       "delete-other-v": "NONE",
+                       "SVC-INFRA": "NONE",
+                       "prevent-delete": "NONE"
+               },
+               {
+                       "from": "volume-group",
+                       "to": "complex",
+                       "label": "existsIn",
+                       "direction": "OUT",
+                       "multiplicity": "Many2Many",
+                       "contains-other-v": "NONE",
+                       "delete-other-v": "NONE",
+                       "SVC-INFRA": "${direction}",
+                       "prevent-delete": "!${direction}"
+               },
+               {
+                       "from": "volume-group",
+                       "to": "tenant",
+                       "label": "belongsTo",
+                       "direction": "OUT",
+                       "multiplicity": "Many2Many",
+                       "contains-other-v": "NONE",
+                       "delete-other-v": "NONE",
+                       "SVC-INFRA": "${direction}",
+                       "prevent-delete": "NONE"
+               },
+               {
+                       "from": "ipsec-configuration",
+                       "to": "vig-server",
+                       "label": "hasVigServer",
+                       "direction": "OUT",
+                       "multiplicity": "One2Many",
+                       "contains-other-v": "${direction}",
+                       "delete-other-v": "NONE",
+                       "SVC-INFRA": "NONE",
+                       "prevent-delete": "NONE"
+               },
+               {
+                       "from": "generic-vnf",
+                       "to": "ipsec-configuration",
+                       "label": "uses",
+                       "direction": "OUT",
+                       "multiplicity": "Many2One",
+                       "contains-other-v": "NONE",
+                       "delete-other-v": "NONE",
+                       "SVC-INFRA": "NONE",
+                       "prevent-delete": "NONE"
+               },
+               {
+                       "from": "vf-module",
+                       "to": "volume-group",
+                       "label": "uses",
+                       "direction": "OUT",
+                       "multiplicity": "One2One",
+                       "contains-other-v": "NONE",
+                       "delete-other-v": "NONE",
+                       "SVC-INFRA": "${direction}",
+                       "prevent-delete": "NONE"
+               },
+               {
+                       "from": "vserver",
+                       "to": "vf-module",
+                       "label": "isPartOf",
+                       "direction": "OUT",
+                       "multiplicity": "Many2One",
+                       "contains-other-v": "NONE",
+                       "delete-other-v": "NONE",
+                       "SVC-INFRA": "${direction}",
+                       "prevent-delete": "NONE"
+               },
+               {
+                       "from": "vf-module",
+                       "to": "l3-network",
+                       "label": "uses",
+                       "direction": "OUT",
+                       "multiplicity": "Many2Many",
+                       "contains-other-v": "NONE",
+                       "delete-other-v": "NONE",
+                       "SVC-INFRA": "${direction}",
+                       "prevent-delete": "NONE"
+               },
+               {
+                       "from": "vf-module",
+                       "to": "vnfc",
+                       "label": "uses",
+                       "direction": "OUT",
+                       "multiplicity": "One2Many",
+                       "contains-other-v": "NONE",
+                       "delete-other-v": "${direction}",
+                       "SVC-INFRA": "${direction}",
+                       "prevent-delete": "${direction}"
+               },
+               {
+                       "from": "generic-vnf",
+                       "to": "vf-module",
+                       "label": "has",
+                       "direction": "OUT",
+                       "multiplicity": "One2Many",
+                       "contains-other-v": "${direction}",
+                       "delete-other-v": "NONE",
+                       "SVC-INFRA": "${direction}",
+                       "prevent-delete": "NONE"
+               },
+               {
+                       "from": "generic-vnf",
+                       "to": "volume-group",
+                       "label": "uses",
+                       "direction": "OUT",
+                       "multiplicity": "One2Many",
+                       "contains-other-v": "NONE",
+                       "delete-other-v": "NONE",
+                       "SVC-INFRA": "${direction}",
+                       "prevent-delete": "NONE"
+               },
+               {
+                       "from": "generic-vnf",
+                       "to": "vnfc",
+                       "label": "uses",
+                       "direction": "OUT",
+                       "multiplicity": "One2Many",
+                       "contains-other-v": "NONE",
+                       "delete-other-v": "${direction}",
+                       "SVC-INFRA": "${direction}",
+                       "prevent-delete": "NONE"
+               },
+               {
+                       "from": "vlan",
+                       "to": "logical-link",
+                       "label": "usesLogicalLink",
+                       "direction": "OUT",
+                       "multiplicity": "Many2Many",
+                       "contains-other-v": "NONE",
+                       "delete-other-v": "${direction}",
+                       "SVC-INFRA": "${direction}",
+                       "prevent-delete": "NONE"
+               },
+               {
+                       "from": "vpn-binding",
+                       "to": "route-target",
+                       "label": "has",
+                       "direction": "OUT",
+                       "multiplicity": "One2Many",
+                       "contains-other-v": "${direction}",
+                       "delete-other-v": "NONE",
+                       "SVC-INFRA": "NONE",
+                       "prevent-delete": "NONE"
+               },
+               {
+                       "from": "service-instance",
+                       "to": "ctag-assignment",
+                       "label": "uses",
+                       "direction": "OUT",
+                       "multiplicity": "One2Many",
+                       "contains-other-v": "NONE",
+                       "delete-other-v": "NONE",
+                       "SVC-INFRA": "NONE",
+                       "prevent-delete": "NONE"
+               },
+               {
+                       "from": "allotted-resource",
+                       "to": "generic-vnf",
+                       "label": "isPartOf",
+                       "direction": "OUT",
+                       "multiplicity": "Many2Many",
+                       "contains-other-v": "NONE",
+                       "delete-other-v": "NONE",
+                       "SVC-INFRA": "NONE",
+                       "prevent-delete": "NONE"
+               },
+               {
+                       "from": "allotted-resource",
+                       "to": "l3-network",
+                       "label": "isPartOf",
+                       "direction": "OUT",
+                       "multiplicity": "Many2Many",
+                       "contains-other-v": "NONE",
+                       "delete-other-v": "NONE",
+                       "SVC-INFRA": "NONE",
+                       "prevent-delete": "NONE"
+               },
+               {
+                       "from": "allotted-resource",
+                       "to": "instance-group",
+                       "label": "isMemberOf",
+                       "direction": "OUT",
+                       "multiplicity": "Many2Many",
+                       "contains-other-v": "NONE",
+                       "delete-other-v": "NONE",
+                       "SVC-INFRA": "NONE",
+                       "prevent-delete": "NONE"
+               },
+               {
+                       "from": "allotted-resource",
+                       "to": "network-policy",
+                       "label": "uses",
+                       "direction": "OUT",
+                       "multiplicity": "One2One",
+                       "contains-other-v": "NONE",
+                       "delete-other-v": "NONE",
+                       "SVC-INFRA": "NONE",
+                       "prevent-delete": "NONE"
+               },
+               {
+                       "from": "allotted-resource",
+                       "to": "vlan",
+                       "label": "isPartOf",
+                       "direction": "OUT",
+                       "multiplicity": "Many2Many",
+                       "contains-other-v": "NONE",
+                       "delete-other-v": "NONE",
+                       "SVC-INFRA": "NONE",
+                       "prevent-delete": "NONE"
+               },
+               {
+                       "from": "allotted-resource",
+                       "to": "l-interface",
+                       "label": "uses",
+                       "direction": "OUT",
+                       "multiplicity": "One2Many",
+                       "contains-other-v": "NONE",
+                       "delete-other-v": "NONE",
+                       "SVC-INFRA": "NONE",
+                       "prevent-delete": "NONE"
+               },
+               {
+                       "from": "generic-vnf",
+                       "to": "instance-group",
+                       "label": "isMemberOf",
+                       "direction": "OUT",
+                       "multiplicity": "Many2Many",
+                       "contains-other-v": "NONE",
+                       "delete-other-v": "NONE",
+                       "SVC-INFRA": "NONE",
+                       "prevent-delete": "NONE"
+               },
+               {
+                       "from": "service-instance",
+                       "to": "instance-group",
+                       "label": "isMemberOf",
+                       "direction": "OUT",
+                       "multiplicity": "Many2Many",
+                       "contains-other-v": "NONE",
+                       "delete-other-v": "NONE",
+                       "SVC-INFRA": "NONE",
+                       "prevent-delete": "NONE"
+               },
+               {
+                       "from": "allotted-resource",
+                       "to": "tunnel-xconnect",
+                       "label": "has",
+                       "direction": "OUT",
+                       "multiplicity": "One2One",
+                       "contains-other-v": "${direction}",
+                       "delete-other-v": "NONE",
+                       "SVC-INFRA": "NONE",
+                       "prevent-delete": "NONE"
+               },
+               {
+                       "from": "logical-link",
+                       "to": "cloud-region",
+                       "label": "existsIn",
+                       "direction": "OUT",
+                       "multiplicity": "Many2Many",
+                       "contains-other-v": "NONE",
+                       "delete-other-v": "NONE",
+                       "SVC-INFRA": "NONE",
+                       "prevent-delete": "NONE"
+               },
+               {
+                       "from": "logical-link",
+                       "to": "vpn-binding",
+                       "label": "uses",
+                       "direction": "OUT",
+                       "multiplicity": "Many2Many",
+                       "contains-other-v": "NONE",
+                       "delete-other-v": "NONE",
+                       "SVC-INFRA": "NONE",
+                       "prevent-delete": "!${direction}"
+               },
+               {
+                       "from": "generic-vnf",
+                       "to": "entitlement",
+                       "label": "has",
+                       "direction": "OUT",
+                       "multiplicity": "One2Many",
+                       "contains-other-v": "${direction}",
+                       "delete-other-v": "NONE",
+                       "SVC-INFRA": "NONE",
+                       "prevent-delete": "NONE"
+               },
+               {
+                       "from": "generic-vnf",
+                       "to": "license",
+                       "label": "has",
+                       "direction": "OUT",
+                       "multiplicity": "One2Many",
+                       "contains-other-v": "${direction}",
+                       "delete-other-v": "NONE",
+                       "SVC-INFRA": "NONE",
+                       "prevent-delete": "NONE"
+               },
+               {
+                       "from": "vce",
+                       "to": "entitlement",
+                       "label": "has",
+                       "direction": "OUT",
+                       "multiplicity": "One2Many",
+                       "contains-other-v": "${direction}",
+                       "delete-other-v": "NONE",
+                       "SVC-INFRA": "NONE",
+                       "prevent-delete": "NONE"
+               },
+               {
+                       "from": "vce",
+                       "to": "license",
+                       "label": "has",
+                       "direction": "OUT",
+                       "multiplicity": "One2Many",
+                       "contains-other-v": "${direction}",
+                       "delete-other-v": "NONE",
+                       "SVC-INFRA": "NONE",
+                       "prevent-delete": "NONE"
+               },
+               {
+                       "from": "zone",
+                       "to": "complex",
+                       "label": "existsIn",
+                       "direction": "OUT",
+                       "multiplicity": "Many2One",
+                       "contains-other-v": "NONE",
+                       "delete-other-v": "NONE",
+                       "SVC-INFRA": "NONE",
+                       "prevent-delete": "!${direction}"
+               },
+               {
+                       "from": "service-instance",
+                       "to": "allotted-resource",
+                       "label": "has",
+                       "direction": "OUT",
+                       "multiplicity": "Many2Many",
+                       "contains-other-v": "${direction}",
+                       "delete-other-v": "NONE",
+                       "SVC-INFRA": "NONE",
+                       "prevent-delete": "NONE"
+               },
+               {
+                       "from": "service-instance",
+                       "to": "allotted-resource",
+                       "label": "uses",
+                       "direction": "OUT",
+                       "multiplicity": "Many2Many",
+                       "contains-other-v": "NONE",
+                       "delete-other-v": "NONE",
+                       "SVC-INFRA": "NONE",
+                       "prevent-delete": "NONE"
+               },
+               {
+                       "from": "allotted-resource",
+                       "to": "vpn-binding",
+                       "label": "belongsTo",
+                       "direction": "OUT",
+                       "multiplicity": "Many2Many",
+                       "contains-other-v": "NONE",
+                       "delete-other-v": "NONE",
+                       "SVC-INFRA": "NONE",
+                       "prevent-delete": "!${direction}"
+               },
+               {
+                       "from": "allotted-resource",
+                       "to": "allotted-resource",
+                       "label": "bindsTo",
+                       "direction": "OUT",
+                       "multiplicity": "One2One",
+                       "contains-other-v": "NONE",
+                       "delete-other-v": "NONE",
+                       "SVC-INFRA": "NONE",
+                       "prevent-delete": "NONE"
+               },
+               {
+                       "from": "generic-vnf",
+                       "to": "complex",
+                       "label": "locatedIn",
+                       "direction": "OUT",
+                       "multiplicity": "Many2Many",
+                       "contains-other-v": "NONE",
+                       "delete-other-v": "NONE",
+                       "SVC-INFRA": "NONE",
+                       "prevent-delete": "!${direction}"
+               },
+               {
+                       "from": "generic-vnf",
+                       "to": "ctag-pool",
+                       "label": "usesCtagPool",
+                       "direction": "OUT",
+                       "multiplicity": "Many2Many",
+                       "contains-other-v": "NONE",
+                       "delete-other-v": "NONE",
+                       "SVC-INFRA": "NONE",
+                       "prevent-delete": "NONE"
+               },
+               {
+                       "from": "p-interface",
+                       "to": "sriov-pf",
+                       "label": "has",
+                       "direction": "OUT",
+                       "multiplicity": "One2One",
+                       "contains-other-v": "${direction}",
+                       "delete-other-v": "NONE",
+                       "SVC-INFRA": "NONE",
+                       "prevent-delete": "NONE"
+               },
+               {
+                       "from": "sriov-vf",
+                       "to": "sriov-pf",
+                       "label": "uses",
+                       "direction": "OUT",
+                       "multiplicity": "Many2One",
+                       "contains-other-v": "NONE",
+                       "delete-other-v": "NONE",
+                       "SVC-INFRA": "NONE",
+                       "prevent-delete": "NONE"
+               }
+       ]
 }
-]
-}
\ No newline at end of file
index 75f8629..d8f33b3 100644 (file)
@@ -6,7 +6,7 @@
                        "label": "groupsResourcesIn",
                        "direction": "OUT",
                        "multiplicity": "Many2Many",
-                       "contains": "NONE",
+                       "contains-other-v": "NONE",
                        "delete-other-v": "NONE",
                        "SVC-INFRA": "NONE",
                        "prevent-delete": "!${direction}"
@@ -17,7 +17,7 @@
                        "label": "uses",
                        "direction": "OUT",
                        "multiplicity": "Many2Many",
-                       "contains": "NONE",
+                       "contains-other-v": "NONE",
                        "delete-other-v": "NONE",
                        "SVC-INFRA": "NONE",
                        "prevent-delete": "!${direction}"
@@ -28,7 +28,7 @@
                        "label": "supportsServiceCapability",
                        "direction": "OUT",
                        "multiplicity": "Many2Many",
-                       "contains": "NONE",
+                       "contains-other-v": "NONE",
                        "delete-other-v": "NONE",
                        "SVC-INFRA": "NONE",
                        "prevent-delete": "!${direction}"
@@ -39,7 +39,7 @@
                        "label": "locatedIn",
                        "direction": "OUT",
                        "multiplicity": "Many2One",
-                       "contains": "NONE",
+                       "contains-other-v": "NONE",
                        "delete-other-v": "NONE",
                        "SVC-INFRA": "NONE",
                        "prevent-delete": "!${direction}"
@@ -50,7 +50,7 @@
                        "label": "uses",
                        "direction": "OUT",
                        "multiplicity": "Many2Many",
-                       "contains": "NONE",
+                       "contains-other-v": "NONE",
                        "delete-other-v": "NONE",
                        "SVC-INFRA": "NONE",
                        "prevent-delete": "NONE"
@@ -61,7 +61,7 @@
                        "label": "has",
                        "direction": "OUT",
                        "multiplicity": "One2Many",
-                       "contains": "${direction}",
+                       "contains-other-v": "${direction}",
                        "delete-other-v": "NONE",
                        "SVC-INFRA": "!${direction}",
                        "prevent-delete": "${direction}"
@@ -72,7 +72,7 @@
                        "label": "has",
                        "direction": "OUT",
                        "multiplicity": "One2Many",
-                       "contains": "${direction}",
+                       "contains-other-v": "${direction}",
                        "delete-other-v": "NONE",
                        "SVC-INFRA": "NONE",
                        "prevent-delete": "${direction}"
@@ -83,7 +83,7 @@
                        "label": "has",
                        "direction": "OUT",
                        "multiplicity": "One2Many",
-                       "contains": "${direction}",
+                       "contains-other-v": "${direction}",
                        "delete-other-v": "NONE",
                        "SVC-INFRA": "NONE",
                        "prevent-delete": "${direction}"
@@ -94,7 +94,7 @@
                        "label": "has",
                        "direction": "OUT",
                        "multiplicity": "One2Many",
-                       "contains": "${direction}",
+                       "contains-other-v": "${direction}",
                        "delete-other-v": "NONE",
                        "SVC-INFRA": "NONE",
                        "prevent-delete": "${direction}"
                        "label": "has",
                        "direction": "OUT",
                        "multiplicity": "One2Many",
-                       "contains": "${direction}",
+                       "contains-other-v": "${direction}",
                        "delete-other-v": "NONE",
                        "SVC-INFRA": "NONE",
                        "prevent-delete": "${direction}"
                        "label": "has",
                        "direction": "OUT",
                        "multiplicity": "One2Many",
-                       "contains": "${direction}",
+                       "contains-other-v": "${direction}",
                        "delete-other-v": "NONE",
                        "SVC-INFRA": "NONE",
                        "prevent-delete": "${direction}"
                        "label": "has",
                        "direction": "OUT",
                        "multiplicity": "One2Many",
-                       "contains": "${direction}",
-                       "uses-resource": "${direction}",
+                       "contains-other-v": "${direction}",
                        "delete-other-v": "NONE",
                        "SVC-INFRA": "NONE",
                        "prevent-delete": "${direction}"
                        "label": "has",
                        "direction": "OUT",
                        "multiplicity": "One2Many",
-                       "contains": "${direction}",
+                       "contains-other-v": "${direction}",
                        "delete-other-v": "NONE",
                        "SVC-INFRA": "NONE",
                        "prevent-delete": "${direction}"
                        "label": "has",
                        "direction": "OUT",
                        "multiplicity": "One2Many",
-                       "contains": "${direction}",
+                       "contains-other-v": "${direction}",
                        "delete-other-v": "NONE",
                        "SVC-INFRA": "NONE",
                        "prevent-delete": "${direction}"
                        "label": "hasCtagPool",
                        "direction": "OUT",
                        "multiplicity": "Many2Many",
-                       "contains": "${direction}",
+                       "contains-other-v": "${direction}",
                        "delete-other-v": "NONE",
                        "SVC-INFRA": "NONE",
                        "prevent-delete": "NONE"
                        "label": "usesL3Network",
                        "direction": "OUT",
                        "multiplicity": "Many2Many",
-                       "contains": "NONE",
+                       "contains-other-v": "NONE",
                        "delete-other-v": "NONE",
                        "SVC-INFRA": "${direction}",
                        "prevent-delete": "NONE"
                        "label": "supportsAvailabilityZone",
                        "direction": "OUT",
                        "multiplicity": "Many2Many",
-                       "contains": "NONE",
+                       "contains-other-v": "NONE",
                        "delete-other-v": "NONE",
                        "SVC-INFRA": "NONE",
                        "prevent-delete": "!${direction}"
                        "label": "subscribesTo",
                        "direction": "OUT",
                        "multiplicity": "Many2Many",
-                       "contains": "${direction}",
+                       "contains-other-v": "${direction}",
                        "delete-other-v": "NONE",
                        "SVC-INFRA": "!${direction}",
                        "prevent-delete": "NONE"
                        "label": "existsIn",
                        "direction": "OUT",
                        "multiplicity": "Many2Many",
-                       "contains": "NONE",
+                       "contains-other-v": "NONE",
                        "delete-other-v": "NONE",
                        "SVC-INFRA": "NONE",
                        "prevent-delete": "!${direction}"
                        "label": "hasLInterface",
                        "direction": "OUT",
                        "multiplicity": "Many2Many",
-                       "contains": "${direction}",
+                       "contains-other-v": "${direction}",
                        "delete-other-v": "NONE",
                        "SVC-INFRA": "${direction}",
                        "prevent-delete": "NONE"
                        "label": "hasAvailabilityZone",
                        "direction": "OUT",
                        "multiplicity": "Many2Many",
-                       "contains": "NONE",
+                       "contains-other-v": "NONE",
                        "delete-other-v": "NONE",
                        "SVC-INFRA": "${direction}",
                        "prevent-delete": "!${direction}"
                        "label": "hasLAGInterface",
                        "direction": "OUT",
                        "multiplicity": "Many2Many",
-                       "contains": "${direction}",
+                       "contains-other-v": "${direction}",
                        "delete-other-v": "NONE",
                        "SVC-INFRA": "${direction}",
                        "prevent-delete": "NONE"
                        "label": "usesL3Network",
                        "direction": "OUT",
                        "multiplicity": "Many2Many",
-                       "contains": "NONE",
-                       "uses-resource": "${direction}",
+                       "contains-other-v": "NONE",
                        "delete-other-v": "NONE",
                        "SVC-INFRA": "${direction}",
                        "prevent-delete": "NONE"
                        "label": "runsOnPserver",
                        "direction": "OUT",
                        "multiplicity": "Many2Many",
-                       "contains": "NONE",
-                       "uses-resource": "${direction}",
+                       "contains-other-v": "NONE",
                        "delete-other-v": "NONE",
                        "SVC-INFRA": "${direction}",
                        "prevent-delete": "!${direction}"
                        "label": "usesVnfImage",
                        "direction": "OUT",
                        "multiplicity": "Many2One",
-                       "contains": "NONE",
+                       "contains-other-v": "NONE",
                        "delete-other-v": "NONE",
                        "SVC-INFRA": "${direction}",
                        "prevent-delete": "!${direction}"
                        "label": "runsOnVserver",
                        "direction": "OUT",
                        "multiplicity": "One2Many",
-                       "contains": "NONE",
-                       "uses-resource": "${direction}",
+                       "contains-other-v": "NONE",
                        "delete-other-v": "NONE",
                        "SVC-INFRA": "${direction}",
                        "prevent-delete": "NONE"
                        "label": "hasInstance",
                        "direction": "OUT",
                        "multiplicity": "Many2Many",
-                       "contains": "NONE",
-                       "uses-resource": "${direction}",
+                       "contains-other-v": "NONE",
                        "delete-other-v": "NONE",
                        "SVC-INFRA": "${direction}",
                        "prevent-delete": "NONE"
                        "label": "hasSitePairSet",
                        "direction": "OUT",
                        "multiplicity": "Many2Many",
-                       "contains": "NONE",
+                       "contains-other-v": "NONE",
                        "delete-other-v": "NONE",
                        "SVC-INFRA": "NONE",
                        "prevent-delete": "NONE"
                        "label": "hasNetworkProfile",
                        "direction": "OUT",
                        "multiplicity": "Many2Many",
-                       "contains": "NONE",
+                       "contains-other-v": "NONE",
                        "delete-other-v": "NONE",
                        "SVC-INFRA": "NONE",
                        "prevent-delete": "NONE"
                        "label": "has",
                        "direction": "OUT",
                        "multiplicity": "Many2Many",
-                       "contains": "NONE",
+                       "contains-other-v": "NONE",
                        "delete-other-v": "NONE",
                        "SVC-INFRA": "NONE",
                        "prevent-delete": "NONE"
                        "label": "has",
                        "direction": "OUT",
                        "multiplicity": "One2Many",
-                       "contains": "NONE",
+                       "contains-other-v": "NONE",
                        "delete-other-v": "NONE",
                        "SVC-INFRA": "NONE",
                        "prevent-delete": "!${direction}"
                },
-               {
-                       "from": "image",
-                       "to": "metadata",
-                       "label": "hasMetaData",
-                       "direction": "OUT",
-                       "multiplicity": "Many2Many",
-                       "contains": "${direction}",
-                       "delete-other-v": "NONE",
-                       "SVC-INFRA": "NONE",
-                       "prevent-delete": "NONE"
-               },
                {
                        "from": "image",
                        "to": "metadatum",
                        "label": "hasMetaDatum",
                        "direction": "OUT",
                        "multiplicity": "Many2Many",
-                       "contains": "${direction}",
+                       "contains-other-v": "${direction}",
                        "delete-other-v": "NONE",
                        "SVC-INFRA": "NONE",
                        "prevent-delete": "NONE"
                        "label": "hasIpAddress",
                        "direction": "OUT",
                        "multiplicity": "Many2Many",
-                       "contains": "${direction}",
+                       "contains-other-v": "${direction}",
                        "delete-other-v": "NONE",
                        "SVC-INFRA": "${direction}",
                        "prevent-delete": "NONE"
                        "label": "hasIpAddress",
                        "direction": "OUT",
                        "multiplicity": "Many2Many",
-                       "contains": "${direction}",
+                       "contains-other-v": "${direction}",
                        "delete-other-v": "NONE",
                        "SVC-INFRA": "${direction}",
                        "prevent-delete": "NONE"
                        "label": "usesLogicalLink",
                        "direction": "OUT",
                        "multiplicity": "Many2Many",
-                       "contains": "NONE",
+                       "contains-other-v": "NONE",
                        "delete-other-v": "${direction}",
                        "SVC-INFRA": "${direction}",
                        "prevent-delete": "NONE"
                        "label": "hasVlan",
                        "direction": "OUT",
                        "multiplicity": "Many2Many",
-                       "contains": "${direction}",
+                       "contains-other-v": "${direction}",
                        "delete-other-v": "NONE",
                        "SVC-INFRA": "NONE",
                        "prevent-delete": "NONE"
                        "label": "has",
                        "direction": "OUT",
                        "multiplicity": "One2One",
-                       "contains": "${direction}",
+                       "contains-other-v": "${direction}",
                        "delete-other-v": "NONE",
                        "SVC-INFRA": "NONE",
                        "prevent-delete": "NONE"
                        "label": "isMemberOf",
                        "direction": "OUT",
                        "multiplicity": "Many2Many",
-                       "contains": "NONE",
+                       "contains-other-v": "NONE",
                        "delete-other-v": "NONE",
                        "SVC-INFRA": "${direction}",
                        "prevent-delete": "NONE"
                        "label": "isMemberOf",
                        "direction": "OUT",
                        "multiplicity": "Many2Many",
-                       "contains": "NONE",
+                       "contains-other-v": "NONE",
                        "delete-other-v": "NONE",
                        "SVC-INFRA": "${direction}",
                        "prevent-delete": "NONE"
                        "label": "isMemberOf",
                        "direction": "OUT",
                        "multiplicity": "Many2Many",
-                       "contains": "NONE",
+                       "contains-other-v": "NONE",
                        "delete-other-v": "NONE",
                        "SVC-INFRA": "${direction}",
-                       "prevent-delete": "!${direction}"
+                       "prevent-delete": "NONE"
                },
                {
                        "from": "l3-interface-ipv6-address-list",
                        "label": "isMemberOf",
                        "direction": "OUT",
                        "multiplicity": "Many2Many",
-                       "contains": "NONE",
+                       "contains-other-v": "NONE",
                        "delete-other-v": "NONE",
                        "SVC-INFRA": "${direction}",
-                       "prevent-delete": "!${direction}"
+                       "prevent-delete": "NONE"
                },
                {
                        "from": "l3-network",
                        "label": "usesVpnBinding",
                        "direction": "OUT",
                        "multiplicity": "Many2Many",
-                       "contains": "NONE",
+                       "contains-other-v": "NONE",
                        "delete-other-v": "NONE",
                        "SVC-INFRA": "NONE",
                        "prevent-delete": "!${direction}"
                        "label": "hasSubnet",
                        "direction": "OUT",
                        "multiplicity": "Many2Many",
-                       "contains": "${direction}",
+                       "contains-other-v": "${direction}",
                        "delete-other-v": "NONE",
                        "SVC-INFRA": "!${direction}",
                        "prevent-delete": "NONE"
                        "label": "hasInstance",
                        "direction": "OUT",
                        "multiplicity": "Many2Many",
-                       "contains": "NONE",
+                       "contains-other-v": "NONE",
                        "delete-other-v": "NONE",
                        "SVC-INFRA": "!${direction}",
                        "prevent-delete": "NONE"
                        "label": "hasCtagAssignment",
                        "direction": "OUT",
                        "multiplicity": "Many2Many",
-                       "contains": "${direction}",
+                       "contains-other-v": "${direction}",
                        "delete-other-v": "NONE",
                        "SVC-INFRA": "${direction}",
                        "prevent-delete": "NONE"
                        "label": "uses",
                        "direction": "OUT",
                        "multiplicity": "Many2Many",
-                       "contains": "NONE",
+                       "contains-other-v": "NONE",
                        "delete-other-v": "NONE",
                        "SVC-INFRA": "${direction}",
                        "prevent-delete": "NONE"
                        "label": "has",
                        "direction": "OUT",
                        "multiplicity": "One2Many",
-                       "contains": "${direction}",
+                       "contains-other-v": "${direction}",
                        "delete-other-v": "NONE",
                        "SVC-INFRA": "NONE",
                        "prevent-delete": "NONE"
                        "label": "uses",
                        "direction": "OUT",
                        "multiplicity": "Many2Many",
-                       "contains": "NONE",
+                       "contains-other-v": "NONE",
                        "delete-other-v": "NONE",
                        "SVC-INFRA": "NONE",
                        "prevent-delete": "NONE"
                        "label": "usesLAGLink",
                        "direction": "OUT",
                        "multiplicity": "Many2Many",
-                       "contains": "NONE",
-                       "uses-resource": "${direction}",
+                       "contains-other-v": "NONE",
                        "delete-other-v": "${direction}",
                        "SVC-INFRA": "${direction}",
                        "prevent-delete": "NONE"
                        "label": "usesPInterface",
                        "direction": "OUT",
                        "multiplicity": "Many2Many",
-                       "contains": "NONE",
-                       "uses-resource": "${direction}",
+                       "contains-other-v": "NONE",
                        "delete-other-v": "NONE",
                        "SVC-INFRA": "${direction}",
                        "prevent-delete": "NONE"
                        "label": "hasLInterface",
                        "direction": "OUT",
                        "multiplicity": "Many2Many",
-                       "contains": "${direction}",
+                       "contains-other-v": "${direction}",
                        "delete-other-v": "NONE",
                        "SVC-INFRA": "${direction}",
                        "prevent-delete": "NONE"
                        "label": "usesLAGLink",
                        "direction": "OUT",
                        "multiplicity": "Many2Many",
-                       "contains": "NONE",
-                       "uses-resource": "${direction}",
+                       "contains-other-v": "NONE",
                        "delete-other-v": "NONE",
                        "SVC-INFRA": "${direction}",
                        "prevent-delete": "NONE"
                        "label": "bridgedTo",
                        "direction": "OUT",
                        "multiplicity": "Many2Many",
-                       "contains": "NONE",
+                       "contains-other-v": "NONE",
                        "delete-other-v": "NONE",
                        "SVC-INFRA": "NONE",
                        "prevent-delete": "NONE"
                        "label": "uses",
                        "direction": "OUT",
                        "multiplicity": "One2Many",
-                       "contains": "NONE",
+                       "contains-other-v": "NONE",
                        "delete-other-v": "NONE",
                        "SVC-INFRA": "${direction}",
                        "prevent-delete": "NONE"
                        "label": "startsWith",
                        "direction": "OUT",
                        "multiplicity": "One2Many",
-                       "contains": "${direction}",
+                       "contains-other-v": "${direction}",
                        "delete-other-v": "NONE",
                        "SVC-INFRA": "NONE",
                        "prevent-delete": "NONE"
                        "label": "isA",
                        "direction": "OUT",
                        "multiplicity": "Many2One",
-                       "contains": "NONE",
+                       "contains-other-v": "NONE",
                        "delete-other-v": "NONE",
                        "SVC-INFRA": "NONE",
                        "prevent-delete": "!${direction}"
                        "label": "hasMetaData",
                        "direction": "OUT",
                        "multiplicity": "One2Many",
-                       "contains": "${direction}",
+                       "contains-other-v": "${direction}",
                        "delete-other-v": "NONE",
                        "SVC-INFRA": "NONE",
                        "prevent-delete": "NONE"
                        "label": "connectsTo",
                        "direction": "OUT",
                        "multiplicity": "One2Many",
-                       "contains": "${direction}",
+                       "contains-other-v": "${direction}",
                        "delete-other-v": "NONE",
                        "SVC-INFRA": "NONE",
                        "prevent-delete": "NONE"
                        "label": "uses",
                        "direction": "OUT",
                        "multiplicity": "One2Many",
-                       "contains": "${direction}",
+                       "contains-other-v": "${direction}",
                        "delete-other-v": "NONE",
                        "SVC-INFRA": "NONE",
                        "prevent-delete": "NONE"
                        "label": "connectsTo",
                        "direction": "OUT",
                        "multiplicity": "One2Many",
-                       "contains": "${direction}",
+                       "contains-other-v": "${direction}",
                        "delete-other-v": "NONE",
                        "SVC-INFRA": "NONE",
                        "prevent-delete": "NONE"
                        "label": "uses",
                        "direction": "OUT",
                        "multiplicity": "One2Many",
-                       "contains": "${direction}",
+                       "contains-other-v": "${direction}",
                        "delete-other-v": "NONE",
                        "SVC-INFRA": "NONE",
                        "prevent-delete": "NONE"
                        "label": "uses",
                        "direction": "OUT",
                        "multiplicity": "One2Many",
-                       "contains": "${direction}",
+                       "contains-other-v": "${direction}",
                        "delete-other-v": "NONE",
                        "SVC-INFRA": "NONE",
                        "prevent-delete": "NONE"
                        "label": "has",
                        "direction": "OUT",
                        "multiplicity": "One2Many",
-                       "contains": "${direction}",
+                       "contains-other-v": "${direction}",
                        "delete-other-v": "NONE",
                        "SVC-INFRA": "NONE",
                        "prevent-delete": "NONE"
                        "label": "relatedTo",
                        "direction": "OUT",
                        "multiplicity": "One2Many",
-                       "contains": "NONE",
+                       "contains-other-v": "NONE",
                        "delete-other-v": "NONE",
                        "SVC-INFRA": "NONE",
                        "prevent-delete": "!${direction}"
                        "label": "startsWith",
                        "direction": "OUT",
                        "multiplicity": "One2One",
-                       "contains": "${direction}",
+                       "contains-other-v": "${direction}",
                        "delete-other-v": "NONE",
                        "SVC-INFRA": "NONE",
                        "prevent-delete": "NONE"
                        "label": "connectsTo",
                        "direction": "OUT",
                        "multiplicity": "Many2Many",
-                       "contains": "${direction}",
+                       "contains-other-v": "${direction}",
                        "delete-other-v": "NONE",
                        "SVC-INFRA": "NONE",
                        "prevent-delete": "NONE"
                        "label": "isA",
                        "direction": "OUT",
                        "multiplicity": "Many2One",
-                       "contains": "NONE",
+                       "contains-other-v": "NONE",
                        "delete-other-v": "NONE",
                        "SVC-INFRA": "NONE",
                        "prevent-delete": "!${direction}"
                        "label": "uses",
                        "direction": "OUT",
                        "multiplicity": "One2Many",
-                       "contains": "${direction}",
+                       "contains-other-v": "${direction}",
                        "delete-other-v": "NONE",
                        "SVC-INFRA": "NONE",
                        "prevent-delete": "NONE"
                        "label": "uses",
                        "direction": "OUT",
                        "multiplicity": "One2Many",
-                       "contains": "${direction}",
+                       "contains-other-v": "${direction}",
                        "delete-other-v": "NONE",
                        "SVC-INFRA": "NONE",
                        "prevent-delete": "NONE"
                        "label": "hasLInterface",
                        "direction": "OUT",
                        "multiplicity": "Many2Many",
-                       "contains": "${direction}",
+                       "contains-other-v": "${direction}",
                        "delete-other-v": "NONE",
                        "SVC-INFRA": "NONE",
                        "prevent-delete": "NONE"
                        "label": "definedFor",
                        "direction": "OUT",
                        "multiplicity": "Many2Many",
-                       "contains": "NONE",
+                       "contains-other-v": "NONE",
                        "delete-other-v": "NONE",
                        "SVC-INFRA": "NONE",
                        "prevent-delete": "!${direction}"
                        "label": "supportsServiceCapability",
                        "direction": "OUT",
                        "multiplicity": "Many2Many",
-                       "contains": "NONE",
+                       "contains-other-v": "NONE",
                        "delete-other-v": "NONE",
                        "SVC-INFRA": "NONE",
                        "prevent-delete": "!${direction}"
                        "label": "hasLInterface",
                        "direction": "OUT",
                        "multiplicity": "Many2Many",
-                       "contains": "${direction}",
+                       "contains-other-v": "${direction}",
                        "delete-other-v": "NONE",
                        "SVC-INFRA": "${direction}",
                        "prevent-delete": "NONE"
                        "label": "usesPhysicalLink",
                        "direction": "OUT",
                        "multiplicity": "Many2Many",
-                       "contains": "NONE",
+                       "contains-other-v": "NONE",
                        "delete-other-v": "${direction}",
                        "SVC-INFRA": "NONE",
                        "prevent-delete": "NONE"
                        "label": "usesLogicalLink",
                        "direction": "OUT",
                        "multiplicity": "Many2One",
-                       "contains": "NONE",
+                       "contains-other-v": "NONE",
                        "delete-other-v": "NONE",
                        "SVC-INFRA": "${direction}",
                        "prevent-delete": "NONE"
                        "label": "hasCTag",
                        "direction": "OUT",
                        "multiplicity": "Many2Many",
-                       "contains": "${direction}",
-                       "uses-resource": "${direction}",
+                       "contains-other-v": "${direction}",
                        "delete-other-v": "NONE",
                        "SVC-INFRA": "${direction}",
                        "prevent-delete": "NONE"
                        "label": "locatedIn",
                        "direction": "OUT",
                        "multiplicity": "Many2One",
-                       "contains": "NONE",
+                       "contains-other-v": "NONE",
                        "delete-other-v": "NONE",
                        "SVC-INFRA": "${direction}",
                        "prevent-delete": "!${direction}"
                        "label": "locatedIn",
                        "direction": "OUT",
                        "multiplicity": "Many2One",
-                       "contains": "NONE",
+                       "contains-other-v": "NONE",
                        "delete-other-v": "NONE",
                        "SVC-INFRA": "${direction}",
                        "prevent-delete": "NONE"
                        "label": "existsIn",
                        "direction": "OUT",
                        "multiplicity": "Many2One",
-                       "contains": "NONE",
+                       "contains-other-v": "NONE",
                        "delete-other-v": "NONE",
                        "SVC-INFRA": "${direction}",
                        "prevent-delete": "!${direction}"
                        "label": "hasLAGInterface",
                        "direction": "OUT",
                        "multiplicity": "Many2Many",
-                       "contains": "${direction}",
+                       "contains-other-v": "${direction}",
                        "delete-other-v": "NONE",
                        "SVC-INFRA": "${direction}",
                        "prevent-delete": "NONE"
                        "label": "hasPinterface",
                        "direction": "OUT",
                        "multiplicity": "Many2Many",
-                       "contains": "${direction}",
-                       "uses-resource": "${direction}",
+                       "contains-other-v": "${direction}",
                        "delete-other-v": "NONE",
                        "SVC-INFRA": "${direction}",
                        "prevent-delete": "NONE"
                        "label": "hasPinterface",
                        "direction": "OUT",
                        "multiplicity": "Many2Many",
-                       "contains": "${direction}",
-                       "uses-resource": "${direction}",
+                       "contains-other-v": "${direction}",
                        "delete-other-v": "NONE",
                        "SVC-INFRA": "${direction}",
                        "prevent-delete": "NONE"
                        "label": "has",
                        "direction": "OUT",
                        "multiplicity": "One2Many",
-                       "contains": "${direction}",
+                       "contains-other-v": "${direction}",
                        "delete-other-v": "NONE",
                        "SVC-INFRA": "${direction}",
                        "prevent-delete": "NONE"
                        "label": "locatedIn",
                        "direction": "OUT",
                        "multiplicity": "Many2One",
-                       "contains": "NONE",
+                       "contains-other-v": "NONE",
                        "delete-other-v": "NONE",
                        "SVC-INFRA": "NONE",
                        "prevent-delete": "!${direction}"
                        "label": "hasIPAGFacingVLAN",
                        "direction": "OUT",
                        "multiplicity": "Many2Many",
-                       "contains": "NONE",
-                       "uses-resource": "${direction}",
+                       "contains-other-v": "NONE",
                        "delete-other-v": "NONE",
                        "SVC-INFRA": "NONE",
                        "prevent-delete": "NONE"
                        "label": "hasInstance",
                        "direction": "OUT",
                        "multiplicity": "Many2Many",
-                       "contains": "${direction}",
+                       "contains-other-v": "${direction}",
                        "delete-other-v": "NONE",
                        "SVC-INFRA": "!${direction}",
                        "prevent-delete": "NONE"
                        "label": "hasRoutingInstance",
                        "direction": "OUT",
                        "multiplicity": "Many2Many",
-                       "contains": "${direction}",
+                       "contains-other-v": "${direction}",
                        "delete-other-v": "NONE",
                        "SVC-INFRA": "NONE",
                        "prevent-delete": "NONE"
                        "label": "hasSitePair",
                        "direction": "OUT",
                        "multiplicity": "Many2Many",
-                       "contains": "${direction}",
+                       "contains-other-v": "${direction}",
                        "delete-other-v": "NONE",
                        "SVC-INFRA": "NONE",
                        "prevent-delete": "NONE"
                        "label": "hasClassOfService",
                        "direction": "OUT",
                        "multiplicity": "Many2Many",
-                       "contains": "${direction}",
+                       "contains-other-v": "${direction}",
                        "delete-other-v": "NONE",
                        "SVC-INFRA": "NONE",
                        "prevent-delete": "NONE"
                        "label": "usesL3Network",
                        "direction": "OUT",
                        "multiplicity": "Many2Many",
-                       "contains": "NONE",
+                       "contains-other-v": "NONE",
                        "delete-other-v": "NONE",
                        "SVC-INFRA": "NONE",
                        "prevent-delete": "NONE"
                        "label": "relatedTo",
                        "direction": "OUT",
                        "multiplicity": "Many2Many",
-                       "contains": "NONE",
+                       "contains-other-v": "NONE",
                        "delete-other-v": "NONE",
                        "SVC-INFRA": "NONE",
                        "prevent-delete": "NONE"
                        "label": "owns",
                        "direction": "OUT",
                        "multiplicity": "One2Many",
-                       "contains": "${direction}",
+                       "contains-other-v": "${direction}",
                        "delete-other-v": "NONE",
                        "SVC-INFRA": "!${direction}",
                        "prevent-delete": "${direction}"
                        "label": "hasAvailabilityZone",
                        "direction": "OUT",
                        "multiplicity": "Many2Many",
-                       "contains": "NONE",
+                       "contains-other-v": "NONE",
                        "delete-other-v": "NONE",
                        "SVC-INFRA": "NONE",
                        "prevent-delete": "!${direction}"
                        "label": "locatedIn",
                        "direction": "OUT",
                        "multiplicity": "Many2Many",
-                       "contains": "NONE",
+                       "contains-other-v": "NONE",
                        "delete-other-v": "NONE",
                        "SVC-INFRA": "${direction}",
                        "prevent-delete": "!${direction}"
                        "label": "hasPortGroup",
                        "direction": "OUT",
                        "multiplicity": "Many2Many",
-                       "contains": "${direction}",
-                       "uses-resource": "${direction}",
+                       "contains-other-v": "${direction}",
                        "delete-other-v": "NONE",
                        "SVC-INFRA": "${direction}",
                        "prevent-delete": "NONE"
                        "label": "runsOnVserver",
                        "direction": "OUT",
                        "multiplicity": "Many2Many",
-                       "contains": "NONE",
-                       "uses-resource": "${direction}",
+                       "contains-other-v": "NONE",
                        "delete-other-v": "NONE",
                        "SVC-INFRA": "${direction}",
                        "prevent-delete": "NONE"
                        "label": "hasServiceInstance",
                        "direction": "OUT",
                        "multiplicity": "Many2Many",
-                       "contains": "NONE",
+                       "contains-other-v": "NONE",
                        "delete-other-v": "NONE",
                        "SVC-INFRA": "!${direction}",
                        "prevent-delete": "NONE"
                        "label": "hasVNF",
                        "direction": "OUT",
                        "multiplicity": "Many2Many",
-                       "contains": "NONE",
+                       "contains-other-v": "NONE",
                        "delete-other-v": "NONE",
                        "SVC-INFRA": "!${direction}",
                        "prevent-delete": "NONE"
                        "label": "hasIpAddress",
                        "direction": "OUT",
                        "multiplicity": "Many2Many",
-                       "contains": "${direction}",
+                       "contains-other-v": "${direction}",
                        "delete-other-v": "NONE",
                        "SVC-INFRA": "${direction}",
                        "prevent-delete": "NONE"
                        "label": "hasIpAddress",
                        "direction": "OUT",
                        "multiplicity": "Many2Many",
-                       "contains": "${direction}",
+                       "contains-other-v": "${direction}",
                        "delete-other-v": "NONE",
                        "SVC-INFRA": "${direction}",
                        "prevent-delete": "NONE"
                },
-               {
-                       "from": "vpe",
-                       "to": "complex",
-                       "label": "locatedIn",
-                       "direction": "OUT",
-                       "multiplicity": "Many2Many",
-                       "contains": "NONE",
-                       "delete-other-v": "NONE",
-                       "SVC-INFRA": "NONE",
-                       "prevent-delete": "!${direction}"
-               },
-               {
-                       "from": "vpe",
-                       "to": "ctag-pool",
-                       "label": "usesCtagPool",
-                       "direction": "OUT",
-                       "multiplicity": "Many2Many",
-                       "contains": "NONE",
-                       "delete-other-v": "NONE",
-                       "SVC-INFRA": "NONE",
-                       "prevent-delete": "NONE"
-               },
-               {
-                       "from": "vpe",
-                       "to": "l-interface",
-                       "label": "hasLInterface",
-                       "direction": "OUT",
-                       "multiplicity": "Many2Many",
-                       "contains": "${direction}",
-                       "delete-other-v": "NONE",
-                       "SVC-INFRA": "NONE",
-                       "prevent-delete": "NONE"
-               },
-               {
-                       "from": "vpe",
-                       "to": "lag-interface",
-                       "label": "hasLAGInterface",
-                       "direction": "OUT",
-                       "multiplicity": "Many2Many",
-                       "contains": "${direction}",
-                       "delete-other-v": "NONE",
-                       "SVC-INFRA": "NONE",
-                       "prevent-delete": "NONE"
-               },
-               {
-                       "from": "vpe",
-                       "to": "vserver",
-                       "label": "runsOnVserver",
-                       "direction": "OUT",
-                       "multiplicity": "Many2Many",
-                       "contains": "NONE",
-                       "uses-resource": "${direction}",
-                       "delete-other-v": "NONE",
-                       "SVC-INFRA": "NONE",
-                       "prevent-delete": "NONE"
-               },
                {
                        "from": "vpls-pe",
                        "to": "complex",
                        "label": "locatedIn",
                        "direction": "OUT",
                        "multiplicity": "Many2Many",
-                       "contains": "NONE",
+                       "contains-other-v": "NONE",
                        "delete-other-v": "NONE",
                        "SVC-INFRA": "NONE",
                        "prevent-delete": "!${direction}"
                        "label": "usesCtagPool",
                        "direction": "OUT",
                        "multiplicity": "Many2Many",
-                       "contains": "NONE",
+                       "contains-other-v": "NONE",
                        "delete-other-v": "NONE",
                        "SVC-INFRA": "NONE",
                        "prevent-delete": "NONE"
                        "label": "hasPinterface",
                        "direction": "OUT",
                        "multiplicity": "Many2Many",
-                       "contains": "${direction}",
+                       "contains-other-v": "${direction}",
                        "delete-other-v": "NONE",
                        "SVC-INFRA": "NONE",
                        "prevent-delete": "NONE"
                        "label": "hasLAGinterface",
                        "direction": "OUT",
                        "multiplicity": "Many2Many",
-                       "contains": "${direction}",
+                       "contains-other-v": "${direction}",
                        "delete-other-v": "NONE",
                        "SVC-INFRA": "NONE",
                        "prevent-delete": "NONE"
                        "label": "hasFlavor",
                        "direction": "OUT",
                        "multiplicity": "Many2One",
-                       "contains": "NONE",
+                       "contains-other-v": "NONE",
                        "delete-other-v": "NONE",
                        "SVC-INFRA": "${direction}",
                        "prevent-delete": "!${direction}"
                        "label": "hasImage",
                        "direction": "OUT",
                        "multiplicity": "Many2One",
-                       "contains": "NONE",
+                       "contains-other-v": "NONE",
                        "delete-other-v": "NONE",
                        "SVC-INFRA": "${direction}",
                        "prevent-delete": "!${direction}"
                },
-               {
-                       "from": "vserver",
-                       "to": "ipaddress",
-                       "label": "hasIpAddress",
-                       "direction": "OUT",
-                       "multiplicity": "Many2Many",
-                       "contains": "${direction}",
-                       "uses-resource": "${direction}",
-                       "delete-other-v": "NONE",
-                       "SVC-INFRA": "NONE",
-                       "prevent-delete": "NONE"
-               },
                {
                        "from": "vserver",
                        "to": "l-interface",
                        "label": "hasLInterface",
                        "direction": "OUT",
                        "multiplicity": "Many2Many",
-                       "contains": "${direction}",
+                       "contains-other-v": "${direction}",
                        "delete-other-v": "NONE",
                        "SVC-INFRA": "${direction}",
                        "prevent-delete": "NONE"
                        "label": "runsOnPserver",
                        "direction": "OUT",
                        "multiplicity": "Many2One",
-                       "contains": "NONE",
-                       "uses-resource": "${direction}",
+                       "contains-other-v": "NONE",
                        "delete-other-v": "NONE",
                        "SVC-INFRA": "${direction}",
                        "prevent-delete": "!${direction}"
                        "label": "hasVolume",
                        "direction": "OUT",
                        "multiplicity": "Many2Many",
-                       "contains": "${direction}",
-                       "uses-resource": "${direction}",
+                       "contains-other-v": "${direction}",
                        "delete-other-v": "NONE",
                        "SVC-INFRA": "${direction}",
                        "prevent-delete": "NONE"
                        "label": "hosts",
                        "direction": "OUT",
                        "multiplicity": "Many2Many",
-                       "contains": "NONE",
-                       "uses-resource": "${direction}",
+                       "contains-other-v": "NONE",
                        "delete-other-v": "NONE",
                        "SVC-INFRA": "${direction}",
                        "prevent-delete": "NONE"
                        "label": "uses",
                        "direction": "OUT",
                        "multiplicity": "One2One",
-                       "contains": "NONE",
+                       "contains-other-v": "NONE",
                        "delete-other-v": "NONE",
                        "SVC-INFRA": "${direction}",
                        "prevent-delete": "NONE"
                        "label": "uses",
                        "direction": "OUT",
                        "multiplicity": "Many2Many",
-                       "contains": "NONE",
-                       "uses-resource": "${direction}",
+                       "contains-other-v": "NONE",
                        "delete-other-v": "NONE",
                        "SVC-INFRA": "NONE",
                        "prevent-delete": "NONE"
                        "label": "hasMetaData",
                        "direction": "OUT",
                        "multiplicity": "Many2Many",
-                       "contains": "${direction}",
+                       "contains-other-v": "${direction}",
                        "delete-other-v": "NONE",
                        "SVC-INFRA": "NONE",
                        "prevent-delete": "NONE"
                        "label": "uses",
                        "direction": "OUT",
                        "multiplicity": "Many2Many",
-                       "contains": "NONE",
+                       "contains-other-v": "NONE",
                        "delete-other-v": "${direction}",
                        "SVC-INFRA": "NONE",
                        "prevent-delete": "NONE"
                        "label": "dependsOn",
                        "direction": "OUT",
                        "multiplicity": "One2Many",
-                       "contains": "NONE",
-                       "uses-resource": "${direction}",
+                       "contains-other-v": "NONE",
                        "delete-other-v": "NONE",
                        "SVC-INFRA": "NONE",
                        "prevent-delete": "NONE"
                        "label": "dependsOn",
                        "direction": "OUT",
                        "multiplicity": "One2Many",
-                       "contains": "NONE",
-                       "uses-resource": "${direction}",
+                       "contains-other-v": "NONE",
                        "delete-other-v": "NONE",
                        "SVC-INFRA": "NONE",
                        "prevent-delete": "NONE"
                        "label": "contains",
                        "direction": "OUT",
                        "multiplicity": "Many2Many",
-                       "contains": "NONE",
+                       "contains-other-v": "NONE",
                        "delete-other-v": "NONE",
                        "SVC-INFRA": "NONE",
                        "prevent-delete": "NONE"
                        "label": "hasMetaData",
                        "direction": "OUT",
                        "multiplicity": "Many2Many",
-                       "contains": "${direction}",
+                       "contains-other-v": "${direction}",
                        "delete-other-v": "NONE",
                        "SVC-INFRA": "NONE",
                        "prevent-delete": "NONE"
                        "label": "contains",
                        "direction": "OUT",
                        "multiplicity": "Many2Many",
-                       "contains": "NONE",
-                       "uses-resource": "${direction}",
+                       "contains-other-v": "NONE",
                        "delete-other-v": "NONE",
                        "SVC-INFRA": "NONE",
                        "prevent-delete": "NONE"
                        "label": "bridgedTo",
                        "direction": "OUT",
                        "multiplicity": "Many2Many",
-                       "contains": "NONE",
+                       "contains-other-v": "NONE",
                        "delete-other-v": "NONE",
                        "SVC-INFRA": "NONE",
                        "prevent-delete": "NONE"
                        "label": "bridgedTo",
                        "direction": "OUT",
                        "multiplicity": "Many2Many",
-                       "contains": "NONE",
+                       "contains-other-v": "NONE",
                        "delete-other-v": "NONE",
                        "SVC-INFRA": "NONE",
                        "prevent-delete": "!${direction}"
                        "label": "uses",
                        "direction": "OUT",
                        "multiplicity": "Many2Many",
-                       "contains": "NONE",
-                       "uses-resource": "${direction}",
+                       "contains-other-v": "NONE",
                        "delete-other-v": "NONE",
                        "SVC-INFRA": "NONE",
                        "prevent-delete": "NONE"
                        "label": "existsIn",
                        "direction": "OUT",
                        "multiplicity": "Many2Many",
-                       "contains": "NONE",
+                       "contains-other-v": "NONE",
                        "delete-other-v": "NONE",
                        "SVC-INFRA": "${direction}",
                        "prevent-delete": "!${direction}"
                        "label": "belongsTo",
                        "direction": "OUT",
                        "multiplicity": "Many2Many",
-                       "contains": "NONE",
+                       "contains-other-v": "NONE",
                        "delete-other-v": "NONE",
                        "SVC-INFRA": "${direction}",
                        "prevent-delete": "NONE"
                        "label": "hasVigServer",
                        "direction": "OUT",
                        "multiplicity": "One2Many",
-                       "contains": "${direction}",
-                       "uses-resource": "${direction}",
+                       "contains-other-v": "${direction}",
                        "delete-other-v": "NONE",
                        "SVC-INFRA": "NONE",
                        "prevent-delete": "NONE"
                        "label": "uses",
                        "direction": "OUT",
                        "multiplicity": "Many2One",
-                       "contains": "NONE",
-                       "uses-resource": "${direction}",
+                       "contains-other-v": "NONE",
                        "delete-other-v": "NONE",
                        "SVC-INFRA": "NONE",
                        "prevent-delete": "NONE"
                        "label": "uses",
                        "direction": "OUT",
                        "multiplicity": "One2One",
-                       "contains": "NONE",
+                       "contains-other-v": "NONE",
                        "delete-other-v": "NONE",
                        "SVC-INFRA": "${direction}",
                        "prevent-delete": "NONE"
                        "label": "isPartOf",
                        "direction": "OUT",
                        "multiplicity": "Many2One",
-                       "contains": "NONE",
+                       "contains-other-v": "NONE",
                        "delete-other-v": "NONE",
                        "SVC-INFRA": "${direction}",
                        "prevent-delete": "NONE"
                        "label": "uses",
                        "direction": "OUT",
                        "multiplicity": "Many2Many",
-                       "contains": "NONE",
+                       "contains-other-v": "NONE",
                        "delete-other-v": "NONE",
                        "SVC-INFRA": "${direction}",
                        "prevent-delete": "NONE"
                        "label": "uses",
                        "direction": "OUT",
                        "multiplicity": "One2Many",
-                       "contains": "NONE",
+                       "contains-other-v": "NONE",
                        "delete-other-v": "${direction}",
                        "SVC-INFRA": "${direction}",
                        "prevent-delete": "${direction}"
                        "label": "has",
                        "direction": "OUT",
                        "multiplicity": "One2Many",
-                       "contains": "${direction}",
+                       "contains-other-v": "${direction}",
                        "delete-other-v": "NONE",
                        "SVC-INFRA": "${direction}",
                        "prevent-delete": "NONE"
                        "label": "uses",
                        "direction": "OUT",
                        "multiplicity": "One2Many",
-                       "contains": "NONE",
+                       "contains-other-v": "NONE",
                        "delete-other-v": "NONE",
                        "SVC-INFRA": "${direction}",
                        "prevent-delete": "NONE"
                        "label": "uses",
                        "direction": "OUT",
                        "multiplicity": "One2Many",
-                       "contains": "NONE",
+                       "contains-other-v": "NONE",
                        "delete-other-v": "${direction}",
                        "SVC-INFRA": "${direction}",
                        "prevent-delete": "NONE"
                        "label": "usesLogicalLink",
                        "direction": "OUT",
                        "multiplicity": "One2One",
-                       "contains": "NONE",
+                       "contains-other-v": "NONE",
                        "delete-other-v": "${direction}",
                        "SVC-INFRA": "${direction}",
                        "prevent-delete": "NONE"
index 41c9b1b..8009627 100644 (file)
@@ -6,7 +6,7 @@
                        "label": "groupsResourcesIn",
                        "direction": "OUT",
                        "multiplicity": "Many2Many",
-                       "contains": "NONE",
+                       "contains-other-v": "NONE",
                        "delete-other-v": "NONE",
                        "SVC-INFRA": "NONE",
                        "prevent-delete": "!${direction}"
@@ -17,7 +17,7 @@
                        "label": "uses",
                        "direction": "OUT",
                        "multiplicity": "Many2Many",
-                       "contains": "NONE",
+                       "contains-other-v": "NONE",
                        "delete-other-v": "NONE",
                        "SVC-INFRA": "NONE",
                        "prevent-delete": "!${direction}"
@@ -28,7 +28,7 @@
                        "label": "supportsServiceCapability",
                        "direction": "OUT",
                        "multiplicity": "Many2Many",
-                       "contains": "NONE",
+                       "contains-other-v": "NONE",
                        "delete-other-v": "NONE",
                        "SVC-INFRA": "NONE",
                        "prevent-delete": "!${direction}"
@@ -39,7 +39,7 @@
                        "label": "locatedIn",
                        "direction": "OUT",
                        "multiplicity": "Many2One",
-                       "contains": "NONE",
+                       "contains-other-v": "NONE",
                        "delete-other-v": "NONE",
                        "SVC-INFRA": "NONE",
                        "prevent-delete": "!${direction}"
@@ -50,7 +50,7 @@
                        "label": "uses",
                        "direction": "OUT",
                        "multiplicity": "Many2Many",
-                       "contains": "NONE",
+                       "contains-other-v": "NONE",
                        "delete-other-v": "NONE",
                        "SVC-INFRA": "NONE",
                        "prevent-delete": "NONE"
@@ -61,7 +61,7 @@
                        "label": "has",
                        "direction": "OUT",
                        "multiplicity": "One2Many",
-                       "contains": "${direction}",
+                       "contains-other-v": "${direction}",
                        "delete-other-v": "NONE",
                        "SVC-INFRA": "!${direction}",
                        "prevent-delete": "${direction}"
@@ -72,7 +72,7 @@
                        "label": "has",
                        "direction": "OUT",
                        "multiplicity": "One2Many",
-                       "contains": "${direction}",
+                       "contains-other-v": "${direction}",
                        "delete-other-v": "NONE",
                        "SVC-INFRA": "NONE",
                        "prevent-delete": "${direction}"
@@ -83,7 +83,7 @@
                        "label": "has",
                        "direction": "OUT",
                        "multiplicity": "One2Many",
-                       "contains": "${direction}",
+                       "contains-other-v": "${direction}",
                        "delete-other-v": "NONE",
                        "SVC-INFRA": "NONE",
                        "prevent-delete": "${direction}"
@@ -94,7 +94,7 @@
                        "label": "has",
                        "direction": "OUT",
                        "multiplicity": "One2Many",
-                       "contains": "${direction}",
+                       "contains-other-v": "${direction}",
                        "delete-other-v": "NONE",
                        "SVC-INFRA": "NONE",
                        "prevent-delete": "${direction}"
                        "label": "has",
                        "direction": "OUT",
                        "multiplicity": "One2Many",
-                       "contains": "${direction}",
+                       "contains-other-v": "${direction}",
                        "delete-other-v": "NONE",
                        "SVC-INFRA": "NONE",
                        "prevent-delete": "${direction}"
                        "label": "has",
                        "direction": "OUT",
                        "multiplicity": "One2Many",
-                       "contains": "${direction}",
+                       "contains-other-v": "${direction}",
                        "delete-other-v": "NONE",
                        "SVC-INFRA": "NONE",
                        "prevent-delete": "${direction}"
                        "label": "has",
                        "direction": "OUT",
                        "multiplicity": "One2Many",
-                       "contains": "${direction}",
-                       "uses-resource": "${direction}",
+                       "contains-other-v": "${direction}",
                        "delete-other-v": "NONE",
                        "SVC-INFRA": "NONE",
                        "prevent-delete": "${direction}"
                        "label": "has",
                        "direction": "OUT",
                        "multiplicity": "One2Many",
-                       "contains": "${direction}",
+                       "contains-other-v": "${direction}",
                        "delete-other-v": "NONE",
                        "SVC-INFRA": "NONE",
                        "prevent-delete": "${direction}"
                        "label": "has",
                        "direction": "OUT",
                        "multiplicity": "One2Many",
-                       "contains": "${direction}",
+                       "contains-other-v": "${direction}",
                        "delete-other-v": "NONE",
                        "SVC-INFRA": "NONE",
                        "prevent-delete": "${direction}"
                        "label": "isMemberOf",
                        "direction": "OUT",
                        "multiplicity": "Many2One",
-                       "contains": "NONE",
+                       "contains-other-v": "NONE",
                        "delete-other-v": "NONE",
                        "SVC-INFRA": "NONE",
                        "prevent-delete": "NONE"
                        "label": "hasCtagPool",
                        "direction": "OUT",
                        "multiplicity": "Many2Many",
-                       "contains": "${direction}",
+                       "contains-other-v": "${direction}",
                        "delete-other-v": "NONE",
                        "SVC-INFRA": "NONE",
                        "prevent-delete": "NONE"
                        "label": "usesL3Network",
                        "direction": "OUT",
                        "multiplicity": "Many2Many",
-                       "contains": "NONE",
+                       "contains-other-v": "NONE",
                        "delete-other-v": "NONE",
                        "SVC-INFRA": "${direction}",
                        "prevent-delete": "NONE"
                        "label": "supportsAvailabilityZone",
                        "direction": "OUT",
                        "multiplicity": "Many2Many",
-                       "contains": "NONE",
+                       "contains-other-v": "NONE",
                        "delete-other-v": "NONE",
                        "SVC-INFRA": "NONE",
                        "prevent-delete": "!${direction}"
                        "label": "subscribesTo",
                        "direction": "OUT",
                        "multiplicity": "Many2Many",
-                       "contains": "${direction}",
+                       "contains-other-v": "${direction}",
                        "delete-other-v": "NONE",
                        "SVC-INFRA": "!${direction}",
                        "prevent-delete": "NONE"
                        "label": "existsIn",
                        "direction": "OUT",
                        "multiplicity": "Many2Many",
-                       "contains": "NONE",
+                       "contains-other-v": "NONE",
                        "delete-other-v": "NONE",
                        "SVC-INFRA": "NONE",
                        "prevent-delete": "!${direction}"
                        "label": "hasLInterface",
                        "direction": "OUT",
                        "multiplicity": "Many2Many",
-                       "contains": "${direction}",
+                       "contains-other-v": "${direction}",
                        "delete-other-v": "NONE",
                        "SVC-INFRA": "${direction}",
                        "prevent-delete": "NONE"
                        "label": "hasAvailabilityZone",
                        "direction": "OUT",
                        "multiplicity": "Many2Many",
-                       "contains": "NONE",
+                       "contains-other-v": "NONE",
                        "delete-other-v": "NONE",
                        "SVC-INFRA": "${direction}",
                        "prevent-delete": "!${direction}"
                        "label": "hasLAGInterface",
                        "direction": "OUT",
                        "multiplicity": "Many2Many",
-                       "contains": "${direction}",
+                       "contains-other-v": "${direction}",
                        "delete-other-v": "NONE",
                        "SVC-INFRA": "${direction}",
                        "prevent-delete": "NONE"
                        "label": "usesL3Network",
                        "direction": "OUT",
                        "multiplicity": "Many2Many",
-                       "contains": "NONE",
-                       "uses-resource": "${direction}",
+                       "contains-other-v": "NONE",
                        "delete-other-v": "NONE",
                        "SVC-INFRA": "${direction}",
                        "prevent-delete": "NONE"
                        "label": "runsOnPserver",
                        "direction": "OUT",
                        "multiplicity": "Many2Many",
-                       "contains": "NONE",
-                       "uses-resource": "${direction}",
+                       "contains-other-v": "NONE",
                        "delete-other-v": "NONE",
                        "SVC-INFRA": "${direction}",
                        "prevent-delete": "!${direction}"
                        "label": "usesVnfImage",
                        "direction": "OUT",
                        "multiplicity": "Many2One",
-                       "contains": "NONE",
+                       "contains-other-v": "NONE",
                        "delete-other-v": "NONE",
                        "SVC-INFRA": "${direction}",
                        "prevent-delete": "!${direction}"
                        "label": "runsOnVserver",
                        "direction": "OUT",
                        "multiplicity": "One2Many",
-                       "contains": "NONE",
-                       "uses-resource": "${direction}",
+                       "contains-other-v": "NONE",
                        "delete-other-v": "NONE",
                        "SVC-INFRA": "${direction}",
                        "prevent-delete": "NONE"
                        "label": "hasInstance",
                        "direction": "OUT",
                        "multiplicity": "Many2Many",
-                       "contains": "NONE",
-                       "uses-resource": "${direction}",
+                       "contains-other-v": "NONE",
                        "delete-other-v": "NONE",
                        "SVC-INFRA": "${direction}",
                        "prevent-delete": "NONE"
                        "label": "hasSitePairSet",
                        "direction": "OUT",
                        "multiplicity": "Many2Many",
-                       "contains": "NONE",
+                       "contains-other-v": "NONE",
                        "delete-other-v": "NONE",
                        "SVC-INFRA": "NONE",
                        "prevent-delete": "NONE"
                        "label": "hasNetworkProfile",
                        "direction": "OUT",
                        "multiplicity": "Many2Many",
-                       "contains": "NONE",
+                       "contains-other-v": "NONE",
                        "delete-other-v": "NONE",
                        "SVC-INFRA": "NONE",
                        "prevent-delete": "NONE"
                        "label": "has",
                        "direction": "OUT",
                        "multiplicity": "Many2Many",
-                       "contains": "NONE",
+                       "contains-other-v": "NONE",
                        "delete-other-v": "NONE",
                        "SVC-INFRA": "NONE",
                        "prevent-delete": "NONE"
                        "label": "has",
                        "direction": "OUT",
                        "multiplicity": "One2Many",
-                       "contains": "NONE",
+                       "contains-other-v": "NONE",
                        "delete-other-v": "NONE",
                        "SVC-INFRA": "NONE",
                        "prevent-delete": "!${direction}"
                },
-               {
-                       "from": "image",
-                       "to": "metadata",
-                       "label": "hasMetaData",
-                       "direction": "OUT",
-                       "multiplicity": "Many2Many",
-                       "contains": "${direction}",
-                       "delete-other-v": "NONE",
-                       "SVC-INFRA": "NONE",
-                       "prevent-delete": "NONE"
-               },
                {
                        "from": "image",
                        "to": "metadatum",
                        "label": "hasMetaDatum",
                        "direction": "OUT",
                        "multiplicity": "Many2Many",
-                       "contains": "${direction}",
+                       "contains-other-v": "${direction}",
                        "delete-other-v": "NONE",
                        "SVC-INFRA": "NONE",
                        "prevent-delete": "NONE"
                        "label": "hasIpAddress",
                        "direction": "OUT",
                        "multiplicity": "Many2Many",
-                       "contains": "${direction}",
+                       "contains-other-v": "${direction}",
                        "delete-other-v": "NONE",
                        "SVC-INFRA": "${direction}",
                        "prevent-delete": "NONE"
                        "label": "hasIpAddress",
                        "direction": "OUT",
                        "multiplicity": "Many2Many",
-                       "contains": "${direction}",
+                       "contains-other-v": "${direction}",
                        "delete-other-v": "NONE",
                        "SVC-INFRA": "${direction}",
                        "prevent-delete": "NONE"
                        "label": "usesLogicalLink",
                        "direction": "OUT",
                        "multiplicity": "Many2Many",
-                       "contains": "NONE",
+                       "contains-other-v": "NONE",
                        "delete-other-v": "${direction}",
                        "SVC-INFRA": "${direction}",
                        "prevent-delete": "NONE"
                        "label": "hasVlan",
                        "direction": "OUT",
                        "multiplicity": "Many2Many",
-                       "contains": "${direction}",
+                       "contains-other-v": "${direction}",
                        "delete-other-v": "NONE",
                        "SVC-INFRA": "NONE",
                        "prevent-delete": "NONE"
                        "label": "has",
                        "direction": "OUT",
                        "multiplicity": "One2One",
-                       "contains": "${direction}",
+                       "contains-other-v": "${direction}",
                        "delete-other-v": "NONE",
                        "SVC-INFRA": "NONE",
                        "prevent-delete": "NONE"
                        "label": "isMemberOf",
                        "direction": "OUT",
                        "multiplicity": "Many2Many",
-                       "contains": "NONE",
+                       "contains-other-v": "NONE",
                        "delete-other-v": "NONE",
                        "SVC-INFRA": "${direction}",
                        "prevent-delete": "NONE"
                        "label": "isMemberOf",
                        "direction": "OUT",
                        "multiplicity": "Many2Many",
-                       "contains": "NONE",
+                       "contains-other-v": "NONE",
                        "delete-other-v": "NONE",
                        "SVC-INFRA": "${direction}",
                        "prevent-delete": "NONE"
                        "label": "isMemberOf",
                        "direction": "OUT",
                        "multiplicity": "Many2Many",
-                       "contains": "NONE",
+                       "contains-other-v": "NONE",
                        "delete-other-v": "NONE",
                        "SVC-INFRA": "${direction}",
-                       "prevent-delete": "!${direction}"
+                       "prevent-delete": "NONE"
                },
                {
                        "from": "l3-interface-ipv6-address-list",
                        "label": "isMemberOf",
                        "direction": "OUT",
                        "multiplicity": "Many2Many",
-                       "contains": "NONE",
+                       "contains-other-v": "NONE",
                        "delete-other-v": "NONE",
                        "SVC-INFRA": "${direction}",
-                       "prevent-delete": "!${direction}"
+                       "prevent-delete": "NONE"
                },
                {
                        "from": "l3-network",
                        "label": "usesVpnBinding",
                        "direction": "OUT",
                        "multiplicity": "Many2Many",
-                       "contains": "NONE",
+                       "contains-other-v": "NONE",
                        "delete-other-v": "NONE",
                        "SVC-INFRA": "NONE",
                        "prevent-delete": "!${direction}"
                        "label": "hasSubnet",
                        "direction": "OUT",
                        "multiplicity": "Many2Many",
-                       "contains": "${direction}",
+                       "contains-other-v": "${direction}",
                        "delete-other-v": "NONE",
                        "SVC-INFRA": "!${direction}",
                        "prevent-delete": "NONE"
                        "label": "hasInstance",
                        "direction": "OUT",
                        "multiplicity": "Many2Many",
-                       "contains": "NONE",
+                       "contains-other-v": "NONE",
                        "delete-other-v": "NONE",
                        "SVC-INFRA": "!${direction}",
                        "prevent-delete": "NONE"
                        "label": "hasCtagAssignment",
                        "direction": "OUT",
                        "multiplicity": "Many2Many",
-                       "contains": "${direction}",
+                       "contains-other-v": "${direction}",
                        "delete-other-v": "NONE",
                        "SVC-INFRA": "${direction}",
                        "prevent-delete": "NONE"
                        "label": "uses",
                        "direction": "OUT",
                        "multiplicity": "Many2Many",
-                       "contains": "NONE",
+                       "contains-other-v": "NONE",
                        "delete-other-v": "NONE",
                        "SVC-INFRA": "${direction}",
                        "prevent-delete": "NONE"
                        "label": "has",
                        "direction": "OUT",
                        "multiplicity": "One2Many",
-                       "contains": "${direction}",
+                       "contains-other-v": "${direction}",
                        "delete-other-v": "NONE",
                        "SVC-INFRA": "NONE",
                        "prevent-delete": "NONE"
                        "label": "uses",
                        "direction": "OUT",
                        "multiplicity": "Many2Many",
-                       "contains": "NONE",
+                       "contains-other-v": "NONE",
                        "delete-other-v": "NONE",
                        "SVC-INFRA": "NONE",
                        "prevent-delete": "NONE"
                        "label": "usesLAGLink",
                        "direction": "OUT",
                        "multiplicity": "Many2Many",
-                       "contains": "NONE",
-                       "uses-resource": "${direction}",
+                       "contains-other-v": "NONE",
                        "delete-other-v": "${direction}",
                        "SVC-INFRA": "${direction}",
                        "prevent-delete": "NONE"
                        "label": "usesPInterface",
                        "direction": "OUT",
                        "multiplicity": "Many2Many",
-                       "contains": "NONE",
-                       "uses-resource": "${direction}",
+                       "contains-other-v": "NONE",
                        "delete-other-v": "NONE",
                        "SVC-INFRA": "${direction}",
                        "prevent-delete": "NONE"
                        "label": "hasLInterface",
                        "direction": "OUT",
                        "multiplicity": "Many2Many",
-                       "contains": "${direction}",
+                       "contains-other-v": "${direction}",
                        "delete-other-v": "NONE",
                        "SVC-INFRA": "${direction}",
                        "prevent-delete": "NONE"
                        "label": "usesLAGLink",
                        "direction": "OUT",
                        "multiplicity": "Many2Many",
-                       "contains": "NONE",
-                       "uses-resource": "${direction}",
+                       "contains-other-v": "NONE",
                        "delete-other-v": "NONE",
                        "SVC-INFRA": "${direction}",
                        "prevent-delete": "NONE"
                        "label": "bridgedTo",
                        "direction": "OUT",
                        "multiplicity": "Many2Many",
-                       "contains": "NONE",
+                       "contains-other-v": "NONE",
                        "delete-other-v": "NONE",
                        "SVC-INFRA": "NONE",
                        "prevent-delete": "NONE"
                        "label": "uses",
                        "direction": "OUT",
                        "multiplicity": "One2Many",
-                       "contains": "NONE",
+                       "contains-other-v": "NONE",
                        "delete-other-v": "NONE",
                        "SVC-INFRA": "${direction}",
                        "prevent-delete": "NONE"
                        "label": "has",
                        "direction": "OUT",
                        "multiplicity": "One2Many",
-                       "contains": "${direction}",
+                       "contains-other-v": "${direction}",
                        "delete-other-v": "NONE",
                        "SVC-INFRA": "NONE",
                        "prevent-delete": "NONE"
                        "label": "startsWith",
                        "direction": "OUT",
                        "multiplicity": "One2Many",
-                       "contains": "${direction}",
+                       "contains-other-v": "${direction}",
                        "delete-other-v": "NONE",
                        "SVC-INFRA": "NONE",
                        "prevent-delete": "NONE"
                        "label": "isA",
                        "direction": "OUT",
                        "multiplicity": "Many2One",
-                       "contains": "NONE",
+                       "contains-other-v": "NONE",
                        "delete-other-v": "NONE",
                        "SVC-INFRA": "NONE",
                        "prevent-delete": "!${direction}"
                        "label": "hasMetaData",
                        "direction": "OUT",
                        "multiplicity": "One2Many",
-                       "contains": "${direction}",
+                       "contains-other-v": "${direction}",
                        "delete-other-v": "NONE",
                        "SVC-INFRA": "NONE",
                        "prevent-delete": "NONE"
                        "label": "connectsTo",
                        "direction": "OUT",
                        "multiplicity": "One2Many",
-                       "contains": "${direction}",
+                       "contains-other-v": "${direction}",
                        "delete-other-v": "NONE",
                        "SVC-INFRA": "NONE",
                        "prevent-delete": "NONE"
                        "label": "uses",
                        "direction": "OUT",
                        "multiplicity": "One2Many",
-                       "contains": "${direction}",
+                       "contains-other-v": "${direction}",
                        "delete-other-v": "NONE",
                        "SVC-INFRA": "NONE",
                        "prevent-delete": "NONE"
                        "label": "connectsTo",
                        "direction": "OUT",
                        "multiplicity": "One2Many",
-                       "contains": "${direction}",
+                       "contains-other-v": "${direction}",
                        "delete-other-v": "NONE",
                        "SVC-INFRA": "NONE",
                        "prevent-delete": "NONE"
                        "label": "uses",
                        "direction": "OUT",
                        "multiplicity": "One2Many",
-                       "contains": "${direction}",
+                       "contains-other-v": "${direction}",
                        "delete-other-v": "NONE",
                        "SVC-INFRA": "NONE",
                        "prevent-delete": "NONE"
                        "label": "uses",
                        "direction": "OUT",
                        "multiplicity": "One2Many",
-                       "contains": "${direction}",
+                       "contains-other-v": "${direction}",
                        "delete-other-v": "NONE",
                        "SVC-INFRA": "NONE",
                        "prevent-delete": "NONE"
                        "label": "has",
                        "direction": "OUT",
                        "multiplicity": "One2Many",
-                       "contains": "${direction}",
+                       "contains-other-v": "${direction}",
                        "delete-other-v": "NONE",
                        "SVC-INFRA": "NONE",
                        "prevent-delete": "NONE"
                        "label": "relatedTo",
                        "direction": "OUT",
                        "multiplicity": "One2Many",
-                       "contains": "NONE",
+                       "contains-other-v": "NONE",
                        "delete-other-v": "NONE",
                        "SVC-INFRA": "NONE",
                        "prevent-delete": "!${direction}"
                        "label": "startsWith",
                        "direction": "OUT",
                        "multiplicity": "One2One",
-                       "contains": "${direction}",
+                       "contains-other-v": "${direction}",
                        "delete-other-v": "NONE",
                        "SVC-INFRA": "NONE",
                        "prevent-delete": "NONE"
                        "label": "connectsTo",
                        "direction": "OUT",
                        "multiplicity": "Many2Many",
-                       "contains": "${direction}",
+                       "contains-other-v": "${direction}",
                        "delete-other-v": "NONE",
                        "SVC-INFRA": "NONE",
                        "prevent-delete": "NONE"
                        "label": "isA",
                        "direction": "OUT",
                        "multiplicity": "Many2One",
-                       "contains": "NONE",
+                       "contains-other-v": "NONE",
                        "delete-other-v": "NONE",
                        "SVC-INFRA": "NONE",
                        "prevent-delete": "!${direction}"
                        "label": "uses",
                        "direction": "OUT",
                        "multiplicity": "One2Many",
-                       "contains": "${direction}",
+                       "contains-other-v": "${direction}",
                        "delete-other-v": "NONE",
                        "SVC-INFRA": "NONE",
                        "prevent-delete": "NONE"
                        "label": "uses",
                        "direction": "OUT",
                        "multiplicity": "One2Many",
-                       "contains": "${direction}",
+                       "contains-other-v": "${direction}",
                        "delete-other-v": "NONE",
                        "SVC-INFRA": "NONE",
                        "prevent-delete": "NONE"
                        "label": "targets",
                        "direction": "OUT",
                        "multiplicity": "Many2Many",
-                       "contains": "NONE",
+                       "contains-other-v": "NONE",
                        "delete-other-v": "NONE",
                        "SVC-INFRA": "NONE",
                        "prevent-delete": "!${direction}"
                        "label": "hasLInterface",
                        "direction": "OUT",
                        "multiplicity": "Many2Many",
-                       "contains": "${direction}",
+                       "contains-other-v": "${direction}",
                        "delete-other-v": "NONE",
                        "SVC-INFRA": "NONE",
                        "prevent-delete": "NONE"
                        "label": "definedFor",
                        "direction": "OUT",
                        "multiplicity": "Many2Many",
-                       "contains": "NONE",
+                       "contains-other-v": "NONE",
                        "delete-other-v": "NONE",
                        "SVC-INFRA": "NONE",
                        "prevent-delete": "!${direction}"
                        "label": "supportsServiceCapability",
                        "direction": "OUT",
                        "multiplicity": "Many2Many",
-                       "contains": "NONE",
+                       "contains-other-v": "NONE",
                        "delete-other-v": "NONE",
                        "SVC-INFRA": "NONE",
                        "prevent-delete": "!${direction}"
                        "label": "hasLInterface",
                        "direction": "OUT",
                        "multiplicity": "Many2Many",
-                       "contains": "${direction}",
+                       "contains-other-v": "${direction}",
                        "delete-other-v": "NONE",
                        "SVC-INFRA": "${direction}",
                        "prevent-delete": "NONE"
                        "label": "usesPhysicalLink",
                        "direction": "OUT",
                        "multiplicity": "Many2Many",
-                       "contains": "NONE",
+                       "contains-other-v": "NONE",
                        "delete-other-v": "${direction}",
                        "SVC-INFRA": "NONE",
                        "prevent-delete": "NONE"
                        "label": "usesLogicalLink",
                        "direction": "OUT",
                        "multiplicity": "Many2One",
-                       "contains": "NONE",
+                       "contains-other-v": "NONE",
                        "delete-other-v": "NONE",
                        "SVC-INFRA": "${direction}",
                        "prevent-delete": "NONE"
                        "label": "hasCTag",
                        "direction": "OUT",
                        "multiplicity": "Many2Many",
-                       "contains": "${direction}",
-                       "uses-resource": "${direction}",
+                       "contains-other-v": "${direction}",
                        "delete-other-v": "NONE",
                        "SVC-INFRA": "${direction}",
                        "prevent-delete": "NONE"
                        "label": "locatedIn",
                        "direction": "OUT",
                        "multiplicity": "Many2One",
-                       "contains": "NONE",
+                       "contains-other-v": "NONE",
                        "delete-other-v": "NONE",
                        "SVC-INFRA": "${direction}",
                        "prevent-delete": "!${direction}"
                        "label": "locatedIn",
                        "direction": "OUT",
                        "multiplicity": "Many2One",
-                       "contains": "NONE",
+                       "contains-other-v": "NONE",
                        "delete-other-v": "NONE",
                        "SVC-INFRA": "${direction}",
                        "prevent-delete": "NONE"
                        "label": "existsIn",
                        "direction": "OUT",
                        "multiplicity": "Many2One",
-                       "contains": "NONE",
+                       "contains-other-v": "NONE",
                        "delete-other-v": "NONE",
                        "SVC-INFRA": "${direction}",
                        "prevent-delete": "!${direction}"
                        "label": "hasLAGInterface",
                        "direction": "OUT",
                        "multiplicity": "Many2Many",
-                       "contains": "${direction}",
+                       "contains-other-v": "${direction}",
                        "delete-other-v": "NONE",
                        "SVC-INFRA": "${direction}",
                        "prevent-delete": "NONE"
                        "label": "hasPinterface",
                        "direction": "OUT",
                        "multiplicity": "Many2Many",
-                       "contains": "${direction}",
-                       "uses-resource": "${direction}",
+                       "contains-other-v": "${direction}",
                        "delete-other-v": "NONE",
                        "SVC-INFRA": "${direction}",
                        "prevent-delete": "NONE"
                        "label": "isMemberOf",
                        "direction": "OUT",
                        "multiplicity": "Many2One",
-                       "contains": "NONE",
+                       "contains-other-v": "NONE",
                        "delete-other-v": "NONE",
                        "SVC-INFRA": "NONE",
                        "prevent-delete": "NONE"
                        "label": "hasPinterface",
                        "direction": "OUT",
                        "multiplicity": "Many2Many",
-                       "contains": "${direction}",
-                       "uses-resource": "${direction}",
+                       "contains-other-v": "${direction}",
                        "delete-other-v": "NONE",
                        "SVC-INFRA": "${direction}",
                        "prevent-delete": "NONE"
                        "label": "has",
                        "direction": "OUT",
                        "multiplicity": "One2Many",
-                       "contains": "${direction}",
+                       "contains-other-v": "${direction}",
                        "delete-other-v": "NONE",
                        "SVC-INFRA": "${direction}",
                        "prevent-delete": "NONE"
                        "label": "locatedIn",
                        "direction": "OUT",
                        "multiplicity": "Many2One",
-                       "contains": "NONE",
+                       "contains-other-v": "NONE",
                        "delete-other-v": "NONE",
                        "SVC-INFRA": "NONE",
                        "prevent-delete": "!${direction}"
                        "label": "isMemberOf",
                        "direction": "OUT",
                        "multiplicity": "Many2Many",
-                       "contains": "NONE",
+                       "contains-other-v": "NONE",
                        "delete-other-v": "NONE",
                        "SVC-INFRA": "NONE",
                        "prevent-delete": "NONE"
                        "label": "isMemberOf",
                        "direction": "OUT",
                        "multiplicity": "Many2One",
-                       "contains": "NONE",
+                       "contains-other-v": "NONE",
                        "delete-other-v": "NONE",
                        "SVC-INFRA": "NONE",
                        "prevent-delete": "NONE"
                        "label": "hasIPAGFacingVLAN",
                        "direction": "OUT",
                        "multiplicity": "Many2Many",
-                       "contains": "NONE",
-                       "uses-resource": "${direction}",
+                       "contains-other-v": "NONE",
                        "delete-other-v": "NONE",
                        "SVC-INFRA": "NONE",
                        "prevent-delete": "NONE"
                        "label": "uses",
                        "direction": "OUT",
                        "multiplicity": "One2Many",
-                       "contains": "NONE",
-                       "uses-resource": "${direction}",
+                       "contains-other-v": "NONE",
                        "delete-other-v": "NONE",
                        "SVC-INFRA": "NONE",
                        "prevent-delete": "NONE"
                        "label": "hasInstance",
                        "direction": "OUT",
                        "multiplicity": "Many2Many",
-                       "contains": "${direction}",
+                       "contains-other-v": "${direction}",
                        "delete-other-v": "NONE",
                        "SVC-INFRA": "!${direction}",
                        "prevent-delete": "NONE"
                        "label": "hasRoutingInstance",
                        "direction": "OUT",
                        "multiplicity": "Many2Many",
-                       "contains": "${direction}",
+                       "contains-other-v": "${direction}",
                        "delete-other-v": "NONE",
                        "SVC-INFRA": "NONE",
                        "prevent-delete": "NONE"
                        "label": "hasSitePair",
                        "direction": "OUT",
                        "multiplicity": "Many2Many",
-                       "contains": "${direction}",
+                       "contains-other-v": "${direction}",
                        "delete-other-v": "NONE",
                        "SVC-INFRA": "NONE",
                        "prevent-delete": "NONE"
                        "label": "hasClassOfService",
                        "direction": "OUT",
                        "multiplicity": "Many2Many",
-                       "contains": "${direction}",
+                       "contains-other-v": "${direction}",
                        "delete-other-v": "NONE",
                        "SVC-INFRA": "NONE",
                        "prevent-delete": "NONE"
                        "label": "usesL3Network",
                        "direction": "OUT",
                        "multiplicity": "Many2Many",
-                       "contains": "NONE",
+                       "contains-other-v": "NONE",
                        "delete-other-v": "NONE",
                        "SVC-INFRA": "NONE",
                        "prevent-delete": "NONE"
                        "label": "relatedTo",
                        "direction": "OUT",
                        "multiplicity": "Many2Many",
-                       "contains": "NONE",
+                       "contains-other-v": "NONE",
                        "delete-other-v": "NONE",
                        "SVC-INFRA": "NONE",
                        "prevent-delete": "NONE"
                        "label": "owns",
                        "direction": "OUT",
                        "multiplicity": "One2Many",
-                       "contains": "${direction}",
+                       "contains-other-v": "${direction}",
                        "delete-other-v": "NONE",
                        "SVC-INFRA": "!${direction}",
                        "prevent-delete": "${direction}"
                        "label": "hasAvailabilityZone",
                        "direction": "OUT",
                        "multiplicity": "Many2Many",
-                       "contains": "NONE",
+                       "contains-other-v": "NONE",
                        "delete-other-v": "NONE",
                        "SVC-INFRA": "NONE",
                        "prevent-delete": "!${direction}"
                        "label": "locatedIn",
                        "direction": "OUT",
                        "multiplicity": "Many2Many",
-                       "contains": "NONE",
+                       "contains-other-v": "NONE",
                        "delete-other-v": "NONE",
                        "SVC-INFRA": "${direction}",
                        "prevent-delete": "!${direction}"
                        "label": "hasPortGroup",
                        "direction": "OUT",
                        "multiplicity": "Many2Many",
-                       "contains": "${direction}",
-                       "uses-resource": "${direction}",
+                       "contains-other-v": "${direction}",
                        "delete-other-v": "NONE",
                        "SVC-INFRA": "${direction}",
                        "prevent-delete": "NONE"
                        "label": "runsOnVserver",
                        "direction": "OUT",
                        "multiplicity": "Many2Many",
-                       "contains": "NONE",
-                       "uses-resource": "${direction}",
+                       "contains-other-v": "NONE",
                        "delete-other-v": "NONE",
                        "SVC-INFRA": "${direction}",
                        "prevent-delete": "NONE"
                        "label": "hasServiceInstance",
                        "direction": "OUT",
                        "multiplicity": "Many2Many",
-                       "contains": "NONE",
+                       "contains-other-v": "NONE",
                        "delete-other-v": "NONE",
                        "SVC-INFRA": "!${direction}",
                        "prevent-delete": "NONE"
                        "label": "hasVNF",
                        "direction": "OUT",
                        "multiplicity": "Many2Many",
-                       "contains": "NONE",
+                       "contains-other-v": "NONE",
                        "delete-other-v": "NONE",
                        "SVC-INFRA": "!${direction}",
                        "prevent-delete": "NONE"
                        "label": "hasIpAddress",
                        "direction": "OUT",
                        "multiplicity": "Many2Many",
-                       "contains": "${direction}",
+                       "contains-other-v": "${direction}",
                        "delete-other-v": "NONE",
                        "SVC-INFRA": "${direction}",
                        "prevent-delete": "NONE"
                        "label": "hasIpAddress",
                        "direction": "OUT",
                        "multiplicity": "Many2Many",
-                       "contains": "${direction}",
+                       "contains-other-v": "${direction}",
                        "delete-other-v": "NONE",
                        "SVC-INFRA": "${direction}",
                        "prevent-delete": "NONE"
                },
-               {
-                       "from": "vpe",
-                       "to": "complex",
-                       "label": "locatedIn",
-                       "direction": "OUT",
-                       "multiplicity": "Many2Many",
-                       "contains": "NONE",
-                       "delete-other-v": "NONE",
-                       "SVC-INFRA": "NONE",
-                       "prevent-delete": "!${direction}"
-               },
-               {
-                       "from": "vpe",
-                       "to": "ctag-pool",
-                       "label": "usesCtagPool",
-                       "direction": "OUT",
-                       "multiplicity": "Many2Many",
-                       "contains": "NONE",
-                       "delete-other-v": "NONE",
-                       "SVC-INFRA": "NONE",
-                       "prevent-delete": "NONE"
-               },
-               {
-                       "from": "vpe",
-                       "to": "l-interface",
-                       "label": "hasLInterface",
-                       "direction": "OUT",
-                       "multiplicity": "Many2Many",
-                       "contains": "${direction}",
-                       "delete-other-v": "NONE",
-                       "SVC-INFRA": "NONE",
-                       "prevent-delete": "NONE"
-               },
-               {
-                       "from": "vpe",
-                       "to": "lag-interface",
-                       "label": "hasLAGInterface",
-                       "direction": "OUT",
-                       "multiplicity": "Many2Many",
-                       "contains": "${direction}",
-                       "delete-other-v": "NONE",
-                       "SVC-INFRA": "NONE",
-                       "prevent-delete": "NONE"
-               },
-               {
-                       "from": "vpe",
-                       "to": "vserver",
-                       "label": "runsOnVserver",
-                       "direction": "OUT",
-                       "multiplicity": "Many2Many",
-                       "contains": "NONE",
-                       "uses-resource": "${direction}",
-                       "delete-other-v": "NONE",
-                       "SVC-INFRA": "NONE",
-                       "prevent-delete": "NONE"
-               },
                {
                        "from": "vpls-pe",
                        "to": "complex",
                        "label": "locatedIn",
                        "direction": "OUT",
                        "multiplicity": "Many2Many",
-                       "contains": "NONE",
+                       "contains-other-v": "NONE",
                        "delete-other-v": "NONE",
                        "SVC-INFRA": "NONE",
                        "prevent-delete": "!${direction}"
                        "label": "usesCtagPool",
                        "direction": "OUT",
                        "multiplicity": "Many2Many",
-                       "contains": "NONE",
+                       "contains-other-v": "NONE",
                        "delete-other-v": "NONE",
                        "SVC-INFRA": "NONE",
                        "prevent-delete": "NONE"
                        "label": "hasPinterface",
                        "direction": "OUT",
                        "multiplicity": "Many2Many",
-                       "contains": "${direction}",
+                       "contains-other-v": "${direction}",
                        "delete-other-v": "NONE",
                        "SVC-INFRA": "NONE",
                        "prevent-delete": "NONE"
                        "label": "hasLAGinterface",
                        "direction": "OUT",
                        "multiplicity": "Many2Many",
-                       "contains": "${direction}",
+                       "contains-other-v": "${direction}",
                        "delete-other-v": "NONE",
                        "SVC-INFRA": "NONE",
                        "prevent-delete": "NONE"
                        "label": "hasFlavor",
                        "direction": "OUT",
                        "multiplicity": "Many2One",
-                       "contains": "NONE",
+                       "contains-other-v": "NONE",
                        "delete-other-v": "NONE",
                        "SVC-INFRA": "${direction}",
                        "prevent-delete": "!${direction}"
                        "label": "hasImage",
                        "direction": "OUT",
                        "multiplicity": "Many2One",
-                       "contains": "NONE",
+                       "contains-other-v": "NONE",
                        "delete-other-v": "NONE",
                        "SVC-INFRA": "${direction}",
                        "prevent-delete": "!${direction}"
                },
-               {
-                       "from": "vserver",
-                       "to": "ipaddress",
-                       "label": "hasIpAddress",
-                       "direction": "OUT",
-                       "multiplicity": "Many2Many",
-                       "contains": "${direction}",
-                       "uses-resource": "${direction}",
-                       "delete-other-v": "NONE",
-                       "SVC-INFRA": "NONE",
-                       "prevent-delete": "NONE"
-               },
                {
                        "from": "vserver",
                        "to": "l-interface",
                        "label": "hasLInterface",
                        "direction": "OUT",
                        "multiplicity": "Many2Many",
-                       "contains": "${direction}",
+                       "contains-other-v": "${direction}",
                        "delete-other-v": "NONE",
                        "SVC-INFRA": "${direction}",
                        "prevent-delete": "NONE"
                        "label": "runsOnPserver",
                        "direction": "OUT",
                        "multiplicity": "Many2One",
-                       "contains": "NONE",
-                       "uses-resource": "${direction}",
+                       "contains-other-v": "NONE",
                        "delete-other-v": "NONE",
                        "SVC-INFRA": "${direction}",
                        "prevent-delete": "!${direction}"
                        "label": "hasVolume",
                        "direction": "OUT",
                        "multiplicity": "Many2Many",
-                       "contains": "${direction}",
-                       "uses-resource": "${direction}",
+                       "contains-other-v": "${direction}",
                        "delete-other-v": "NONE",
                        "SVC-INFRA": "${direction}",
                        "prevent-delete": "NONE"
                        "label": "hosts",
                        "direction": "OUT",
                        "multiplicity": "Many2Many",
-                       "contains": "NONE",
-                       "uses-resource": "${direction}",
+                       "contains-other-v": "NONE",
                        "delete-other-v": "NONE",
                        "SVC-INFRA": "${direction}",
                        "prevent-delete": "NONE"
                        "label": "uses",
                        "direction": "OUT",
                        "multiplicity": "One2One",
-                       "contains": "NONE",
+                       "contains-other-v": "NONE",
                        "delete-other-v": "NONE",
                        "SVC-INFRA": "${direction}",
                        "prevent-delete": "NONE"
                        "label": "uses",
                        "direction": "OUT",
                        "multiplicity": "Many2Many",
-                       "contains": "NONE",
-                       "uses-resource": "${direction}",
+                       "contains-other-v": "NONE",
                        "delete-other-v": "NONE",
                        "SVC-INFRA": "NONE",
                        "prevent-delete": "NONE"
                        "label": "hasMetaData",
                        "direction": "OUT",
                        "multiplicity": "Many2Many",
-                       "contains": "${direction}",
+                       "contains-other-v": "${direction}",
                        "delete-other-v": "NONE",
                        "SVC-INFRA": "NONE",
                        "prevent-delete": "NONE"
                        "label": "uses",
                        "direction": "OUT",
                        "multiplicity": "Many2Many",
-                       "contains": "NONE",
+                       "contains-other-v": "NONE",
                        "delete-other-v": "${direction}",
                        "SVC-INFRA": "NONE",
                        "prevent-delete": "NONE"
                        "label": "dependsOn",
                        "direction": "OUT",
                        "multiplicity": "One2Many",
-                       "contains": "NONE",
-                       "uses-resource": "${direction}",
+                       "contains-other-v": "NONE",
                        "delete-other-v": "NONE",
                        "SVC-INFRA": "NONE",
                        "prevent-delete": "NONE"
                        "label": "dependsOn",
                        "direction": "OUT",
                        "multiplicity": "One2Many",
-                       "contains": "NONE",
-                       "uses-resource": "${direction}",
+                       "contains-other-v": "NONE",
                        "delete-other-v": "NONE",
                        "SVC-INFRA": "NONE",
                        "prevent-delete": "NONE"
                        "label": "contains",
                        "direction": "OUT",
                        "multiplicity": "Many2Many",
-                       "contains": "NONE",
+                       "contains-other-v": "NONE",
                        "delete-other-v": "NONE",
                        "SVC-INFRA": "NONE",
                        "prevent-delete": "NONE"
                        "label": "hasMetaData",
                        "direction": "OUT",
                        "multiplicity": "Many2Many",
-                       "contains": "${direction}",
+                       "contains-other-v": "${direction}",
                        "delete-other-v": "NONE",
                        "SVC-INFRA": "NONE",
                        "prevent-delete": "NONE"
                        "label": "contains",
                        "direction": "OUT",
                        "multiplicity": "Many2Many",
-                       "contains": "NONE",
-                       "uses-resource": "${direction}",
+                       "contains-other-v": "NONE",
                        "delete-other-v": "NONE",
                        "SVC-INFRA": "NONE",
                        "prevent-delete": "NONE"
                        "label": "bridgedTo",
                        "direction": "OUT",
                        "multiplicity": "Many2Many",
-                       "contains": "NONE",
+                       "contains-other-v": "NONE",
                        "delete-other-v": "NONE",
                        "SVC-INFRA": "NONE",
                        "prevent-delete": "NONE"
                        "label": "bridgedTo",
                        "direction": "OUT",
                        "multiplicity": "Many2Many",
-                       "contains": "NONE",
+                       "contains-other-v": "NONE",
                        "delete-other-v": "NONE",
                        "SVC-INFRA": "NONE",
                        "prevent-delete": "!${direction}"
                        "label": "uses",
                        "direction": "OUT",
                        "multiplicity": "Many2Many",
-                       "contains": "NONE",
-                       "uses-resource": "${direction}",
+                       "contains-other-v": "NONE",
                        "delete-other-v": "NONE",
                        "SVC-INFRA": "NONE",
                        "prevent-delete": "NONE"
                        "label": "existsIn",
                        "direction": "OUT",
                        "multiplicity": "Many2Many",
-                       "contains": "NONE",
+                       "contains-other-v": "NONE",
                        "delete-other-v": "NONE",
                        "SVC-INFRA": "${direction}",
                        "prevent-delete": "!${direction}"
                        "label": "belongsTo",
                        "direction": "OUT",
                        "multiplicity": "Many2Many",
-                       "contains": "NONE",
+                       "contains-other-v": "NONE",
                        "delete-other-v": "NONE",
                        "SVC-INFRA": "${direction}",
                        "prevent-delete": "NONE"
                        "label": "hasVigServer",
                        "direction": "OUT",
                        "multiplicity": "One2Many",
-                       "contains": "${direction}",
-                       "uses-resource": "${direction}",
+                       "contains-other-v": "${direction}",
                        "delete-other-v": "NONE",
                        "SVC-INFRA": "NONE",
                        "prevent-delete": "NONE"
                        "label": "uses",
                        "direction": "OUT",
                        "multiplicity": "Many2One",
-                       "contains": "NONE",
-                       "uses-resource": "${direction}",
+                       "contains-other-v": "NONE",
                        "delete-other-v": "NONE",
                        "SVC-INFRA": "NONE",
                        "prevent-delete": "NONE"
                        "label": "uses",
                        "direction": "OUT",
                        "multiplicity": "One2One",
-                       "contains": "NONE",
+                       "contains-other-v": "NONE",
                        "delete-other-v": "NONE",
                        "SVC-INFRA": "${direction}",
                        "prevent-delete": "NONE"
                        "label": "isPartOf",
                        "direction": "OUT",
                        "multiplicity": "Many2One",
-                       "contains": "NONE",
+                       "contains-other-v": "NONE",
                        "delete-other-v": "NONE",
                        "SVC-INFRA": "${direction}",
                        "prevent-delete": "NONE"
                        "label": "uses",
                        "direction": "OUT",
                        "multiplicity": "Many2Many",
-                       "contains": "NONE",
+                       "contains-other-v": "NONE",
                        "delete-other-v": "NONE",
                        "SVC-INFRA": "${direction}",
                        "prevent-delete": "NONE"
                        "label": "uses",
                        "direction": "OUT",
                        "multiplicity": "One2Many",
-                       "contains": "NONE",
+                       "contains-other-v": "NONE",
                        "delete-other-v": "${direction}",
                        "SVC-INFRA": "${direction}",
                        "prevent-delete": "${direction}"
                        "label": "has",
                        "direction": "OUT",
                        "multiplicity": "One2Many",
-                       "contains": "${direction}",
+                       "contains-other-v": "${direction}",
                        "delete-other-v": "NONE",
                        "SVC-INFRA": "${direction}",
                        "prevent-delete": "NONE"
                        "label": "uses",
                        "direction": "OUT",
                        "multiplicity": "One2Many",
-                       "contains": "NONE",
+                       "contains-other-v": "NONE",
                        "delete-other-v": "NONE",
                        "SVC-INFRA": "${direction}",
                        "prevent-delete": "NONE"
                        "label": "uses",
                        "direction": "OUT",
                        "multiplicity": "One2Many",
-                       "contains": "NONE",
+                       "contains-other-v": "NONE",
                        "delete-other-v": "${direction}",
                        "SVC-INFRA": "${direction}",
                        "prevent-delete": "NONE"
                        "label": "usesLogicalLink",
                        "direction": "OUT",
                        "multiplicity": "Many2Many",
-                       "contains": "NONE",
+                       "contains-other-v": "NONE",
                        "delete-other-v": "${direction}",
                        "SVC-INFRA": "${direction}",
                        "prevent-delete": "NONE"
                        "label": "uses",
                        "direction": "OUT",
                        "multiplicity": "One2Many",
-                       "contains": "NONE",
+                       "contains-other-v": "NONE",
                        "delete-other-v": "NONE",
                        "SVC-INFRA": "NONE",
                        "prevent-delete": "NONE"
                        "label": "isPartOf",
                        "direction": "OUT",
                        "multiplicity": "Many2Many",
-                       "contains": "NONE",
+                       "contains-other-v": "NONE",
                        "delete-other-v": "NONE",
                        "SVC-INFRA": "NONE",
                        "prevent-delete": "NONE"
                        "label": "isPartOf",
                        "direction": "OUT",
                        "multiplicity": "Many2Many",
-                       "contains": "NONE",
+                       "contains-other-v": "NONE",
                        "delete-other-v": "NONE",
                        "SVC-INFRA": "NONE",
                        "prevent-delete": "NONE"
                        "label": "isMemberOf",
                        "direction": "OUT",
                        "multiplicity": "Many2Many",
-                       "contains": "NONE",
+                       "contains-other-v": "NONE",
                        "delete-other-v": "NONE",
                        "SVC-INFRA": "NONE",
                        "prevent-delete": "NONE"
                        "label": "isPartOf",
                        "direction": "OUT",
                        "multiplicity": "Many2Many",
-                       "contains": "NONE",
+                       "contains-other-v": "NONE",
                        "delete-other-v": "NONE",
                        "SVC-INFRA": "NONE",
                        "prevent-delete": "NONE"
                        "label": "isMemberOf",
                        "direction": "OUT",
                        "multiplicity": "Many2Many",
-                       "contains": "NONE",
+                       "contains-other-v": "NONE",
                        "delete-other-v": "NONE",
                        "SVC-INFRA": "NONE",
                        "prevent-delete": "NONE"
                        "label": "isMemberOf",
                        "direction": "OUT",
                        "multiplicity": "Many2Many",
-                       "contains": "NONE",
+                       "contains-other-v": "NONE",
                        "delete-other-v": "NONE",
                        "SVC-INFRA": "NONE",
                        "prevent-delete": "NONE"
                        "label": "has",
                        "direction": "OUT",
                        "multiplicity": "One2One",
-                       "contains": "${direction}",
+                       "contains-other-v": "${direction}",
                        "delete-other-v": "NONE",
                        "SVC-INFRA": "NONE",
                        "prevent-delete": "NONE"
                        "label": "existsIn",
                        "direction": "OUT",
                        "multiplicity": "Many2Many",
-                       "contains": "NONE",
+                       "contains-other-v": "NONE",
                        "delete-other-v": "NONE",
                        "SVC-INFRA": "NONE",
                        "prevent-delete": "NONE"
                        "label": "uses",
                        "direction": "OUT",
                        "multiplicity": "Many2Many",
-                       "contains": "NONE",
+                       "contains-other-v": "NONE",
                        "delete-other-v": "NONE",
                        "SVC-INFRA": "NONE",
                        "prevent-delete": "!${direction}"
                        "label": "has",
                        "direction": "OUT",
                        "multiplicity": "One2Many",
-                       "contains": "${direction}",
+                       "contains-other-v": "${direction}",
                        "delete-other-v": "NONE",
                        "SVC-INFRA": "NONE",
                        "prevent-delete": "NONE"
                        "label": "has",
                        "direction": "OUT",
                        "multiplicity": "One2Many",
-                       "contains": "${direction}",
+                       "contains-other-v": "${direction}",
                        "delete-other-v": "NONE",
                        "SVC-INFRA": "NONE",
                        "prevent-delete": "NONE"
                        "label": "has",
                        "direction": "OUT",
                        "multiplicity": "One2Many",
-                       "contains": "${direction}",
+                       "contains-other-v": "${direction}",
                        "delete-other-v": "NONE",
                        "SVC-INFRA": "NONE",
                        "prevent-delete": "NONE"
                        "label": "has",
                        "direction": "OUT",
                        "multiplicity": "One2Many",
-                       "contains": "${direction}",
-                       "delete-other-v": "NONE",
-                       "SVC-INFRA": "NONE",
-                       "prevent-delete": "NONE"
-               },
-               {
-                       "from": "vpe",
-                       "to": "entitlement",
-                       "label": "has",
-                       "direction": "OUT",
-                       "multiplicity": "One2Many",
-                       "contains": "${direction}",
-                       "delete-other-v": "NONE",
-                       "SVC-INFRA": "NONE",
-                       "prevent-delete": "NONE"
-               },
-               {
-                       "from": "vpe",
-                       "to": "license",
-                       "label": "has",
-                       "direction": "OUT",
-                       "multiplicity": "One2Many",
-                       "contains": "${direction}",
+                       "contains-other-v": "${direction}",
                        "delete-other-v": "NONE",
                        "SVC-INFRA": "NONE",
                        "prevent-delete": "NONE"
                        "label": "existsIn",
                        "direction": "OUT",
                        "multiplicity": "Many2One",
-                       "contains": "NONE",
+                       "contains-other-v": "NONE",
                        "delete-other-v": "NONE",
                        "SVC-INFRA": "NONE",
                        "prevent-delete": "!${direction}"
                        "label": "has",
                        "direction": "OUT",
                        "multiplicity": "Many2Many",
-                       "contains": "${direction}",
+                       "contains-other-v": "${direction}",
                        "delete-other-v": "NONE",
                        "SVC-INFRA": "NONE",
                        "prevent-delete": "NONE"
                        "label": "uses",
                        "direction": "OUT",
                        "multiplicity": "Many2Many",
-                       "contains": "NONE",
+                       "contains-other-v": "NONE",
                        "delete-other-v": "NONE",
                        "SVC-INFRA": "NONE",
                        "prevent-delete": "NONE"
index e05de44..b8703bf 100644 (file)
@@ -1243,7 +1243,7 @@ xmlns:jaxb="http://java.sun.com/xml/ns/jaxb"
     <xs:complexType>
       <xs:annotation>
         <xs:appinfo>
-          <annox:annotate target="class">@org.openecomp.aai.annotations.Metadata(description="Openstack tenant",nameProps="tenant-name",indexedProps="tenant-name,tenant-id",searchable="tenant-id,tenant-name",dependentOn="cloud-region",container="tenants")</annox:annotate>
+          <annox:annotate target="class">@org.openecomp.aai.annotations.Metadata(description="Openstack tenant",nameProps="tenant-name",indexedProps="tenant-name,tenant-id,tenant-context",searchable="tenant-id,tenant-name",dependentOn="cloud-region",container="tenants")</annox:annotate>
         </xs:appinfo>
       </xs:annotation>
       <xs:sequence>
@@ -1261,6 +1261,13 @@ xmlns:jaxb="http://java.sun.com/xml/ns/jaxb"
             </xs:appinfo>
           </xs:annotation>
         </xs:element>
+        <xs:element name="tenant-context" type="xs:string">
+          <xs:annotation>
+            <xs:appinfo>
+              <annox:annotate target="field">@org.openecomp.aai.annotations.Metadata(description="This field will store the tenant context.")</annox:annotate>
+            </xs:appinfo>
+          </xs:annotation>
+        </xs:element>
         <xs:element name="resource-version" type="xs:string" minOccurs="0">
           <xs:annotation>
             <xs:appinfo>
@@ -2640,7 +2647,7 @@ xmlns:jaxb="http://java.sun.com/xml/ns/jaxb"
     <xs:complexType>
       <xs:annotation>
         <xs:appinfo>
-          <annox:annotate target="class">@org.openecomp.aai.annotations.Metadata(description="Instance of a service",indexedProps="service-instance-id,model-invariant-id,model-version-id,widget-model-id,widget-model-version,service-instance-name,service-instance-location-id,orchestration-status",nameProps="service-instance-name",searchable="service-instance-id,service-instance-name",uniqueProps="service-instance-id",dependentOn="service-subscription",container="service-instances")</annox:annotate>
+          <annox:annotate target="class">@org.openecomp.aai.annotations.Metadata(description="Instance of a service",indexedProps="service-instance-id,model-invariant-id,model-version-id,widget-model-id,widget-model-version,service-instance-name,service-instance-location-id,orchestration-status,environment-context,workload-context",nameProps="service-instance-name",searchable="service-instance-id,service-instance-name",uniqueProps="service-instance-id",dependentOn="service-subscription",container="service-instances")</annox:annotate>
         </xs:appinfo>
       </xs:annotation>
       <xs:sequence>
@@ -2658,6 +2665,34 @@ xmlns:jaxb="http://java.sun.com/xml/ns/jaxb"
             </xs:appinfo>
           </xs:annotation>
         </xs:element>
+        <xs:element name="service-type" type="xs:string" minOccurs="0">
+          <xs:annotation>
+            <xs:appinfo>
+              <annox:annotate target="field">@org.openecomp.aai.annotations.Metadata(description="String capturing type of service.")</annox:annotate>
+            </xs:appinfo>
+          </xs:annotation>
+        </xs:element>
+        <xs:element name="service-role" type="xs:string" minOccurs="0">
+          <xs:annotation>
+            <xs:appinfo>
+              <annox:annotate target="field">@org.openecomp.aai.annotations.Metadata(description="String capturing the service role.")</annox:annotate>
+            </xs:appinfo>
+          </xs:annotation>
+        </xs:element>
+        <xs:element name="environment-context" type="xs:string" minOccurs="0">
+          <xs:annotation>
+            <xs:appinfo>
+              <annox:annotate target="field">@org.openecomp.aai.annotations.Metadata(description="This field will store the environment context assigned to the service-instance.")</annox:annotate>
+            </xs:appinfo>
+          </xs:annotation>
+        </xs:element>
+        <xs:element name="workload-context" type="xs:string" minOccurs="0">
+          <xs:annotation>
+            <xs:appinfo>
+              <annox:annotate target="field">@org.openecomp.aai.annotations.Metadata(description="This field will store the workload context assigned to the service-instance.")</annox:annotate>
+            </xs:appinfo>
+          </xs:annotation>
+        </xs:element>
         <xs:element name="model-invariant-id" type="xs:string" minOccurs="0">
           <xs:annotation>
             <xs:appinfo>
@@ -3478,7 +3513,7 @@ xmlns:jaxb="http://java.sun.com/xml/ns/jaxb"
     <xs:complexType>
       <xs:annotation>
         <xs:appinfo>
-          <annox:annotate target="class">@org.openecomp.aai.annotations.Metadata(description="Logical links generally connect l-interfaces but are used to express logical connectivity between two points",indexedProps="link-name,model-invariant-id,model-version-id,widget-model-id,widget-model-version,link-id,prov-status,circuit-id,purpose",uniqueProps="link-id",container="logical-links",namespace="network",searchable="link-name")</annox:annotate>
+          <annox:annotate target="class">@org.openecomp.aai.annotations.Metadata(description="Logical links generally connect l-interfaces but are used to express logical connectivity between two points",indexedProps="link-name,model-invariant-id,in-maint,model-version-id,widget-model-id,widget-model-version,link-id,prov-status,circuit-id,purpose",uniqueProps="link-id",container="logical-links",namespace="network",searchable="link-name")</annox:annotate>
         </xs:appinfo>
       </xs:annotation>
       <xs:sequence>
@@ -3489,6 +3524,13 @@ xmlns:jaxb="http://java.sun.com/xml/ns/jaxb"
             </xs:appinfo>
           </xs:annotation>
         </xs:element>
+        <xs:element name="in-maint" type="xs:boolean">
+          <xs:annotation>
+            <xs:appinfo>
+              <annox:annotate target="field">@org.openecomp.aai.annotations.Metadata(defaultValue="false",description="used to indicate whether or not this object is in maintenance mode (maintenance mode = true). This field (in conjunction with prov-status) is used to suppress alarms and vSCL on VNFs/VMs.")</annox:annotate>
+            </xs:appinfo>
+          </xs:annotation>
+        </xs:element>
         <xs:element name="link-type" type="xs:string">
           <xs:annotation>
             <xs:appinfo>
index 396e364..43114d4 100644 (file)
                                                <xml-property name="description" value="Readable name of tenant" />
                                        </xml-properties>
                                </xml-element>
+                               <xml-element java-attribute="tenantContext" name="tenant-context" required="true" type="java.lang.String">
+                                       <xml-properties>
+                                               <xml-property name="description" value="This field will store the tenant context." />
+                                       </xml-properties>
+                               </xml-element>
                                <xml-element java-attribute="resourceVersion" name="resource-version" type="java.lang.String">
                                        <xml-properties>
                                                <xml-property name="description" value="Used for optimistic concurrency.  Must be empty on create, valid on update and delete." />
                        <xml-properties>
                                <xml-property name="description" value="Openstack tenant" />
                                <xml-property name="nameProps" value="tenant-name" />
-                               <xml-property name="indexedProps" value="tenant-name,tenant-id" />
+                               <xml-property name="indexedProps" value="tenant-name,tenant-id,tenant-context" />
                                <xml-property name="searchable" value="tenant-id,tenant-name" />
                                <xml-property name="dependentOn" value="cloud-region" />
                                <xml-property name="container" value="tenants" />
                                                <xml-property name="description" value="This field will store a name assigned to the service-instance." />
                                        </xml-properties>
                                </xml-element>
+                               <xml-element java-attribute="serviceType" name="service-type" required="false" type="java.lang.String">
+                                       <xml-properties>
+                                               <xml-property name="description" value="String capturing type of service." />
+                                       </xml-properties>
+                               </xml-element>
+                               <xml-element java-attribute="serviceRole" name="service-role" required="false" type="java.lang.String">
+                                       <xml-properties>
+                                               <xml-property name="description" value="String capturing the service role." />
+                                       </xml-properties>
+                               </xml-element>
+                               <xml-element java-attribute="environmentContext" name="environment-context" type="java.lang.String">
+                                       <xml-properties>
+                                               <xml-property name="description" value="This field will store the environment context assigned to the service-instance." />
+                                       </xml-properties>
+                               </xml-element>
+                               <xml-element java-attribute="workloadContext" name="workload-context" type="java.lang.String">
+                                       <xml-properties>
+                                               <xml-property name="description" value="This field will store the workload context assigned to the service-instance." />
+                                       </xml-properties>
+                               </xml-element>
                                <xml-element java-attribute="modelInvariantId" name="model-invariant-id" type="java.lang.String">
                                        <xml-properties>
                                                <xml-property name="description" value="the ASDC model id for this resource or service model." />
                        </java-attributes>
                        <xml-properties>
                                <xml-property name="description" value="Instance of a service" />
-                               <xml-property name="indexedProps" value="service-instance-id,model-invariant-id,model-version-id,widget-model-id,widget-model-version,service-instance-name,service-instance-location-id,orchestration-status" />
+                               <xml-property name="indexedProps" value="service-instance-id,model-invariant-id,model-version-id,widget-model-id,widget-model-version,service-instance-name,service-instance-location-id,orchestration-status,environment-context,workload-context" />
                                <xml-property name="nameProps" value="service-instance-name" />
                                <xml-property name="searchable" value="service-instance-id,service-instance-name" />
                                <xml-property name="uniqueProps" value="service-instance-id" />
                                                <xml-property name="description" value="e.g., evc-name, or vnf-nameA_interface-nameA_vnf-nameZ_interface-nameZ" />
                                        </xml-properties>
                                </xml-element>
+                               <xml-element default-value="false" required="true" java-attribute="inMaint" name="in-maint" type="java.lang.Boolean">
+                                       <xml-properties>
+                                               <xml-property name="defaultValue" value="false"/>
+                                               <xml-property name="description" value="used to indicate whether or not this object is in maintenance mode (maintenance mode = true). This field (in conjunction with prov-status) is used to suppress alarms and vSCL on VNFs/VMs." />
+                                       </xml-properties>
+                               </xml-element>
                                <xml-element java-attribute="linkType" name="link-type" required="true" type="java.lang.String">
                                        <xml-properties>
                                                <xml-property name="description" value="Type of logical link, e.g., evc" />
                        </java-attributes>
                        <xml-properties>
                                <xml-property name="description" value="Logical links generally connect l-interfaces but are used to express logical connectivity between two points" />
-                               <xml-property name="indexedProps" value="link-name,model-invariant-id,model-version-id,widget-model-id,widget-model-version,link-id,prov-status,circuit-id,purpose" />
+                               <xml-property name="indexedProps" value="link-name,model-invariant-id,in-maint,model-version-id,widget-model-id,widget-model-version,link-id,prov-status,circuit-id,purpose" />
                                <xml-property name="uniqueProps" value="link-id" />
                                <xml-property name="container" value="logical-links" />
                                <xml-property name="namespace" value="network" />