[AAI-133 Amsterdam] Subnet delete rule fix
[aai/aai-common.git] / aai-core / src / main / resources / dbedgerules / DbEdgeRules_v11.json
1 {
2         "rules": [
3                 {
4                         "from": "availability-zone",
5                         "to": "complex",
6                         "label": "groupsResourcesIn",
7                         "direction": "OUT",
8                         "multiplicity": "Many2Many",
9                         "contains": "NONE",
10                         "delete-other-v": "NONE",
11                         "SVC-INFRA": "NONE",
12                         "prevent-delete": "!${direction}"
13                 },
14                 {
15                         "from": "generic-vnf",
16                         "to": "license-key-resource",
17                         "label": "uses",
18                         "direction": "OUT",
19                         "multiplicity": "Many2Many",
20                         "contains": "NONE",
21                         "delete-other-v": "NONE",
22                         "SVC-INFRA": "NONE",
23                         "prevent-delete": "!${direction}"
24                 },
25                 {
26                         "from": "availability-zone",
27                         "to": "service-capability",
28                         "label": "supportsServiceCapability",
29                         "direction": "OUT",
30                         "multiplicity": "Many2Many",
31                         "contains": "NONE",
32                         "delete-other-v": "NONE",
33                         "SVC-INFRA": "NONE",
34                         "prevent-delete": "!${direction}"
35                 },
36                 {
37                         "from": "cloud-region",
38                         "to": "complex",
39                         "label": "locatedIn",
40                         "direction": "OUT",
41                         "multiplicity": "Many2One",
42                         "contains": "NONE",
43                         "delete-other-v": "NONE",
44                         "SVC-INFRA": "NONE",
45                         "prevent-delete": "!${direction}"
46                 },
47                 {
48                         "from": "cloud-region",
49                         "to": "l3-network",
50                         "label": "uses",
51                         "direction": "OUT",
52                         "multiplicity": "Many2Many",
53                         "contains": "NONE",
54                         "delete-other-v": "NONE",
55                         "SVC-INFRA": "NONE",
56                         "prevent-delete": "NONE"
57                 },
58                 {
59                         "from": "cloud-region",
60                         "to": "tenant",
61                         "label": "has",
62                         "direction": "OUT",
63                         "multiplicity": "One2Many",
64                         "contains": "${direction}",
65                         "delete-other-v": "NONE",
66                         "SVC-INFRA": "!${direction}",
67                         "prevent-delete": "${direction}"
68                 },
69                 {
70                         "from": "cloud-region",
71                         "to": "image",
72                         "label": "has",
73                         "direction": "OUT",
74                         "multiplicity": "One2Many",
75                         "contains": "${direction}",
76                         "delete-other-v": "NONE",
77                         "SVC-INFRA": "NONE",
78                         "prevent-delete": "${direction}"
79                 },
80                 {
81                         "from": "cloud-region",
82                         "to": "flavor",
83                         "label": "has",
84                         "direction": "OUT",
85                         "multiplicity": "One2Many",
86                         "contains": "${direction}",
87                         "delete-other-v": "NONE",
88                         "SVC-INFRA": "NONE",
89                         "prevent-delete": "${direction}"
90                 },
91                 {
92                         "from": "cloud-region",
93                         "to": "availability-zone",
94                         "label": "has",
95                         "direction": "OUT",
96                         "multiplicity": "One2Many",
97                         "contains": "${direction}",
98                         "delete-other-v": "NONE",
99                         "SVC-INFRA": "NONE",
100                         "prevent-delete": "${direction}"
101                 },
102                 {
103                         "from": "cloud-region",
104                         "to": "oam-network",
105                         "label": "has",
106                         "direction": "OUT",
107                         "multiplicity": "One2Many",
108                         "contains": "${direction}",
109                         "delete-other-v": "NONE",
110                         "SVC-INFRA": "NONE",
111                         "prevent-delete": "${direction}"
112                 },
113                 {
114                         "from": "cloud-region",
115                         "to": "dvs-switch",
116                         "label": "has",
117                         "direction": "OUT",
118                         "multiplicity": "One2Many",
119                         "contains": "${direction}",
120                         "delete-other-v": "NONE",
121                         "SVC-INFRA": "NONE",
122                         "prevent-delete": "${direction}"
123                 },
124                 {
125                         "from": "cloud-region",
126                         "to": "volume-group",
127                         "label": "has",
128                         "direction": "OUT",
129                         "multiplicity": "One2Many",
130                         "contains": "${direction}",
131                         "uses-resource": "${direction}",
132                         "delete-other-v": "NONE",
133                         "SVC-INFRA": "NONE",
134                         "prevent-delete": "${direction}"
135                 },
136                 {
137                         "from": "cloud-region",
138                         "to": "group-assignment",
139                         "label": "has",
140                         "direction": "OUT",
141                         "multiplicity": "One2Many",
142                         "contains": "${direction}",
143                         "delete-other-v": "NONE",
144                         "SVC-INFRA": "NONE",
145                         "prevent-delete": "${direction}"
146                 },
147                 {
148                         "from": "cloud-region",
149                         "to": "snapshot",
150                         "label": "has",
151                         "direction": "OUT",
152                         "multiplicity": "One2Many",
153                         "contains": "${direction}",
154                         "delete-other-v": "NONE",
155                         "SVC-INFRA": "NONE",
156                         "prevent-delete": "${direction}"
157                 },
158                 {
159                         "from": "cloud-region",
160                         "to": "zone",
161                         "label": "isMemberOf",
162                         "direction": "OUT",
163                         "multiplicity": "Many2One",
164                         "contains": "NONE",
165                         "delete-other-v": "NONE",
166                         "SVC-INFRA": "NONE",
167                         "prevent-delete": "NONE"
168                 },
169                 {
170                         "from": "complex",
171                         "to": "ctag-pool",
172                         "label": "hasCtagPool",
173                         "direction": "OUT",
174                         "multiplicity": "Many2Many",
175                         "contains": "${direction}",
176                         "delete-other-v": "NONE",
177                         "SVC-INFRA": "NONE",
178                         "prevent-delete": "NONE"
179                 },
180                 {
181                         "from": "complex",
182                         "to": "l3-network",
183                         "label": "usesL3Network",
184                         "direction": "OUT",
185                         "multiplicity": "Many2Many",
186                         "contains": "NONE",
187                         "delete-other-v": "NONE",
188                         "SVC-INFRA": "${direction}",
189                         "prevent-delete": "NONE"
190                 },
191                 {
192                         "from": "ctag-pool",
193                         "to": "availability-zone",
194                         "label": "supportsAvailabilityZone",
195                         "direction": "OUT",
196                         "multiplicity": "Many2Many",
197                         "contains": "NONE",
198                         "delete-other-v": "NONE",
199                         "SVC-INFRA": "NONE",
200                         "prevent-delete": "!${direction}"
201                 },
202                 {
203                         "from": "customer",
204                         "to": "service-subscription",
205                         "label": "subscribesTo",
206                         "direction": "OUT",
207                         "multiplicity": "Many2Many",
208                         "contains": "${direction}",
209                         "delete-other-v": "NONE",
210                         "SVC-INFRA": "!${direction}",
211                         "prevent-delete": "NONE"
212                 },
213                 {
214                         "from": "dvs-switch",
215                         "to": "availability-zone",
216                         "label": "existsIn",
217                         "direction": "OUT",
218                         "multiplicity": "Many2Many",
219                         "contains": "NONE",
220                         "delete-other-v": "NONE",
221                         "SVC-INFRA": "NONE",
222                         "prevent-delete": "!${direction}"
223                 },
224                 {
225                         "from": "generic-vnf",
226                         "to": "l-interface",
227                         "label": "hasLInterface",
228                         "direction": "OUT",
229                         "multiplicity": "Many2Many",
230                         "contains": "${direction}",
231                         "delete-other-v": "NONE",
232                         "SVC-INFRA": "${direction}",
233                         "prevent-delete": "NONE"
234                 },
235                 {
236                         "from": "generic-vnf",
237                         "to": "availability-zone",
238                         "label": "hasAvailabilityZone",
239                         "direction": "OUT",
240                         "multiplicity": "Many2Many",
241                         "contains": "NONE",
242                         "delete-other-v": "NONE",
243                         "SVC-INFRA": "${direction}",
244                         "prevent-delete": "!${direction}"
245                 },
246                 {
247                         "from": "generic-vnf",
248                         "to": "lag-interface",
249                         "label": "hasLAGInterface",
250                         "direction": "OUT",
251                         "multiplicity": "Many2Many",
252                         "contains": "${direction}",
253                         "delete-other-v": "NONE",
254                         "SVC-INFRA": "${direction}",
255                         "prevent-delete": "NONE"
256                 },
257                 {
258                         "from": "generic-vnf",
259                         "to": "l3-network",
260                         "label": "usesL3Network",
261                         "direction": "OUT",
262                         "multiplicity": "Many2Many",
263                         "contains": "NONE",
264                         "uses-resource": "${direction}",
265                         "delete-other-v": "NONE",
266                         "SVC-INFRA": "${direction}",
267                         "prevent-delete": "NONE"
268                 },
269                 {
270                         "from": "generic-vnf",
271                         "to": "pserver",
272                         "label": "runsOnPserver",
273                         "direction": "OUT",
274                         "multiplicity": "Many2Many",
275                         "contains": "NONE",
276                         "uses-resource": "${direction}",
277                         "delete-other-v": "NONE",
278                         "SVC-INFRA": "${direction}",
279                         "prevent-delete": "!${direction}"
280                 },
281                 {
282                         "from": "generic-vnf",
283                         "to": "vnf-image",
284                         "label": "usesVnfImage",
285                         "direction": "OUT",
286                         "multiplicity": "Many2One",
287                         "contains": "NONE",
288                         "delete-other-v": "NONE",
289                         "SVC-INFRA": "${direction}",
290                         "prevent-delete": "!${direction}"
291                 },
292                 {
293                         "from": "generic-vnf",
294                         "to": "vserver",
295                         "label": "runsOnVserver",
296                         "direction": "OUT",
297                         "multiplicity": "One2Many",
298                         "contains": "NONE",
299                         "uses-resource": "${direction}",
300                         "delete-other-v": "NONE",
301                         "SVC-INFRA": "${direction}",
302                         "prevent-delete": "NONE"
303                 },
304                 {
305                         "from": "generic-vnf",
306                         "to": "service-instance",
307                         "label": "hasInstance",
308                         "direction": "OUT",
309                         "multiplicity": "Many2Many",
310                         "contains": "NONE",
311                         "uses-resource": "${direction}",
312                         "delete-other-v": "NONE",
313                         "SVC-INFRA": "${direction}",
314                         "prevent-delete": "NONE"
315                 },
316                 {
317                         "from": "generic-vnf",
318                         "to": "site-pair-set",
319                         "label": "hasSitePairSet",
320                         "direction": "OUT",
321                         "multiplicity": "Many2Many",
322                         "contains": "NONE",
323                         "delete-other-v": "NONE",
324                         "SVC-INFRA": "NONE",
325                         "prevent-delete": "NONE"
326                 },
327                 {
328                         "from": "generic-vnf",
329                         "to": "network-profile",
330                         "label": "hasNetworkProfile",
331                         "direction": "OUT",
332                         "multiplicity": "Many2Many",
333                         "contains": "NONE",
334                         "delete-other-v": "NONE",
335                         "SVC-INFRA": "NONE",
336                         "prevent-delete": "NONE"
337                 },
338                 {
339                         "from": "generic-vnf",
340                         "to": "pnf",
341                         "label": "hostedOn",
342                         "direction": "OUT",
343                         "multiplicity": "Many2Many",
344                         "contains": "NONE",
345                         "delete-other-v": "NONE",
346                         "SVC-INFRA": "NONE",
347                         "prevent-delete": "NONE"
348                 },
349                 {
350                         "from": "group-assignment",
351                         "to": "tenant",
352                         "label": "has",
353                         "direction": "OUT",
354                         "multiplicity": "Many2Many",
355                         "contains": "NONE",
356                         "delete-other-v": "NONE",
357                         "SVC-INFRA": "NONE",
358                         "prevent-delete": "NONE"
359                 },
360                 {
361                         "from": "group-assignment",
362                         "to": "pserver",
363                         "label": "has",
364                         "direction": "OUT",
365                         "multiplicity": "One2Many",
366                         "contains": "NONE",
367                         "delete-other-v": "NONE",
368                         "SVC-INFRA": "NONE",
369                         "prevent-delete": "!${direction}"
370                 },
371                 {
372                         "from": "image",
373                         "to": "metadata",
374                         "label": "hasMetaData",
375                         "direction": "OUT",
376                         "multiplicity": "Many2Many",
377                         "contains": "${direction}",
378                         "delete-other-v": "NONE",
379                         "SVC-INFRA": "NONE",
380                         "prevent-delete": "NONE"
381                 },
382                 {
383                         "from": "image",
384                         "to": "metadatum",
385                         "label": "hasMetaDatum",
386                         "direction": "OUT",
387                         "multiplicity": "Many2Many",
388                         "contains": "${direction}",
389                         "delete-other-v": "NONE",
390                         "SVC-INFRA": "NONE",
391                         "prevent-delete": "NONE"
392                 },
393                 {
394                         "from": "l-interface",
395                         "to": "instance-group",
396                         "label": "isMemberOf",
397                         "direction": "OUT",
398                         "multiplicity": "Many2Many",
399                         "contains": "NONE",
400                         "delete-other-v": "NONE",
401                         "SVC-INFRA": "NONE",
402                         "prevent-delete": "NONE"
403                 },
404                 {
405                         "from": "vnfc",
406                         "to": "instance-group",
407                         "label": "isMemberOf",
408                         "direction": "OUT",
409                         "multiplicity": "Many2Many",
410                         "contains": "NONE",
411                         "delete-other-v": "NONE",
412                         "SVC-INFRA": "NONE",
413                         "prevent-delete": "NONE"
414                 },
415                 {
416                         "from": "l-interface",
417                         "to": "l3-interface-ipv4-address-list",
418                         "label": "hasIpAddress",
419                         "direction": "OUT",
420                         "multiplicity": "Many2Many",
421                         "contains": "${direction}",
422                         "delete-other-v": "NONE",
423                         "SVC-INFRA": "${direction}",
424                         "prevent-delete": "NONE"
425                 },
426                 {
427                         "from": "l-interface",
428                         "to": "l3-interface-ipv6-address-list",
429                         "label": "hasIpAddress",
430                         "direction": "OUT",
431                         "multiplicity": "Many2Many",
432                         "contains": "${direction}",
433                         "delete-other-v": "NONE",
434                         "SVC-INFRA": "${direction}",
435                         "prevent-delete": "NONE"
436                 },
437                 {
438                         "from": "l-interface",
439                         "to": "l-interface",
440                         "label": "has",
441                         "direction": "OUT",
442                         "multiplicity": "One2Many",
443                         "contains": "${direction}",
444                         "delete-other-v": "NONE",
445                         "SVC-INFRA": "${direction}",
446                         "prevent-delete": "NONE"
447                 },
448                 {
449                         "from": "l-interface",
450                         "to": "logical-link",
451                         "label": "usesLogicalLink",
452                         "direction": "OUT",
453                         "multiplicity": "Many2Many",
454                         "contains": "NONE",
455                         "delete-other-v": "${direction}",
456                         "SVC-INFRA": "${direction}",
457                         "prevent-delete": "NONE"
458                 },
459                 {
460                         "from": "lag-interface",
461                         "to": "logical-link",
462                         "label": "uses",
463                         "direction": "OUT",
464                         "multiplicity": "Many2Many",
465                         "contains": "NONE",
466                         "delete-other-v": "${direction}",
467                         "SVC-INFRA": "${direction}",
468                         "prevent-delete": "NONE"
469                 },
470                 {
471                         "from": "l-interface",
472                         "to": "vlan",
473                         "label": "hasVlan",
474                         "direction": "OUT",
475                         "multiplicity": "Many2Many",
476                         "contains": "${direction}",
477                         "delete-other-v": "NONE",
478                         "SVC-INFRA": "NONE",
479                         "prevent-delete": "NONE"
480                 },
481                 {
482                         "from": "l-interface",
483                         "to": "sriov-vf",
484                         "label": "has",
485                         "direction": "OUT",
486                         "multiplicity": "One2One",
487                         "contains": "${direction}",
488                         "delete-other-v": "NONE",
489                         "SVC-INFRA": "NONE",
490                         "prevent-delete": "NONE"
491                 },
492                 {
493                         "from": "l3-interface-ipv4-address-list",
494                         "to": "instance-group",
495                         "label": "isMemberOf",
496                         "direction": "OUT",
497                         "multiplicity": "Many2Many",
498                         "contains": "NONE",
499                         "delete-other-v": "NONE",
500                         "SVC-INFRA": "NONE",
501                         "prevent-delete": "NONE"
502                 },
503                 {
504                         "from": "l3-interface-ipv6-address-list",
505                         "to": "instance-group",
506                         "label": "isMemberOf",
507                         "direction": "OUT",
508                         "multiplicity": "Many2Many",
509                         "contains": "NONE",
510                         "delete-other-v": "NONE",
511                         "SVC-INFRA": "NONE",
512                         "prevent-delete": "NONE"
513                 },
514                 {
515                         "from": "l3-interface-ipv4-address-list",
516                         "to": "l3-network",
517                         "label": "isMemberOf",
518                         "direction": "OUT",
519                         "multiplicity": "Many2Many",
520                         "contains": "NONE",
521                         "delete-other-v": "NONE",
522                         "SVC-INFRA": "${direction}",
523                         "prevent-delete": "NONE"
524                 },
525                 {
526                         "from": "l3-interface-ipv6-address-list",
527                         "to": "l3-network",
528                         "label": "isMemberOf",
529                         "direction": "OUT",
530                         "multiplicity": "Many2Many",
531                         "contains": "NONE",
532                         "delete-other-v": "NONE",
533                         "SVC-INFRA": "${direction}",
534                         "prevent-delete": "NONE"
535                 },
536                 {
537                         "from": "l3-interface-ipv4-address-list",
538                         "to": "subnet",
539                         "label": "isMemberOf",
540                         "direction": "OUT",
541                         "multiplicity": "Many2Many",
542                         "contains": "NONE",
543                         "delete-other-v": "NONE",
544                         "SVC-INFRA": "${direction}",
545                         "prevent-delete": "!${direction}"
546                 },
547                 {
548                         "from": "l3-interface-ipv6-address-list",
549                         "to": "subnet",
550                         "label": "isMemberOf",
551                         "direction": "OUT",
552                         "multiplicity": "Many2Many",
553                         "contains": "NONE",
554                         "delete-other-v": "NONE",
555                         "SVC-INFRA": "${direction}",
556                         "prevent-delete": "!${direction}"
557                 },
558                 {
559                         "from": "l3-network",
560                         "to": "vpn-binding",
561                         "label": "usesVpnBinding",
562                         "direction": "OUT",
563                         "multiplicity": "Many2Many",
564                         "contains": "NONE",
565                         "delete-other-v": "NONE",
566                         "SVC-INFRA": "NONE",
567                         "prevent-delete": "!${direction}"
568                 },
569                 {
570                         "from": "l3-network",
571                         "to": "instance-group",
572                         "label": "memberOf",
573                         "direction": "OUT",
574                         "multiplicity": "Many2Many",
575                         "contains": "NONE",
576                         "delete-other-v": "NONE",
577                         "SVC-INFRA": "NONE",
578                         "prevent-delete": "NONE"
579                 },
580                 {
581                         "from": "l3-network",
582                         "to": "subnet",
583                         "label": "hasSubnet",
584                         "direction": "OUT",
585                         "multiplicity": "Many2Many",
586                         "contains": "${direction}",
587                         "delete-other-v": "NONE",
588                         "SVC-INFRA": "!${direction}",
589                         "prevent-delete": "NONE"
590                 },
591                 {
592                         "from": "l3-network",
593                         "to": "service-instance",
594                         "label": "hasInstance",
595                         "direction": "OUT",
596                         "multiplicity": "Many2Many",
597                         "contains": "NONE",
598                         "delete-other-v": "NONE",
599                         "SVC-INFRA": "!${direction}",
600                         "prevent-delete": "NONE"
601                 },
602                 {
603                         "from": "l3-network",
604                         "to": "ctag-assignment",
605                         "label": "hasCtagAssignment",
606                         "direction": "OUT",
607                         "multiplicity": "Many2Many",
608                         "contains": "${direction}",
609                         "delete-other-v": "NONE",
610                         "SVC-INFRA": "${direction}",
611                         "prevent-delete": "NONE"
612                 },
613                 {
614                         "from": "l3-network",
615                         "to": "network-policy",
616                         "label": "uses",
617                         "direction": "OUT",
618                         "multiplicity": "Many2Many",
619                         "contains": "NONE",
620                         "delete-other-v": "NONE",
621                         "SVC-INFRA": "${direction}",
622                         "prevent-delete": "NONE"
623                 },
624                 {
625                         "from": "l3-network",
626                         "to": "segmentation-assignment",
627                         "label": "has",
628                         "direction": "OUT",
629                         "multiplicity": "One2Many",
630                         "contains": "${direction}",
631                         "delete-other-v": "NONE",
632                         "SVC-INFRA": "NONE",
633                         "prevent-delete": "NONE"
634                 },
635                 {
636                         "from": "l3-network",
637                         "to": "route-table-reference",
638                         "label": "uses",
639                         "direction": "OUT",
640                         "multiplicity": "Many2Many",
641                         "contains": "NONE",
642                         "delete-other-v": "NONE",
643                         "SVC-INFRA": "NONE",
644                         "prevent-delete": "NONE"
645                 },
646                 {
647                         "from": "lag-interface",
648                         "to": "lag-link",
649                         "label": "usesLAGLink",
650                         "direction": "OUT",
651                         "multiplicity": "Many2Many",
652                         "contains": "NONE",
653                         "uses-resource": "${direction}",
654                         "delete-other-v": "${direction}",
655                         "SVC-INFRA": "${direction}",
656                         "prevent-delete": "NONE"
657                 },
658                 {
659                         "from": "lag-interface",
660                         "to": "p-interface",
661                         "label": "usesPInterface",
662                         "direction": "OUT",
663                         "multiplicity": "Many2Many",
664                         "contains": "NONE",
665                         "uses-resource": "${direction}",
666                         "delete-other-v": "NONE",
667                         "SVC-INFRA": "${direction}",
668                         "prevent-delete": "NONE"
669                 },
670                 {
671                         "from": "lag-interface",
672                         "to": "l-interface",
673                         "label": "hasLInterface",
674                         "direction": "OUT",
675                         "multiplicity": "Many2Many",
676                         "contains": "${direction}",
677                         "delete-other-v": "NONE",
678                         "SVC-INFRA": "${direction}",
679                         "prevent-delete": "NONE"
680                 },
681                 {
682                         "from": "logical-link",
683                         "to": "lag-link",
684                         "label": "usesLAGLink",
685                         "direction": "OUT",
686                         "multiplicity": "Many2Many",
687                         "contains": "NONE",
688                         "uses-resource": "${direction}",
689                         "delete-other-v": "NONE",
690                         "SVC-INFRA": "${direction}",
691                         "prevent-delete": "NONE"
692                 },
693                 {
694                         "from": "logical-link",
695                         "to": "pnf",
696                         "label": "bridgedTo",
697                         "direction": "OUT",
698                         "multiplicity": "Many2Many",
699                         "contains": "NONE",
700                         "delete-other-v": "NONE",
701                         "SVC-INFRA": "NONE",
702                         "prevent-delete": "NONE"
703                 },
704                 {
705                         "from": "logical-link",
706                         "to": "logical-link",
707                         "label": "uses",
708                         "direction": "OUT",
709                         "multiplicity": "One2Many",
710                         "contains": "NONE",
711                         "delete-other-v": "NONE",
712                         "SVC-INFRA": "${direction}",
713                         "prevent-delete": "NONE"
714                 },
715                 {
716                         "from": "model",
717                         "to": "model-ver",
718                         "label": "has",
719                         "direction": "OUT",
720                         "multiplicity": "One2Many",
721                         "contains": "${direction}",
722                         "delete-other-v": "NONE",
723                         "SVC-INFRA": "NONE",
724                         "prevent-delete": "NONE"
725                 },
726                 {
727                         "from": "model-ver",
728                         "to": "model-element",
729                         "label": "startsWith",
730                         "direction": "OUT",
731                         "multiplicity": "One2Many",
732                         "contains": "${direction}",
733                         "delete-other-v": "NONE",
734                         "SVC-INFRA": "NONE",
735                         "prevent-delete": "NONE"
736                 },
737                 {
738                         "from": "model-element",
739                         "to": "model-ver",
740                         "label": "isA",
741                         "direction": "OUT",
742                         "multiplicity": "Many2One",
743                         "contains": "NONE",
744                         "delete-other-v": "NONE",
745                         "SVC-INFRA": "NONE",
746                         "prevent-delete": "!${direction}"
747                 },
748                 {
749                         "from": "model-ver",
750                         "to": "metadatum",
751                         "label": "hasMetaData",
752                         "direction": "OUT",
753                         "multiplicity": "One2Many",
754                         "contains": "${direction}",
755                         "delete-other-v": "NONE",
756                         "SVC-INFRA": "NONE",
757                         "prevent-delete": "NONE"
758                 },
759                 {
760                         "from": "model-element",
761                         "to": "model-element",
762                         "label": "connectsTo",
763                         "direction": "OUT",
764                         "multiplicity": "One2Many",
765                         "contains": "${direction}",
766                         "delete-other-v": "NONE",
767                         "SVC-INFRA": "NONE",
768                         "prevent-delete": "NONE"
769                 },
770                 {
771                         "from": "model-element",
772                         "to": "model-constraint",
773                         "label": "uses",
774                         "direction": "OUT",
775                         "multiplicity": "One2Many",
776                         "contains": "${direction}",
777                         "delete-other-v": "NONE",
778                         "SVC-INFRA": "NONE",
779                         "prevent-delete": "NONE"
780                 },
781                 {
782                         "from": "model-element",
783                         "to": "constrained-element-set",
784                         "label": "connectsTo",
785                         "direction": "OUT",
786                         "multiplicity": "One2Many",
787                         "contains": "${direction}",
788                         "delete-other-v": "NONE",
789                         "SVC-INFRA": "NONE",
790                         "prevent-delete": "NONE"
791                 },
792                 {
793                         "from": "model-constraint",
794                         "to": "constrained-element-set",
795                         "label": "uses",
796                         "direction": "OUT",
797                         "multiplicity": "One2Many",
798                         "contains": "${direction}",
799                         "delete-other-v": "NONE",
800                         "SVC-INFRA": "NONE",
801                         "prevent-delete": "NONE"
802                 },
803                 {
804                         "from": "constrained-element-set",
805                         "to": "element-choice-set",
806                         "label": "uses",
807                         "direction": "OUT",
808                         "multiplicity": "One2Many",
809                         "contains": "${direction}",
810                         "delete-other-v": "NONE",
811                         "SVC-INFRA": "NONE",
812                         "prevent-delete": "NONE"
813                 },
814                 {
815                         "from": "element-choice-set",
816                         "to": "model-element",
817                         "label": "has",
818                         "direction": "OUT",
819                         "multiplicity": "One2Many",
820                         "contains": "${direction}",
821                         "delete-other-v": "NONE",
822                         "SVC-INFRA": "NONE",
823                         "prevent-delete": "NONE"
824                 },
825                 {
826                         "from": "named-query",
827                         "to": "model",
828                         "label": "relatedTo",
829                         "direction": "OUT",
830                         "multiplicity": "One2Many",
831                         "contains": "NONE",
832                         "delete-other-v": "NONE",
833                         "SVC-INFRA": "NONE",
834                         "prevent-delete": "!${direction}"
835                 },
836                 {
837                         "from": "named-query",
838                         "to": "named-query-element",
839                         "label": "startsWith",
840                         "direction": "OUT",
841                         "multiplicity": "One2One",
842                         "contains": "${direction}",
843                         "delete-other-v": "NONE",
844                         "SVC-INFRA": "NONE",
845                         "prevent-delete": "NONE"
846                 },
847                 {
848                         "from": "named-query-element",
849                         "to": "named-query-element",
850                         "label": "connectsTo",
851                         "direction": "OUT",
852                         "multiplicity": "Many2Many",
853                         "contains": "${direction}",
854                         "delete-other-v": "NONE",
855                         "SVC-INFRA": "NONE",
856                         "prevent-delete": "NONE"
857                 },
858                 {
859                         "from": "named-query-element",
860                         "to": "model",
861                         "label": "isA",
862                         "direction": "OUT",
863                         "multiplicity": "Many2One",
864                         "contains": "NONE",
865                         "delete-other-v": "NONE",
866                         "SVC-INFRA": "NONE",
867                         "prevent-delete": "!${direction}"
868                 },
869                 {
870                         "from": "named-query-element",
871                         "to": "property-constraint",
872                         "label": "uses",
873                         "direction": "OUT",
874                         "multiplicity": "One2Many",
875                         "contains": "${direction}",
876                         "delete-other-v": "NONE",
877                         "SVC-INFRA": "NONE",
878                         "prevent-delete": "NONE"
879                 },
880                 {
881                         "from": "named-query-element",
882                         "to": "related-lookup",
883                         "label": "uses",
884                         "direction": "OUT",
885                         "multiplicity": "One2Many",
886                         "contains": "${direction}",
887                         "delete-other-v": "NONE",
888                         "SVC-INFRA": "NONE",
889                         "prevent-delete": "NONE"
890                 },
891                 {
892                         "from": "instance-group",
893                         "to": "model",
894                         "label": "targets",
895                         "direction": "OUT",
896                         "multiplicity": "Many2Many",
897                         "contains": "NONE",
898                         "delete-other-v": "NONE",
899                         "SVC-INFRA": "NONE",
900                         "prevent-delete": "!${direction}"
901                 },
902                 {
903                         "from": "newvce",
904                         "to": "l-interface",
905                         "label": "hasLInterface",
906                         "direction": "OUT",
907                         "multiplicity": "Many2Many",
908                         "contains": "${direction}",
909                         "delete-other-v": "NONE",
910                         "SVC-INFRA": "NONE",
911                         "prevent-delete": "NONE"
912                 },
913                 {
914                         "from": "oam-network",
915                         "to": "complex",
916                         "label": "definedFor",
917                         "direction": "OUT",
918                         "multiplicity": "Many2Many",
919                         "contains": "NONE",
920                         "delete-other-v": "NONE",
921                         "SVC-INFRA": "NONE",
922                         "prevent-delete": "!${direction}"
923                 },
924                 {
925                         "from": "oam-network",
926                         "to": "service-capability",
927                         "label": "supportsServiceCapability",
928                         "direction": "OUT",
929                         "multiplicity": "Many2Many",
930                         "contains": "NONE",
931                         "delete-other-v": "NONE",
932                         "SVC-INFRA": "NONE",
933                         "prevent-delete": "!${direction}"
934                 },
935                 {
936                         "from": "p-interface",
937                         "to": "l-interface",
938                         "label": "hasLInterface",
939                         "direction": "OUT",
940                         "multiplicity": "Many2Many",
941                         "contains": "${direction}",
942                         "delete-other-v": "NONE",
943                         "SVC-INFRA": "${direction}",
944                         "prevent-delete": "NONE"
945                 },
946                 {
947                         "from": "p-interface",
948                         "to": "physical-link",
949                         "label": "usesPhysicalLink",
950                         "direction": "OUT",
951                         "multiplicity": "Many2Many",
952                         "contains": "NONE",
953                         "delete-other-v": "${direction}",
954                         "SVC-INFRA": "NONE",
955                         "prevent-delete": "NONE"
956                 },
957                 {
958                         "from": "p-interface",
959                         "to": "logical-link",
960                         "label": "usesLogicalLink",
961                         "direction": "OUT",
962                         "multiplicity": "Many2One",
963                         "contains": "NONE",
964                         "delete-other-v": "NONE",
965                         "SVC-INFRA": "${direction}",
966                         "prevent-delete": "NONE"
967                 },
968                 {
969                         "from": "port-group",
970                         "to": "cvlan-tag",
971                         "label": "hasCTag",
972                         "direction": "OUT",
973                         "multiplicity": "Many2Many",
974                         "contains": "${direction}",
975                         "uses-resource": "${direction}",
976                         "delete-other-v": "NONE",
977                         "SVC-INFRA": "${direction}",
978                         "prevent-delete": "NONE"
979                 },
980                 {
981                         "from": "pserver",
982                         "to": "complex",
983                         "label": "locatedIn",
984                         "direction": "OUT",
985                         "multiplicity": "Many2One",
986                         "contains": "NONE",
987                         "delete-other-v": "NONE",
988                         "SVC-INFRA": "${direction}",
989                         "prevent-delete": "!${direction}"
990                 },
991                 {
992                         "from": "pserver",
993                         "to": "cloud-region",
994                         "label": "locatedIn",
995                         "direction": "OUT",
996                         "multiplicity": "Many2One",
997                         "contains": "NONE",
998                         "delete-other-v": "NONE",
999                         "SVC-INFRA": "${direction}",
1000                         "prevent-delete": "NONE"
1001                 },
1002                 {
1003                         "from": "pserver",
1004                         "to": "availability-zone",
1005                         "label": "existsIn",
1006                         "direction": "OUT",
1007                         "multiplicity": "Many2One",
1008                         "contains": "NONE",
1009                         "delete-other-v": "NONE",
1010                         "SVC-INFRA": "${direction}",
1011                         "prevent-delete": "!${direction}"
1012                 },
1013                 {
1014                         "from": "pserver",
1015                         "to": "lag-interface",
1016                         "label": "hasLAGInterface",
1017                         "direction": "OUT",
1018                         "multiplicity": "Many2Many",
1019                         "contains": "${direction}",
1020                         "delete-other-v": "NONE",
1021                         "SVC-INFRA": "${direction}",
1022                         "prevent-delete": "NONE"
1023                 },
1024                 {
1025                         "from": "pserver",
1026                         "to": "p-interface",
1027                         "label": "hasPinterface",
1028                         "direction": "OUT",
1029                         "multiplicity": "Many2Many",
1030                         "contains": "${direction}",
1031                         "uses-resource": "${direction}",
1032                         "delete-other-v": "NONE",
1033                         "SVC-INFRA": "${direction}",
1034                         "prevent-delete": "NONE"
1035                 },
1036                 {
1037                         "from": "pserver",
1038                         "to": "zone",
1039                         "label": "isMemberOf",
1040                         "direction": "OUT",
1041                         "multiplicity": "Many2One",
1042                         "contains": "NONE",
1043                         "delete-other-v": "NONE",
1044                         "SVC-INFRA": "NONE",
1045                         "prevent-delete": "NONE"
1046                 },
1047                 {
1048                         "from": "pnf",
1049                         "to": "p-interface",
1050                         "label": "hasPinterface",
1051                         "direction": "OUT",
1052                         "multiplicity": "Many2Many",
1053                         "contains": "${direction}",
1054                         "uses-resource": "${direction}",
1055                         "delete-other-v": "NONE",
1056                         "SVC-INFRA": "${direction}",
1057                         "prevent-delete": "NONE"
1058                 },
1059                 {
1060                         "from": "pnf",
1061                         "to": "lag-interface",
1062                         "label": "has",
1063                         "direction": "OUT",
1064                         "multiplicity": "One2Many",
1065                         "contains": "${direction}",
1066                         "delete-other-v": "NONE",
1067                         "SVC-INFRA": "${direction}",
1068                         "prevent-delete": "NONE"
1069                 },
1070                 {
1071                         "from": "pnf",
1072                         "to": "complex",
1073                         "label": "locatedIn",
1074                         "direction": "OUT",
1075                         "multiplicity": "Many2One",
1076                         "contains": "NONE",
1077                         "delete-other-v": "NONE",
1078                         "SVC-INFRA": "NONE",
1079                         "prevent-delete": "!${direction}"
1080                 },
1081                 {
1082                         "from": "pnf",
1083                         "to": "instance-group",
1084                         "label": "isMemberOf",
1085                         "direction": "OUT",
1086                         "multiplicity": "Many2Many",
1087                         "contains": "NONE",
1088                         "delete-other-v": "NONE",
1089                         "SVC-INFRA": "NONE",
1090                         "prevent-delete": "NONE"
1091                 },
1092                 {
1093                         "from": "pnf",
1094                         "to": "zone",
1095                         "label": "isMemberOf",
1096                         "direction": "OUT",
1097                         "multiplicity": "Many2One",
1098                         "contains": "NONE",
1099                         "delete-other-v": "NONE",
1100                         "SVC-INFRA": "NONE",
1101                         "prevent-delete": "NONE"
1102                 },
1103                 {
1104                         "from": "service-instance",
1105                         "to": "zone",
1106                         "label": "locatedIn",
1107                         "direction": "OUT",
1108                         "multiplicity": "Many2One",
1109                         "contains": "NONE",
1110                         "uses-resource": "${direction}",
1111                         "delete-other-v": "NONE",
1112                         "SVC-INFRA": "${direction}",
1113                         "prevent-delete": "NONE"
1114                 },
1115                 {
1116                         "from": "service-instance",
1117                         "to": "cvlan-tag",
1118                         "label": "hasIPAGFacingVLAN",
1119                         "direction": "OUT",
1120                         "multiplicity": "Many2Many",
1121                         "contains": "NONE",
1122                         "uses-resource": "${direction}",
1123                         "delete-other-v": "NONE",
1124                         "SVC-INFRA": "NONE",
1125                         "prevent-delete": "NONE"
1126                 },
1127                 {
1128                         "from": "service-instance",
1129                         "to": "pnf",
1130                         "label": "uses",
1131                         "direction": "OUT",
1132                         "multiplicity": "One2Many",
1133                         "contains": "NONE",
1134                         "uses-resource": "${direction}",
1135                         "delete-other-v": "NONE",
1136                         "SVC-INFRA": "NONE",
1137                         "prevent-delete": "NONE"
1138                 },
1139                 {
1140                         "from": "service-subscription",
1141                         "to": "service-instance",
1142                         "label": "hasInstance",
1143                         "direction": "OUT",
1144                         "multiplicity": "Many2Many",
1145                         "contains": "${direction}",
1146                         "delete-other-v": "NONE",
1147                         "SVC-INFRA": "!${direction}",
1148                         "prevent-delete": "NONE"
1149                 },
1150                 {
1151                         "from": "site-pair-set",
1152                         "to": "routing-instance",
1153                         "label": "hasRoutingInstance",
1154                         "direction": "OUT",
1155                         "multiplicity": "Many2Many",
1156                         "contains": "${direction}",
1157                         "delete-other-v": "NONE",
1158                         "SVC-INFRA": "NONE",
1159                         "prevent-delete": "NONE"
1160                 },
1161                 {
1162                         "from": "routing-instance",
1163                         "to": "site-pair",
1164                         "label": "hasSitePair",
1165                         "direction": "OUT",
1166                         "multiplicity": "Many2Many",
1167                         "contains": "${direction}",
1168                         "delete-other-v": "NONE",
1169                         "SVC-INFRA": "NONE",
1170                         "prevent-delete": "NONE"
1171                 },
1172                 {
1173                         "from": "site-pair",
1174                         "to": "class-of-service",
1175                         "label": "hasClassOfService",
1176                         "direction": "OUT",
1177                         "multiplicity": "Many2Many",
1178                         "contains": "${direction}",
1179                         "delete-other-v": "NONE",
1180                         "SVC-INFRA": "NONE",
1181                         "prevent-delete": "NONE"
1182                 },
1183                 {
1184                         "from": "tenant",
1185                         "to": "l3-network",
1186                         "label": "usesL3Network",
1187                         "direction": "OUT",
1188                         "multiplicity": "Many2Many",
1189                         "contains": "NONE",
1190                         "delete-other-v": "NONE",
1191                         "SVC-INFRA": "NONE",
1192                         "prevent-delete": "NONE"
1193                 },
1194                 {
1195                         "from": "tenant",
1196                         "to": "service-subscription",
1197                         "label": "relatedTo",
1198                         "direction": "OUT",
1199                         "multiplicity": "Many2Many",
1200                         "contains": "NONE",
1201                         "delete-other-v": "NONE",
1202                         "SVC-INFRA": "NONE",
1203                         "prevent-delete": "NONE"
1204                 },
1205                 {
1206                         "from": "tenant",
1207                         "to": "vserver",
1208                         "label": "owns",
1209                         "direction": "OUT",
1210                         "multiplicity": "One2Many",
1211                         "contains": "${direction}",
1212                         "delete-other-v": "NONE",
1213                         "SVC-INFRA": "!${direction}",
1214                         "prevent-delete": "${direction}"
1215                 },
1216                 {
1217                         "from": "vce",
1218                         "to": "availability-zone",
1219                         "label": "hasAvailabilityZone",
1220                         "direction": "OUT",
1221                         "multiplicity": "Many2Many",
1222                         "contains": "NONE",
1223                         "delete-other-v": "NONE",
1224                         "SVC-INFRA": "NONE",
1225                         "prevent-delete": "!${direction}"
1226                 },
1227                 {
1228                         "from": "vce",
1229                         "to": "complex",
1230                         "label": "locatedIn",
1231                         "direction": "OUT",
1232                         "multiplicity": "Many2Many",
1233                         "contains": "NONE",
1234                         "delete-other-v": "NONE",
1235                         "SVC-INFRA": "${direction}",
1236                         "prevent-delete": "!${direction}"
1237                 },
1238                 {
1239                         "from": "vce",
1240                         "to": "port-group",
1241                         "label": "hasPortGroup",
1242                         "direction": "OUT",
1243                         "multiplicity": "Many2Many",
1244                         "contains": "${direction}",
1245                         "uses-resource": "${direction}",
1246                         "delete-other-v": "NONE",
1247                         "SVC-INFRA": "${direction}",
1248                         "prevent-delete": "NONE"
1249                 },
1250                 {
1251                         "from": "vce",
1252                         "to": "vserver",
1253                         "label": "runsOnVserver",
1254                         "direction": "OUT",
1255                         "multiplicity": "Many2Many",
1256                         "contains": "NONE",
1257                         "uses-resource": "${direction}",
1258                         "delete-other-v": "NONE",
1259                         "SVC-INFRA": "${direction}",
1260                         "prevent-delete": "NONE"
1261                 },
1262                 {
1263                         "from": "vce",
1264                         "to": "service-instance",
1265                         "label": "hasServiceInstance",
1266                         "direction": "OUT",
1267                         "multiplicity": "Many2Many",
1268                         "contains": "NONE",
1269                         "delete-other-v": "NONE",
1270                         "SVC-INFRA": "!${direction}",
1271                         "prevent-delete": "NONE"
1272                 },
1273                 {
1274                         "from": "virtual-data-center",
1275                         "to": "generic-vnf",
1276                         "label": "hasVNF",
1277                         "direction": "OUT",
1278                         "multiplicity": "Many2Many",
1279                         "contains": "NONE",
1280                         "delete-other-v": "NONE",
1281                         "SVC-INFRA": "!${direction}",
1282                         "prevent-delete": "NONE"
1283                 },
1284                 {
1285                         "from": "vlan",
1286                         "to": "l3-interface-ipv4-address-list",
1287                         "label": "hasIpAddress",
1288                         "direction": "OUT",
1289                         "multiplicity": "Many2Many",
1290                         "contains": "${direction}",
1291                         "delete-other-v": "NONE",
1292                         "SVC-INFRA": "${direction}",
1293                         "prevent-delete": "NONE"
1294                 },
1295                 {
1296                         "from": "vlan",
1297                         "to": "l3-interface-ipv6-address-list",
1298                         "label": "hasIpAddress",
1299                         "direction": "OUT",
1300                         "multiplicity": "Many2Many",
1301                         "contains": "${direction}",
1302                         "delete-other-v": "NONE",
1303                         "SVC-INFRA": "${direction}",
1304                         "prevent-delete": "NONE"
1305                 },
1306                 {
1307                         "from": "vpe",
1308                         "to": "complex",
1309                         "label": "locatedIn",
1310                         "direction": "OUT",
1311                         "multiplicity": "Many2Many",
1312                         "contains": "NONE",
1313                         "delete-other-v": "NONE",
1314                         "SVC-INFRA": "NONE",
1315                         "prevent-delete": "!${direction}"
1316                 },
1317                 {
1318                         "from": "vpe",
1319                         "to": "ctag-pool",
1320                         "label": "usesCtagPool",
1321                         "direction": "OUT",
1322                         "multiplicity": "Many2Many",
1323                         "contains": "NONE",
1324                         "delete-other-v": "NONE",
1325                         "SVC-INFRA": "NONE",
1326                         "prevent-delete": "NONE"
1327                 },
1328                 {
1329                         "from": "vpe",
1330                         "to": "l-interface",
1331                         "label": "hasLInterface",
1332                         "direction": "OUT",
1333                         "multiplicity": "Many2Many",
1334                         "contains": "${direction}",
1335                         "delete-other-v": "NONE",
1336                         "SVC-INFRA": "NONE",
1337                         "prevent-delete": "NONE"
1338                 },
1339                 {
1340                         "from": "vpe",
1341                         "to": "lag-interface",
1342                         "label": "hasLAGInterface",
1343                         "direction": "OUT",
1344                         "multiplicity": "Many2Many",
1345                         "contains": "${direction}",
1346                         "delete-other-v": "NONE",
1347                         "SVC-INFRA": "NONE",
1348                         "prevent-delete": "NONE"
1349                 },
1350                 {
1351                         "from": "vpe",
1352                         "to": "vserver",
1353                         "label": "runsOnVserver",
1354                         "direction": "OUT",
1355                         "multiplicity": "Many2Many",
1356                         "contains": "NONE",
1357                         "uses-resource": "${direction}",
1358                         "delete-other-v": "NONE",
1359                         "SVC-INFRA": "NONE",
1360                         "prevent-delete": "NONE"
1361                 },
1362                 {
1363                         "from": "vpls-pe",
1364                         "to": "complex",
1365                         "label": "locatedIn",
1366                         "direction": "OUT",
1367                         "multiplicity": "Many2Many",
1368                         "contains": "NONE",
1369                         "delete-other-v": "NONE",
1370                         "SVC-INFRA": "NONE",
1371                         "prevent-delete": "!${direction}"
1372                 },
1373                 {
1374                         "from": "vpls-pe",
1375                         "to": "ctag-pool",
1376                         "label": "usesCtagPool",
1377                         "direction": "OUT",
1378                         "multiplicity": "Many2Many",
1379                         "contains": "NONE",
1380                         "delete-other-v": "NONE",
1381                         "SVC-INFRA": "NONE",
1382                         "prevent-delete": "NONE"
1383                 },
1384                 {
1385                         "from": "vpls-pe",
1386                         "to": "p-interface",
1387                         "label": "hasPinterface",
1388                         "direction": "OUT",
1389                         "multiplicity": "Many2Many",
1390                         "contains": "${direction}",
1391                         "delete-other-v": "NONE",
1392                         "SVC-INFRA": "NONE",
1393                         "prevent-delete": "NONE"
1394                 },
1395                 {
1396                         "from": "vpls-pe",
1397                         "to": "lag-interface",
1398                         "label": "hasLAGinterface",
1399                         "direction": "OUT",
1400                         "multiplicity": "Many2Many",
1401                         "contains": "${direction}",
1402                         "delete-other-v": "NONE",
1403                         "SVC-INFRA": "NONE",
1404                         "prevent-delete": "NONE"
1405                 },
1406                 {
1407                         "from": "vserver",
1408                         "to": "flavor",
1409                         "label": "hasFlavor",
1410                         "direction": "OUT",
1411                         "multiplicity": "Many2One",
1412                         "contains": "NONE",
1413                         "delete-other-v": "NONE",
1414                         "SVC-INFRA": "${direction}",
1415                         "prevent-delete": "!${direction}"
1416                 },
1417                 {
1418                         "from": "vserver",
1419                         "to": "image",
1420                         "label": "hasImage",
1421                         "direction": "OUT",
1422                         "multiplicity": "Many2One",
1423                         "contains": "NONE",
1424                         "delete-other-v": "NONE",
1425                         "SVC-INFRA": "${direction}",
1426                         "prevent-delete": "!${direction}"
1427                 },
1428                 {
1429                         "from": "vserver",
1430                         "to": "ipaddress",
1431                         "label": "hasIpAddress",
1432                         "direction": "OUT",
1433                         "multiplicity": "Many2Many",
1434                         "contains": "${direction}",
1435                         "uses-resource": "${direction}",
1436                         "delete-other-v": "NONE",
1437                         "SVC-INFRA": "NONE",
1438                         "prevent-delete": "NONE"
1439                 },
1440                 {
1441                         "from": "vserver",
1442                         "to": "l-interface",
1443                         "label": "hasLInterface",
1444                         "direction": "OUT",
1445                         "multiplicity": "Many2Many",
1446                         "contains": "${direction}",
1447                         "delete-other-v": "NONE",
1448                         "SVC-INFRA": "${direction}",
1449                         "prevent-delete": "NONE"
1450                 },
1451                 {
1452                         "from": "vserver",
1453                         "to": "pserver",
1454                         "label": "runsOnPserver",
1455                         "direction": "OUT",
1456                         "multiplicity": "Many2One",
1457                         "contains": "NONE",
1458                         "uses-resource": "${direction}",
1459                         "delete-other-v": "NONE",
1460                         "SVC-INFRA": "${direction}",
1461                         "prevent-delete": "!${direction}"
1462                 },
1463                 {
1464                         "from": "vserver",
1465                         "to": "volume",
1466                         "label": "hasVolume",
1467                         "direction": "OUT",
1468                         "multiplicity": "Many2Many",
1469                         "contains": "${direction}",
1470                         "uses-resource": "${direction}",
1471                         "delete-other-v": "NONE",
1472                         "SVC-INFRA": "${direction}",
1473                         "prevent-delete": "NONE"
1474                 },
1475                 {
1476                         "from": "vserver",
1477                         "to": "vnfc",
1478                         "label": "hosts",
1479                         "direction": "OUT",
1480                         "multiplicity": "Many2Many",
1481                         "contains": "NONE",
1482                         "uses-resource": "${direction}",
1483                         "delete-other-v": "NONE",
1484                         "SVC-INFRA": "${direction}",
1485                         "prevent-delete": "NONE"
1486                 },
1487                 {
1488                         "from": "vserver",
1489                         "to": "snapshot",
1490                         "label": "uses",
1491                         "direction": "OUT",
1492                         "multiplicity": "One2One",
1493                         "contains": "NONE",
1494                         "delete-other-v": "NONE",
1495                         "SVC-INFRA": "${direction}",
1496                         "prevent-delete": "NONE"
1497                 },
1498                 {
1499                         "from": "service-instance",
1500                         "to": "connector",
1501                         "label": "uses",
1502                         "direction": "OUT",
1503                         "multiplicity": "Many2Many",
1504                         "contains": "NONE",
1505                         "uses-resource": "${direction}",
1506                         "delete-other-v": "NONE",
1507                         "SVC-INFRA": "NONE",
1508                         "prevent-delete": "NONE"
1509                 },
1510                 {
1511                         "from": "service-instance",
1512                         "to": "metadatum",
1513                         "label": "hasMetaData",
1514                         "direction": "OUT",
1515                         "multiplicity": "Many2Many",
1516                         "contains": "${direction}",
1517                         "delete-other-v": "NONE",
1518                         "SVC-INFRA": "NONE",
1519                         "prevent-delete": "NONE"
1520                 },
1521                 {
1522                         "from": "service-instance",
1523                         "to": "logical-link",
1524                         "label": "uses",
1525                         "direction": "OUT",
1526                         "multiplicity": "Many2Many",
1527                         "contains": "NONE",
1528                         "delete-other-v": "${direction}",
1529                         "SVC-INFRA": "NONE",
1530                         "prevent-delete": "NONE"
1531                 },
1532                 {
1533                         "from": "service-instance",
1534                         "to": "vlan",
1535                         "label": "dependsOn",
1536                         "direction": "OUT",
1537                         "multiplicity": "One2Many",
1538                         "contains": "NONE",
1539                         "uses-resource": "${direction}",
1540                         "delete-other-v": "NONE",
1541                         "SVC-INFRA": "NONE",
1542                         "prevent-delete": "NONE"
1543                 },
1544                 {
1545                         "from": "service-instance",
1546                         "to": "service-instance",
1547                         "label": "dependsOn",
1548                         "direction": "OUT",
1549                         "multiplicity": "One2Many",
1550                         "contains": "NONE",
1551                         "uses-resource": "${direction}",
1552                         "delete-other-v": "NONE",
1553                         "SVC-INFRA": "NONE",
1554                         "prevent-delete": "NONE"
1555                 },
1556                 {
1557                         "from": "connector",
1558                         "to": "virtual-data-center",
1559                         "label": "contains",
1560                         "direction": "OUT",
1561                         "multiplicity": "Many2Many",
1562                         "contains": "NONE",
1563                         "delete-other-v": "NONE",
1564                         "SVC-INFRA": "NONE",
1565                         "prevent-delete": "NONE"
1566                 },
1567                 {
1568                         "from": "connector",
1569                         "to": "metadatum",
1570                         "label": "hasMetaData",
1571                         "direction": "OUT",
1572                         "multiplicity": "Many2Many",
1573                         "contains": "${direction}",
1574                         "delete-other-v": "NONE",
1575                         "SVC-INFRA": "NONE",
1576                         "prevent-delete": "NONE"
1577                 },
1578                 {
1579                         "from": "virtual-data-center",
1580                         "to": "logical-link",
1581                         "label": "contains",
1582                         "direction": "OUT",
1583                         "multiplicity": "Many2Many",
1584                         "contains": "NONE",
1585                         "uses-resource": "${direction}",
1586                         "delete-other-v": "NONE",
1587                         "SVC-INFRA": "NONE",
1588                         "prevent-delete": "NONE"
1589                 },
1590                 {
1591                         "from": "logical-link",
1592                         "to": "generic-vnf",
1593                         "label": "bridgedTo",
1594                         "direction": "OUT",
1595                         "multiplicity": "Many2Many",
1596                         "contains": "NONE",
1597                         "delete-other-v": "NONE",
1598                         "SVC-INFRA": "NONE",
1599                         "prevent-delete": "NONE"
1600                 },
1601                 {
1602                         "from": "logical-link",
1603                         "to": "pserver",
1604                         "label": "bridgedTo",
1605                         "direction": "OUT",
1606                         "multiplicity": "Many2Many",
1607                         "contains": "NONE",
1608                         "delete-other-v": "NONE",
1609                         "SVC-INFRA": "NONE",
1610                         "prevent-delete": "!${direction}"
1611                 },
1612                 {
1613                         "from": "vlan",
1614                         "to": "multicast-configuration",
1615                         "label": "uses",
1616                         "direction": "OUT",
1617                         "multiplicity": "Many2Many",
1618                         "contains": "NONE",
1619                         "uses-resource": "${direction}",
1620                         "delete-other-v": "NONE",
1621                         "SVC-INFRA": "NONE",
1622                         "prevent-delete": "NONE"
1623                 },
1624                 {
1625                         "from": "volume-group",
1626                         "to": "complex",
1627                         "label": "existsIn",
1628                         "direction": "OUT",
1629                         "multiplicity": "Many2Many",
1630                         "contains": "NONE",
1631                         "delete-other-v": "NONE",
1632                         "SVC-INFRA": "${direction}",
1633                         "prevent-delete": "!${direction}"
1634                 },
1635                 {
1636                         "from": "volume-group",
1637                         "to": "tenant",
1638                         "label": "belongsTo",
1639                         "direction": "OUT",
1640                         "multiplicity": "Many2Many",
1641                         "contains": "NONE",
1642                         "delete-other-v": "NONE",
1643                         "SVC-INFRA": "${direction}",
1644                         "prevent-delete": "NONE"
1645                 },
1646                 {
1647                         "from": "ipsec-configuration",
1648                         "to": "vig-server",
1649                         "label": "hasVigServer",
1650                         "direction": "OUT",
1651                         "multiplicity": "One2Many",
1652                         "contains": "${direction}",
1653                         "uses-resource": "${direction}",
1654                         "delete-other-v": "NONE",
1655                         "SVC-INFRA": "NONE",
1656                         "prevent-delete": "NONE"
1657                 },
1658                 {
1659                         "from": "generic-vnf",
1660                         "to": "ipsec-configuration",
1661                         "label": "uses",
1662                         "direction": "OUT",
1663                         "multiplicity": "Many2One",
1664                         "contains": "NONE",
1665                         "uses-resource": "${direction}",
1666                         "delete-other-v": "NONE",
1667                         "SVC-INFRA": "NONE",
1668                         "prevent-delete": "NONE"
1669                 },
1670                 {
1671                         "from": "vf-module",
1672                         "to": "volume-group",
1673                         "label": "uses",
1674                         "direction": "OUT",
1675                         "multiplicity": "One2One",
1676                         "contains": "NONE",
1677                         "delete-other-v": "NONE",
1678                         "SVC-INFRA": "${direction}",
1679                         "prevent-delete": "NONE"
1680                 },
1681                 {
1682                         "from": "vserver",
1683                         "to": "vf-module",
1684                         "label": "isPartOf",
1685                         "direction": "OUT",
1686                         "multiplicity": "Many2One",
1687                         "contains": "NONE",
1688                         "delete-other-v": "NONE",
1689                         "SVC-INFRA": "${direction}",
1690                         "prevent-delete": "NONE"
1691                 },
1692                 {
1693                         "from": "vf-module",
1694                         "to": "l3-network",
1695                         "label": "uses",
1696                         "direction": "OUT",
1697                         "multiplicity": "Many2Many",
1698                         "contains": "NONE",
1699                         "delete-other-v": "NONE",
1700                         "SVC-INFRA": "${direction}",
1701                         "prevent-delete": "NONE"
1702                 },
1703                 {
1704                         "from": "vf-module",
1705                         "to": "vnfc",
1706                         "label": "uses",
1707                         "direction": "OUT",
1708                         "multiplicity": "One2Many",
1709                         "contains": "NONE",
1710                         "delete-other-v": "${direction}",
1711                         "SVC-INFRA": "${direction}",
1712                         "prevent-delete": "${direction}"
1713                 },
1714                 {
1715                         "from": "generic-vnf",
1716                         "to": "vf-module",
1717                         "label": "has",
1718                         "direction": "OUT",
1719                         "multiplicity": "One2Many",
1720                         "contains": "${direction}",
1721                         "delete-other-v": "NONE",
1722                         "SVC-INFRA": "${direction}",
1723                         "prevent-delete": "NONE"
1724                 },
1725                 {
1726                         "from": "generic-vnf",
1727                         "to": "volume-group",
1728                         "label": "uses",
1729                         "direction": "OUT",
1730                         "multiplicity": "One2Many",
1731                         "contains": "NONE",
1732                         "delete-other-v": "NONE",
1733                         "SVC-INFRA": "${direction}",
1734                         "prevent-delete": "NONE"
1735                 },
1736                 {
1737                         "from": "generic-vnf",
1738                         "to": "vnfc",
1739                         "label": "uses",
1740                         "direction": "OUT",
1741                         "multiplicity": "One2Many",
1742                         "contains": "NONE",
1743                         "delete-other-v": "${direction}",
1744                         "SVC-INFRA": "${direction}",
1745                         "prevent-delete": "NONE"
1746                 },
1747                 {
1748                         "from": "vlan",
1749                         "to": "logical-link",
1750                         "label": "usesLogicalLink",
1751                         "direction": "OUT",
1752                         "multiplicity": "Many2Many",
1753                         "contains": "NONE",
1754                         "delete-other-v": "${direction}",
1755                         "SVC-INFRA": "${direction}",
1756                         "prevent-delete": "NONE"
1757                 },
1758                 {
1759                         "from": "vpn-binding",
1760                         "to": "route-target",
1761                         "label": "has",
1762                         "direction": "OUT",
1763                         "multiplicity": "One2Many",
1764                         "contains": "${direction}",
1765                         "delete-other-v": "NONE",
1766                         "SVC-INFRA": "NONE",
1767                         "prevent-delete": "NONE"
1768                 },
1769                 {
1770                         "from": "service-instance",
1771                         "to": "ctag-assignment",
1772                         "label": "uses",
1773                         "direction": "OUT",
1774                         "multiplicity": "One2Many",
1775                         "contains": "NONE",
1776                         "delete-other-v": "NONE",
1777                         "SVC-INFRA": "NONE",
1778                         "prevent-delete": "NONE"
1779                 },
1780                 {
1781                         "from": "allotted-resource",
1782                         "to": "generic-vnf",
1783                         "label": "isPartOf",
1784                         "direction": "OUT",
1785                         "multiplicity": "Many2Many",
1786                         "contains": "NONE",
1787                         "delete-other-v": "NONE",
1788                         "SVC-INFRA": "NONE",
1789                         "prevent-delete": "NONE"
1790                 },
1791                 {
1792                         "from": "allotted-resource",
1793                         "to": "l3-network",
1794                         "label": "isPartOf",
1795                         "direction": "OUT",
1796                         "multiplicity": "Many2Many",
1797                         "contains": "NONE",
1798                         "delete-other-v": "NONE",
1799                         "SVC-INFRA": "NONE",
1800                         "prevent-delete": "NONE"
1801                 },
1802                 {
1803                         "from": "allotted-resource",
1804                         "to": "instance-group",
1805                         "label": "isMemberOf",
1806                         "direction": "OUT",
1807                         "multiplicity": "Many2Many",
1808                         "contains": "NONE",
1809                         "delete-other-v": "NONE",
1810                         "SVC-INFRA": "NONE",
1811                         "prevent-delete": "NONE"
1812                 },
1813                 {
1814                         "from": "allotted-resource",
1815                         "to": "network-policy",
1816                         "label": "uses",
1817                         "direction": "OUT",
1818                         "multiplicity": "One2One",
1819                         "contains": "NONE",
1820                         "delete-other-v": "NONE",
1821                         "SVC-INFRA": "NONE",
1822                         "prevent-delete": "NONE"
1823                 },
1824                 {
1825                         "from": "allotted-resource",
1826                         "to": "vlan",
1827                         "label": "isPartOf",
1828                         "direction": "OUT",
1829                         "multiplicity": "Many2Many",
1830                         "contains": "NONE",
1831                         "delete-other-v": "NONE",
1832                         "SVC-INFRA": "NONE",
1833                         "prevent-delete": "NONE"
1834                 },
1835                 {
1836                         "from": "allotted-resource",
1837                         "to": "l-interface",
1838                         "label": "uses",
1839                         "direction": "OUT",
1840                         "multiplicity": "One2Many",
1841                         "contains": "NONE",
1842                         "delete-other-v": "NONE",
1843                         "SVC-INFRA": "NONE",
1844                         "prevent-delete": "NONE"
1845                 },
1846                 {
1847                         "from": "generic-vnf",
1848                         "to": "instance-group",
1849                         "label": "isMemberOf",
1850                         "direction": "OUT",
1851                         "multiplicity": "Many2Many",
1852                         "contains": "NONE",
1853                         "delete-other-v": "NONE",
1854                         "SVC-INFRA": "NONE",
1855                         "prevent-delete": "NONE"
1856                 },
1857                 {
1858                         "from": "service-instance",
1859                         "to": "instance-group",
1860                         "label": "isMemberOf",
1861                         "direction": "OUT",
1862                         "multiplicity": "Many2Many",
1863                         "contains": "NONE",
1864                         "delete-other-v": "NONE",
1865                         "SVC-INFRA": "NONE",
1866                         "prevent-delete": "NONE"
1867                 },
1868                 {
1869                         "from": "allotted-resource",
1870                         "to": "tunnel-xconnect",
1871                         "label": "has",
1872                         "direction": "OUT",
1873                         "multiplicity": "One2One",
1874                         "contains": "${direction}",
1875                         "delete-other-v": "NONE",
1876                         "SVC-INFRA": "NONE",
1877                         "prevent-delete": "NONE"
1878                 },
1879                 {
1880                         "from": "logical-link",
1881                         "to": "cloud-region",
1882                         "label": "existsIn",
1883                         "direction": "OUT",
1884                         "multiplicity": "Many2Many",
1885                         "contains": "NONE",
1886                         "delete-other-v": "NONE",
1887                         "SVC-INFRA": "NONE",
1888                         "prevent-delete": "NONE"
1889                 },
1890                 {
1891                         "from": "logical-link",
1892                         "to": "vpn-binding",
1893                         "label": "uses",
1894                         "direction": "OUT",
1895                         "multiplicity": "Many2Many",
1896                         "contains": "NONE",
1897                         "delete-other-v": "NONE",
1898                         "SVC-INFRA": "NONE",
1899                         "prevent-delete": "!${direction}"
1900                 },
1901                 {
1902                         "from": "generic-vnf",
1903                         "to": "entitlement",
1904                         "label": "has",
1905                         "direction": "OUT",
1906                         "multiplicity": "One2Many",
1907                         "contains": "${direction}",
1908                         "delete-other-v": "NONE",
1909                         "SVC-INFRA": "NONE",
1910                         "prevent-delete": "NONE"
1911                 },
1912                 {
1913                         "from": "generic-vnf",
1914                         "to": "license",
1915                         "label": "has",
1916                         "direction": "OUT",
1917                         "multiplicity": "One2Many",
1918                         "contains": "${direction}",
1919                         "delete-other-v": "NONE",
1920                         "SVC-INFRA": "NONE",
1921                         "prevent-delete": "NONE"
1922                 },
1923                 {
1924                         "from": "vce",
1925                         "to": "entitlement",
1926                         "label": "has",
1927                         "direction": "OUT",
1928                         "multiplicity": "One2Many",
1929                         "contains": "${direction}",
1930                         "delete-other-v": "NONE",
1931                         "SVC-INFRA": "NONE",
1932                         "prevent-delete": "NONE"
1933                 },
1934                 {
1935                         "from": "vce",
1936                         "to": "license",
1937                         "label": "has",
1938                         "direction": "OUT",
1939                         "multiplicity": "One2Many",
1940                         "contains": "${direction}",
1941                         "delete-other-v": "NONE",
1942                         "SVC-INFRA": "NONE",
1943                         "prevent-delete": "NONE"
1944                 },
1945                 {
1946                         "from": "vpe",
1947                         "to": "entitlement",
1948                         "label": "has",
1949                         "direction": "OUT",
1950                         "multiplicity": "One2Many",
1951                         "contains": "${direction}",
1952                         "delete-other-v": "NONE",
1953                         "SVC-INFRA": "NONE",
1954                         "prevent-delete": "NONE"
1955                 },
1956                 {
1957                         "from": "vpe",
1958                         "to": "license",
1959                         "label": "has",
1960                         "direction": "OUT",
1961                         "multiplicity": "One2Many",
1962                         "contains": "${direction}",
1963                         "delete-other-v": "NONE",
1964                         "SVC-INFRA": "NONE",
1965                         "prevent-delete": "NONE"
1966                 },
1967                 {
1968                         "from": "zone",
1969                         "to": "complex",
1970                         "label": "existsIn",
1971                         "direction": "OUT",
1972                         "multiplicity": "Many2One",
1973                         "contains": "NONE",
1974                         "delete-other-v": "NONE",
1975                         "SVC-INFRA": "NONE",
1976                         "prevent-delete": "!${direction}"
1977                 },
1978                 {
1979                         "from": "service-instance",
1980                         "to": "allotted-resource",
1981                         "label": "has",
1982                         "direction": "OUT",
1983                         "multiplicity": "Many2Many",
1984                         "contains": "${direction}",
1985                         "delete-other-v": "NONE",
1986                         "SVC-INFRA": "NONE",
1987                         "prevent-delete": "NONE"
1988                 },
1989                 {
1990                         "from": "service-instance",
1991                         "to": "allotted-resource",
1992                         "label": "uses",
1993                         "direction": "OUT",
1994                         "multiplicity": "Many2Many",
1995                         "contains": "NONE",
1996                         "delete-other-v": "NONE",
1997                         "SVC-INFRA": "NONE",
1998                         "prevent-delete": "NONE"
1999                 },
2000                 {
2001                         "from": "allotted-resource",
2002                         "to": "vpn-binding",
2003                         "label": "belongsTo",
2004                         "direction": "OUT",
2005                         "multiplicity": "Many2Many",
2006                         "contains": "NONE",
2007                         "delete-other-v": "NONE",
2008                         "SVC-INFRA": "NONE",
2009                         "prevent-delete": "!${direction}"
2010                 },
2011                 {
2012                         "from": "allotted-resource",
2013                         "to": "allotted-resource",
2014                         "label": "bindsTo",
2015                         "direction": "OUT",
2016                         "multiplicity": "One2One",
2017                         "contains": "NONE",
2018                         "delete-other-v": "NONE",
2019                         "SVC-INFRA": "NONE",
2020                         "prevent-delete": "NONE"
2021                 },
2022                 {
2023                         "from": "generic-vnf",
2024                         "to": "complex",
2025                         "label": "locatedIn",
2026                         "direction": "OUT",
2027                         "multiplicity": "Many2Many",
2028                         "contains": "NONE",
2029                         "delete-other-v": "NONE",
2030                         "SVC-INFRA": "NONE",
2031                         "prevent-delete": "!${direction}"
2032                 },
2033                 {
2034                         "from": "generic-vnf",
2035                         "to": "ctag-pool",
2036                         "label": "usesCtagPool",
2037                         "direction": "OUT",
2038                         "multiplicity": "Many2Many",
2039                         "contains": "NONE",
2040                         "delete-other-v": "NONE",
2041                         "SVC-INFRA": "NONE",
2042                         "prevent-delete": "NONE"
2043                 },
2044                 {
2045                         "from": "p-interface",
2046                         "to": "sriov-pf",
2047                         "label": "has",
2048                         "direction": "OUT",
2049                         "multiplicity": "One2One",
2050                         "contains": "${direction}",
2051                         "delete-other-v": "NONE",
2052                         "SVC-INFRA": "NONE",
2053                         "prevent-delete": "NONE"
2054                 },
2055                 {
2056                         "from": "sriov-vf",
2057                         "to": "sriov-pf",
2058                         "label": "uses",
2059                         "direction": "OUT",
2060                         "multiplicity": "Many2One",
2061                         "contains": "NONE",
2062                         "uses-resource": "${direction}",
2063                         "delete-other-v": "NONE",
2064                         "SVC-INFRA": "NONE",
2065                         "prevent-delete": "NONE"
2066                 }
2067         ]
2068 }