Fix multiplicity between service-instance and pnf
[aai/aai-common.git] / aai-core / src / main / resources / dbedgerules / DbEdgeRules_v11.json
index 7b97315..1108555 100644 (file)
@@ -1,5 +1,49 @@
 {
        "rules": [
+               {
+                       "from": "configuration",
+                       "to": "logical-link",
+                       "label": "has",
+                       "direction": "OUT",
+                       "multiplicity": "One2Many",
+                       "contains-other-v": "NONE",
+                       "delete-other-v": "${direction}",
+                       "SVC-INFRA": "NONE",
+                       "prevent-delete": "NONE"
+               },
+               {
+                       "from": "configuration",
+                       "to": "metadatum",
+                       "label": "owns",
+                       "direction": "OUT",
+                       "multiplicity": "One2Many",
+                       "contains-other-v": "${direction}",
+                       "delete-other-v": "NONE",
+                       "SVC-INFRA": "NONE",
+                       "prevent-delete": "NONE"
+               },
+               {
+                       "from": "configuration",
+                       "to": "allotted-resource",
+                       "label": "uses",
+                       "direction": "OUT",
+                       "multiplicity": "One2One",
+                       "contains-other-v": "NONE",
+                       "delete-other-v": "${direction}",
+                       "SVC-INFRA": "NONE",
+                       "prevent-delete": "NONE"
+               },
+               {
+                       "from": "service-instance",
+                       "to": "configuration",
+                       "label": "has",
+                       "direction": "OUT",
+                       "multiplicity": "One2Many",
+                       "contains-other-v": "NONE",
+                       "delete-other-v": "NONE",
+                       "SVC-INFRA": "NONE",
+                       "prevent-delete": "NONE"
+               },
                {
                        "from": "availability-zone",
                        "to": "complex",
                        "SVC-INFRA": "NONE",
                        "prevent-delete": "!${direction}"
                },
-               {
-                       "from" : "auth-info-item",
-                       "to" : "tenant",
-                       "label" : "defaultTenant",
-                       "direction" : "OUT",
-                       "multiplicity" : "One2One",
-                       "isParent" : "false",
-                       "usesResource" : "false",
-                       "hasDelTarget" : "false",
-                       "SVC-INFRA" : "false"
-               },
                {
                        "from": "generic-vnf",
                        "to": "license-key-resource",
                        "SVC-INFRA": "NONE",
                        "prevent-delete": "!${direction}"
                },
+               {
+                       "from": "esr-ems",
+                       "to": "esr-system-info",
+                       "label": "has",
+                       "direction": "OUT",
+                       "multiplicity": "One2Many",
+                       "contains-other-v": "${direction}",
+                       "delete-other-v": "${direction}",
+                       "SVC-INFRA": "NONE",
+                       "prevent-delete": "NONE"
+               },
+               {
+                       "from": "esr-vnfm",
+                       "to": "esr-system-info",
+                       "label": "has",
+                       "direction": "OUT",
+                       "multiplicity": "One2One",
+                       "contains-other-v": "${direction}",
+                       "delete-other-v": "${direction}",
+                       "SVC-INFRA": "NONE",
+                       "prevent-delete": "NONE"
+               },
+               {
+                       "from": "esr-thirdparty-sdnc",
+                       "to": "esr-system-info",
+                       "label": "has",
+                       "direction": "OUT",
+                       "multiplicity": "One2One",
+                       "contains-other-v": "${direction}",
+                       "delete-other-v": "${direction}",
+                       "SVC-INFRA": "NONE",
+                       "prevent-delete": "NONE"
+               },
+               {
+                       "from": "esr-thirdparty-sdnc",
+                       "to": "pnf",
+                       "label": "has",
+                       "direction": "OUT",
+                       "multiplicity": "One2Many",
+                       "contains-other-v": "NONE",
+                       "delete-other-v": "NONE",
+                       "SVC-INFRA": "NONE",
+                       "prevent-delete": "NONE"
+               },
+               {
+                       "from": "cloud-region",
+                       "to": "esr-system-info",
+                       "label": "has",
+                       "direction": "OUT",
+                       "multiplicity": "One2Many",
+                       "contains-other-v": "${direction}",
+                       "delete-other-v": "${direction}",
+                       "SVC-INFRA": "NONE",
+                       "prevent-delete": "NONE"
+               },
                {
                        "from": "cloud-region",
                        "to": "complex",
                        "SVC-INFRA": "!${direction}",
                        "prevent-delete": "${direction}"
                },
-               {
-                       "from": "cloud-region",
-                       "to": "auth-info-item",
-                       "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",
                        "SVC-INFRA": "NONE",
                        "prevent-delete": "NONE"
                },
+               {
+                       "from": "generic-vnf",
+                       "to": "esr-vnfm",
+                       "label": "uses",
+                       "direction": "OUT",
+                       "multiplicity": "Many2One",
+                       "contains-other-v": "NONE",
+                       "delete-other-v": "NONE",
+                       "SVC-INFRA": "NONE",
+                       "prevent-delete": "!${direction}"
+               },
                {
                        "from": "group-assignment",
                        "to": "tenant",
                        "SVC-INFRA": "${direction}",
                        "prevent-delete": "NONE"
                },
+               {
+                       "from": "line-of-business",
+                       "to": "generic-vnf",
+                       "label": "realizedBy",
+                       "direction": "OUT",
+                       "multiplicity": "Many2Many",
+                       "contains-other-v": "NONE",
+                       "delete-other-v": "NONE",
+                       "SVC-INFRA": "NONE",
+                       "prevent-delete": "NONE"
+               },
                {
                        "from": "logical-link",
                        "to": "lag-link",
                        "SVC-INFRA": "NONE",
                        "prevent-delete": "!${direction}"
                },
+               {
+                       "from": "owning-entity",
+                       "to": "service-instance",
+                       "label": "owns",
+                       "direction": "OUT",
+                       "multiplicity": "One2Many",
+                       "contains-other-v": "NONE",
+                       "delete-other-v": "NONE",
+                       "SVC-INFRA": "NONE",
+                       "prevent-delete": "NONE"
+               },
                {
                        "from": "p-interface",
                        "to": "l-interface",
                        "SVC-INFRA": "${direction}",
                        "prevent-delete": "NONE"
                },
+               {
+                       "from": "platform",
+                       "to": "generic-vnf",
+                       "label": "uses",
+                       "direction": "OUT",
+                       "multiplicity": "Many2Many",
+                       "contains-other-v": "NONE",
+                       "delete-other-v": "NONE",
+                       "SVC-INFRA": "NONE",
+                       "prevent-delete": "NONE"
+               },
                {
                        "from": "port-group",
                        "to": "cvlan-tag",
                        "delete-other-v": "NONE",
                        "SVC-INFRA": "${direction}",
                        "prevent-delete": "NONE"
+               },
+                       {
+                       "from": "project",
+                       "to": "service-instance",
+                       "label": "created",
+                       "direction": "OUT",
+                       "multiplicity": "One2Many",
+                       "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",
+                       "multiplicity": "Many2Many",
                        "contains-other-v": "NONE",
                        "delete-other-v": "NONE",
                        "SVC-INFRA": "NONE",
                        "SVC-INFRA": "NONE",
                        "prevent-delete": "NONE"
                },
-               {
+        {
+            "from": "generic-vnf",
+            "to": "configuration",
+            "label": "uses",
+            "direction": "OUT",
+            "multiplicity": "One2Many",
+            "contains-other-v": "NONE",
+            "delete-other-v": "${direction}",
+            "SVC-INFRA": "NONE",
+            "prevent-delete": "NONE"
+        },
+       {
                        "from": "vf-module",
                        "to": "volume-group",
                        "label": "uses",
                        "SVC-INFRA": "NONE",
                        "prevent-delete": "NONE"
                },
+               {
+                       "from": "cloud-region",
+                       "to": "vip-ipv4-address-list",
+                       "label": "hasIpAddress",
+                       "direction": "OUT",
+                       "multiplicity": "One2Many",
+                       "contains-other-v": "${direction}",
+                       "delete-other-v": "NONE",
+                       "SVC-INFRA": "${direction}",
+                       "prevent-delete": "NONE"
+               },
+               {
+                       "from": "cloud-region",
+                       "to": "vip-ipv6-address-list",
+                       "label": "hasIpAddress",
+                       "direction": "OUT",
+                       "multiplicity": "One2Many",
+                       "contains-other-v": "${direction}",
+                       "delete-other-v": "NONE",
+                       "SVC-INFRA": "${direction}",
+                       "prevent-delete": "NONE"
+               },
+               {
+                       "from": "vip-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": "vip-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": "vip-ipv4-address-list",
+                       "to": "subnet",
+                       "label": "isMemberOf",
+                       "direction": "OUT",
+                       "multiplicity": "Many2Many",
+                       "contains-other-v": "NONE",
+                       "delete-other-v": "NONE",
+                       "SVC-INFRA": "${direction}",
+                       "prevent-delete": "!${direction}"
+               },
+               {
+                       "from": "vip-ipv6-address-list",
+                       "to": "subnet",
+                       "label": "isMemberOf",
+                       "direction": "OUT",
+                       "multiplicity": "Many2Many",
+                       "contains-other-v": "NONE",
+                       "delete-other-v": "NONE",
+                       "SVC-INFRA": "${direction}",
+                       "prevent-delete": "!${direction}"
+               },
                {
                        "from": "l3-interface-ipv4-address-list",
                        "to": "vnfc",