diff options
author | 2017-07-31 15:49:04 -0400 | |
---|---|---|
committer | 2017-07-31 15:52:53 -0400 | |
commit | 9941d0d8597d9d69954819ca9458962aee281b10 (patch) | |
tree | c48876e6a16b10920259287fe3ec51436f94b864 /aai-core/src/main/resources | |
parent | a9320e7933bc04954264d9f3f34b9cb904b61353 (diff) |
[AAI-100 Amsterdam] refactored dbedgerules
Change-Id: I778a56f525cba0ebd39d24d366fc9f0935be71f2
Signed-off-by: Threefoot, Jane (jt6620) <jt6620@att.com>
Diffstat (limited to 'aai-core/src/main/resources')
6 files changed, 7306 insertions, 0 deletions
diff --git a/aai-core/src/main/resources/dbedgerules/DbEdgeRules_v10.json b/aai-core/src/main/resources/dbedgerules/DbEdgeRules_v10.json new file mode 100644 index 00000000..eaca6e58 --- /dev/null +++ b/aai-core/src/main/resources/dbedgerules/DbEdgeRules_v10.json @@ -0,0 +1,1918 @@ +{"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" : "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" : "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" : "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" : "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" : "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" +} +] +}
\ No newline at end of file diff --git a/aai-core/src/main/resources/dbedgerules/DbEdgeRules_v11.json b/aai-core/src/main/resources/dbedgerules/DbEdgeRules_v11.json new file mode 100644 index 00000000..ff777aad --- /dev/null +++ b/aai-core/src/main/resources/dbedgerules/DbEdgeRules_v11.json @@ -0,0 +1,1973 @@ +{"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" : "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" +} +] +}
\ No newline at end of file diff --git a/aai-core/src/main/resources/dbedgerules/DbEdgeRules_v8.json b/aai-core/src/main/resources/dbedgerules/DbEdgeRules_v8.json new file mode 100644 index 00000000..9344b524 --- /dev/null +++ b/aai-core/src/main/resources/dbedgerules/DbEdgeRules_v8.json @@ -0,0 +1,1555 @@ +{"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" : "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" : "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" : "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" : "logical-link", + "label" : "usesLogicalLink", + "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" : "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" : "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-element", + "label" : "startsWith", + "direction" : "OUT", + "multiplicity" : "One2Many", + "isParent" : "true", + "usesResource" : "false", + "hasDelTarget" : "false", + "SVC-INFRA" : "false" +}, +{ + "from" : "model-element", + "to" : "model", + "label" : "isA", + "direction" : "OUT", + "multiplicity" : "Many2One", + "isParent" : "false", + "usesResource" : "false", + "hasDelTarget" : "false", + "SVC-INFRA" : "false" +}, +{ + "from" : "model", + "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" : "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" : "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" : "service-instance", + "to" : "cvlan-tag", + "label" : "hasIPAGFacingVLAN", + "direction" : "OUT", + "multiplicity" : "Many2Many", + "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" : "One2One", + "isParent" : "false", + "usesResource" : "false", + "hasDelTarget" : "true", + "SVC-INFRA" : "true" +} +] +}
\ No newline at end of file diff --git a/aai-core/src/main/resources/dbedgerules/DbEdgeRules_v9.json b/aai-core/src/main/resources/dbedgerules/DbEdgeRules_v9.json new file mode 100644 index 00000000..9183a47c --- /dev/null +++ b/aai-core/src/main/resources/dbedgerules/DbEdgeRules_v9.json @@ -0,0 +1,1841 @@ +{"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" : "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" : "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" : "logical-link", + "label" : "usesLogicalLink", + "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" : "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" : "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" : "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" : "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" : "vlan", + "label" : "isPartOf", + "direction" : "OUT", + "multiplicity" : "Many2Many", + "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" +} +] +}
\ No newline at end of file diff --git a/aai-core/src/main/resources/dbedgerules/conversion/edgerulesTemplate.ftlh b/aai-core/src/main/resources/dbedgerules/conversion/edgerulesTemplate.ftlh new file mode 100644 index 00000000..d5f91e38 --- /dev/null +++ b/aai-core/src/main/resources/dbedgerules/conversion/edgerulesTemplate.ftlh @@ -0,0 +1,8 @@ +{"rules": +[ +<#list wrappedRules as rule> + <#include "ruleTemplate.ftlh"> +<#if rule_has_next>,</#if> +</#list> +] +}
\ No newline at end of file diff --git a/aai-core/src/main/resources/dbedgerules/conversion/ruleTemplate.ftlh b/aai-core/src/main/resources/dbedgerules/conversion/ruleTemplate.ftlh new file mode 100644 index 00000000..397bc36e --- /dev/null +++ b/aai-core/src/main/resources/dbedgerules/conversion/ruleTemplate.ftlh @@ -0,0 +1,11 @@ +{ + "from" : "${rule.from}", + "to" : "${rule.to}", + "label" : "${rule.label}", + "direction" : "${rule.direction}", + "multiplicity" : "${rule.multiplicity}", + "isParent" : "${rule.isParent}", + "usesResource" : "${rule.usesResource}", + "hasDelTarget" : "${rule.hasDelTarget}", + "SVC-INFRA" : "${rule.svcInfra}" +}
\ No newline at end of file |