blob: 70dd3eb195497e4468c90dfc89f1ac5138456830 [file] [log] [blame]
Rajesh Velandye27e0b22017-09-18 17:21:48 -04001
2/*
3 *
4 * Copyright 2017 RIFT.IO Inc
5 *
6 * Licensed under the Apache License, Version 2.0 (the "License");
7 * you may not use this file except in compliance with the License.
8 * You may obtain a copy of the License at
9 *
10 * http://www.apache.org/licenses/LICENSE-2.0
11 *
12 * Unless required by applicable law or agreed to in writing, software
13 * distributed under the License is distributed on an "AS IS" BASIS,
14 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
15 * See the License for the specific language governing permissions and
16 * limitations under the License.
17 *
18 *
19 */
20
21module nsd-base
22{
garciadeblasc038a8d2019-04-03 13:35:27 +020023 namespace "urn:etsi:osm:yang:nsd-base";
Rajesh Velandye27e0b22017-09-18 17:21:48 -040024 prefix "nsd-base";
25
Rajesh Velandye27e0b22017-09-18 17:21:48 -040026 import ietf-inet-types {
27 prefix "inet";
28 }
29
30 import mano-types {
31 prefix "manotypes";
32 }
33
garciadeblasa75e0bb2017-12-12 13:33:33 +010034 import vnfd {
35 prefix "vnfd";
36 }
37
Rajesh Velandye27e0b22017-09-18 17:21:48 -040038 revision 2017-02-28 {
39 description
40 "Initial revision. This YANG file defines
41 the Network Service Descriptor (NSD)
42 common groupings";
43 reference
44 "Derived from earlier versions of base YANG files";
45 }
46
47 typedef scaling-trigger {
48 type enumeration {
49 enum pre-scale-in {
50 value 1;
51 }
52 enum post-scale-in {
53 value 2;
54 }
55 enum pre-scale-out {
56 value 3;
57 }
58 enum post-scale-out {
59 value 4;
60 }
61 }
62 }
63
Rajesh Velandye27e0b22017-09-18 17:21:48 -040064 typedef scaling-criteria-operation {
65 type enumeration {
66 enum AND {
67 value 1;
68 }
69 enum OR {
70 value 2;
71 }
72 }
73 }
74
75 grouping primitive-parameter {
76 leaf name {
77 description
78 "Name of the parameter.";
79 type string;
80 }
81
82 leaf data-type {
83 description
84 "Data type associated with the name.";
85 type manotypes:parameter-data-type;
86 }
87
88 leaf mandatory {
89 description "Is this field mandatory";
90 type boolean;
91 default false;
92 }
93
94 leaf default-value {
95 description "The default value for this field";
96 type string;
97 }
98
99 leaf parameter-pool {
100 description "NSD parameter pool name to use for this parameter";
101 type string;
102 }
jdelacruz27797532018-09-18 19:16:16 +0200103 } // primitive-parameter
Rajesh Velandye27e0b22017-09-18 17:21:48 -0400104
105 grouping nsd-descriptor-common {
106 leaf id {
107 description "Identifier for the NSD.";
108 type string {
109 length 1..63;
110 }
111 }
112
113 leaf name {
114 description "NSD name.";
115 mandatory true;
116 type string;
117 }
118
119 leaf short-name {
120 description "Short name to appear as label in the UI";
121 type string;
122 }
123
124 leaf vendor {
125 description "Vendor of the NSD.";
126 type string;
127 }
128
129 leaf logo {
130 description
131 "File path for the vendor specific logo. For example icons/mylogo.png.
132 The logo should be part of the network service";
133 type string;
134 }
135
136 leaf description {
137 description "Description of the NSD.";
138 type string;
139 }
140
141 leaf version {
142 description "Version of the NSD";
143 type string;
144 }
145
146 list connection-point {
147 description
148 "List for external connection points.
149 Each NS has one or more external connection
150 points. As the name implies that external
151 connection points are used for connecting
152 the NS to other NS or to external networks.
153 Each NS exposes these connection points to
154 the orchestrator. The orchestrator can
155 construct network service chains by
156 connecting the connection points between
157 different NS.";
158
159 key "name";
jdelacruz27797532018-09-18 19:16:16 +0200160 uses nsd-connection-point-common;
Rajesh Velandye27e0b22017-09-18 17:21:48 -0400161
162 leaf type {
163 description
164 "Type of the connection point.";
165 type manotypes:connection-point-type;
166 }
garciadeblasa3388582017-12-05 14:06:03 +0100167
garciadeblasa75e0bb2017-12-12 13:33:33 +0100168 choice connection {
169 description "Logical connection of the CP to a VLD or to a VNF CP";
170
171 case vld-ref {
172
173 leaf vld-id-ref {
174 description
175 "ID reference to a VLD in the NS";
176 type leafref {
177 path "../../vld/id";
178 }
179 }
180
181 }
182
183 case vnfd-connection-point-ref {
184
185 leaf member-vnf-index-ref {
186 description "Reference to member-vnf within constituent-vnfd";
187 type leafref {
188 path "../../constituent-vnfd/member-vnf-index";
189 }
190 }
191
192 leaf vnfd-id-ref {
193 description
194 "A reference to a vnfd. This is a leafref to path:
195 ../../nsd:constituent-vnfd
196 + [nsd:id = current()/../nsd:id-ref]
197 + /nsd:vnfd-id-ref";
198 type leafref {
199 path "../../constituent-vnfd" +
200 "[member-vnf-index = current()/../member-vnf-index-ref]" +
201 "/vnfd-id-ref";
202 }
203 }
204
205 leaf vnfd-connection-point-ref {
206 description
207 "A reference to a connection point name
208 in a vnfd. This is a leafref to path:
209 /vnfd:vnfd-catalog/vnfd:vnfd
210 + [vnfd:id = current()/../nsd:vnfd-id-ref]
211 + /vnfd:connection-point/vnfd:name";
212 type leafref {
213 path "/vnfd:vnfd-catalog/vnfd:vnfd" +
214 "[vnfd:id = current()/../vnfd-id-ref]" +
215 "/vnfd:connection-point/vnfd:name";
216 }
217 }
218
219 }
220
221 }
222
Rajesh Velandye27e0b22017-09-18 17:21:48 -0400223 }
224
225 list scaling-group-descriptor {
226 description
227 "scaling group descriptor within this network service.
228 The scaling group defines a group of VNFs,
229 and the ratio of VNFs in the network service
230 that is used as target for scaling action";
231
232 key "name";
233
234 leaf name {
235 description "Name of this scaling group.";
236 type string;
237 }
238
239 list scaling-policy {
240
241 key "name";
242
243 leaf name {
244 description
245 "Name of the scaling policy";
246 type string;
247 }
248
garciadeblas8efd85e2018-04-02 17:29:08 +0200249 leaf scaling-type {
250 description
251 "Type of scaling";
252 type manotypes:scaling-policy-type;
253 }
254
Rajesh Velandye27e0b22017-09-18 17:21:48 -0400255 leaf enabled {
256 description
257 "Specifies if the scaling policy can be applied";
258 type boolean;
259 default true;
260 }
261
262 leaf scale-in-operation-type {
263 description
264 "Operation to be applied to check between scaling criterias to
265 check if the scale in threshold condition has been met.
266 Defaults to AND";
garciadeblas8efd85e2018-04-02 17:29:08 +0200267 type manotypes:scaling-criteria-operation;
Rajesh Velandye27e0b22017-09-18 17:21:48 -0400268 default AND;
269 }
270
271 leaf scale-out-operation-type {
272 description
273 "Operation to be applied to check between scaling criterias to
274 check if the scale out threshold condition has been met.
275 Defauls to OR";
garciadeblas8efd85e2018-04-02 17:29:08 +0200276 type manotypes:scaling-criteria-operation;
Rajesh Velandye27e0b22017-09-18 17:21:48 -0400277 default OR;
278 }
279
280 leaf threshold-time {
281 description
282 "The duration for which the criteria must hold true";
283 type uint32;
284 mandatory true;
285 }
286
287 leaf cooldown-time {
288 description
289 "The duration after a scaling-in/scaling-out action has been
290 triggered, for which there will be no further optional";
291 type uint32;
292 mandatory true;
293 }
294
295 list scaling-criteria {
296 description
297 "list of conditions to be met for generating scaling
298 requests";
299 key "name";
300
301 leaf name {
302 type string;
303 }
304
305 leaf scale-in-threshold {
306 description
307 "Value below which scale-in requests are generated";
308 type uint64;
309 }
310
garciadeblas8efd85e2018-04-02 17:29:08 +0200311 leaf scale-in-relational-operation {
312 description
313 "The relational operator used to compare the monitoring param
314 against the scale-in-threshold.";
315 type manotypes:relational-operation-type;
316 default LE;
317 }
318
Rajesh Velandye27e0b22017-09-18 17:21:48 -0400319 leaf scale-out-threshold {
320 description
321 "Value above which scale-out requests are generated";
322 type uint64;
323 }
324
garciadeblas8efd85e2018-04-02 17:29:08 +0200325 leaf scale-out-relational-operation {
326 description
327 "The relational operator used to compare the monitoring param
328 against the scale-out-threshold.";
329 type manotypes:relational-operation-type;
330 default GE;
331 }
332
Rajesh Velandye27e0b22017-09-18 17:21:48 -0400333 leaf ns-monitoring-param-ref {
334 description
335 "Reference to the NS level monitoring parameter
336 that is aggregated";
337 type leafref {
338 path "../../../../monitoring-param/id";
339 }
340 }
341 }
342 }
343
344 list vnfd-member {
345 description "List of VNFs in this scaling group";
346 key "member-vnf-index-ref";
347
348 leaf member-vnf-index-ref {
349 description "member VNF index of this member VNF";
350 type leafref {
351 path "../../../constituent-vnfd/member-vnf-index";
352 }
353 }
354
355 leaf count {
356 description
357 "count of this member VNF within this scaling group.
358 The count allows to define the number of instances
359 when a scaling action targets this scaling group";
360 type uint32;
361 default 1;
362 }
363 }
364
365 leaf min-instance-count {
366 description
367 "Minimum instances of the scaling group which are allowed.
368 These instances are created by default when the network service
369 is instantiated.";
370 type uint32;
371 default 0;
372 }
373
374 leaf max-instance-count {
375 description
376 "Maximum instances of this scaling group that are allowed
377 in a single network service. The network service scaling
378 will fail, when the number of service group instances
379 exceed the max-instance-count specified.";
380 type uint32;
381 default 10;
382 }
383
384 list scaling-config-action {
385 description "List of scaling config actions";
386 key "trigger";
387
388 leaf trigger {
389 description "scaling trigger";
garciadeblas8efd85e2018-04-02 17:29:08 +0200390 type manotypes:scaling-trigger;
Rajesh Velandye27e0b22017-09-18 17:21:48 -0400391 }
392
Michele Carignani75e49ea2019-05-24 11:48:54 +0200393 leaf ns-config-primitive-name-ref {
394 description "Reference to the NS primitive";
Rajesh Velandye27e0b22017-09-18 17:21:48 -0400395 type leafref {
Michele Carignani75e49ea2019-05-24 11:48:54 +0200396 path "../../../ns-configuration/config-primitive/name";
Rajesh Velandye27e0b22017-09-18 17:21:48 -0400397 }
398 }
399 }
400 }
401
402
403 list vnffgd {
404 description
405 "List of VNF Forwarding Graph Descriptors (VNFFGD).";
406
407 key "id";
408
jdelacruz27797532018-09-18 19:16:16 +0200409 uses fgd-common;
Rajesh Velandye27e0b22017-09-18 17:21:48 -0400410
411 list rsp {
412 description
413 "List of Rendered Service Paths (RSP).";
Rajesh Velandye27e0b22017-09-18 17:21:48 -0400414 key "id";
415
jdelacruz27797532018-09-18 19:16:16 +0200416 uses rsp-common;
417
418 list vnfd-connection-point-ref { // not common
Eduardo Sousaebba2672018-11-29 15:42:01 +0000419 description
420 "A list of references to connection points.";
421 key "member-vnf-index-ref";
jdelacruz27797532018-09-18 19:16:16 +0200422
Eduardo Sousaebba2672018-11-29 15:42:01 +0000423 leaf member-vnf-index-ref {
424 description "Reference to member-vnf within constituent-vnfds";
425 type leafref {
426 path "../../../../constituent-vnfd/member-vnf-index";
427 }
428 }
429
430 leaf order {
431 type uint8;
432 description
433 "A number that denotes the order of a VNF in a chain";
434 }
435
436 leaf vnfd-id-ref {
437 description
438 "A reference to a vnfd. This is a
439 leafref to path:
440 ../../../../nsd:constituent-vnfd
441 + [nsd:id = current()/../nsd:id-ref]
442 + /nsd:vnfd-id-ref";
443
444 type leafref {
445 path "../../../../constituent-vnfd" +
446 "[member-vnf-index = current()/../member-vnf-index-ref]" +
447 "/vnfd-id-ref";
448 }
449 }
450
451 leaf vnfd-ingress-connection-point-ref {
452 description
453 "A reference to a connection point name
454 in a vnfd. This is a leafref to path:
455 /vnfd:vnfd-catalog/vnfd:vnfd
456 + [vnfd:id = current()/../nsd:vnfd-id-ref]
457 + /vnfd:connection-point/vnfd:name
458 NOTE: An issue with confd is preventing the
459 use of xpath. Seems to be an issue with leafref
460 to leafref, whose target is in a different module.
461 Once that is resolved this will switched to use
462 leafref";
463 // TODO: Keeping as string as this needs to be
464 // diffenent lvel based of if it is nsd-catalog or
465 // in nsr.
466 // type leafref {
467 // path "../../../../../../vnfd:vnfd-catalog/vnfd:vnfd" +
468 // "[vnfd:id = current()/../vnfd-id-ref]/" +
469 // "vnfd:connection-point/vnfd:name";
470 // }
471 type string;
472 }
473
474 leaf vnfd-egress-connection-point-ref {
475 description
476 "A reference to a connection point name
477 in a vnfd. This is a leafref to path:
478 /vnfd:vnfd-catalog/vnfd:vnfd
479 + [vnfd:id = current()/../nsd:vnfd-id-ref]
480 + /vnfd:connection-point/vnfd:name
481 NOTE: An issue with confd is preventing the
482 use of xpath. Seems to be an issue with leafref
483 to leafref, whose target is in a different module.
484 Once that is resolved this will switched to use
485 leafref";
486 // TODO: Keeping as string as this needs to be
487 // diffenent lvel based of if it is nsd-catalog or
488 // in nsr.
489 // type leafref {
490 // path "../../../../../../vnfd:vnfd-catalog/vnfd:vnfd" +
491 // "[vnfd:id = current()/../vnfd-id-ref]/" +
492 // "vnfd:connection-point/vnfd:name";
493 // }
494 type string;
jdelacruz27797532018-09-18 19:16:16 +0200495 }
Rajesh Velandye27e0b22017-09-18 17:21:48 -0400496 }
Rajesh Velandye27e0b22017-09-18 17:21:48 -0400497 } //rsp
498
499 list classifier {
500 description
501 "List of classifier rules.";
502
503 key "id";
504
jdelacruz27797532018-09-18 19:16:16 +0200505 uses classifier-common;
Rajesh Velandye27e0b22017-09-18 17:21:48 -0400506
507 leaf member-vnf-index-ref {
508 description "Reference to member-vnf within constituent-vnfds";
509 type leafref {
510 path "../../../constituent-vnfd/member-vnf-index";
511 }
512 }
513
514 leaf vnfd-id-ref {
515 description
516 "A reference to a vnfd. This is a
517 leafref to path:
518 ../../../nsd:constituent-vnfd
519 + [nsd:id = current()/../nsd:id-ref]
520 + /nsd:vnfd-id-ref";
521
522 type leafref {
523 path "../../../constituent-vnfd" +
524 "[member-vnf-index = current()/../member-vnf-index-ref]" +
525 "/vnfd-id-ref";
526 }
527 }
528
529 leaf vnfd-connection-point-ref {
530 description
531 "A reference to a connection point name
532 in a vnfd. This is a leafref to path:
533 /vnfd:vnfd-catalog/vnfd:vnfd
534 + [vnfd:id = current()/../nsd:vnfd-id-ref]
535 + /vnfd:connection-point/vnfd:name
536 NOTE: An issue with confd is preventing the
537 use of xpath. Seems to be an issue with leafref
538 to leafref, whose target is in a different module.
539 Once that is resolved this will switched to use
540 leafref";
541 // TODO: Keeping as string as this needs to be
542 // diffenent lvel based of if it is nsd-catalog or
543 // in nsr.
544 // type leafref {
545 // path "../../../../../vnfd:vnfd-catalog/vnfd:vnfd" +
546 // "[vnfd:id = current()/../vnfd-id-ref]/" +
547 // "vnfd:connection-point/vnfd:name";
548 // }
549 type string;
550 }
Rajesh Velandye27e0b22017-09-18 17:21:48 -0400551 } // classifier
jdelacruz27797532018-09-18 19:16:16 +0200552
Rajesh Velandye27e0b22017-09-18 17:21:48 -0400553 } // vnffgd
554
555 uses manotypes:ip-profile-list;
556
garciadeblas634a26f2019-04-09 15:12:41 +0200557 container ns-configuration {
garciadeblas8550fa72019-05-24 15:36:01 +0200558 description
559 "Information about NS configuration.";
560
Michele Carignani75e49ea2019-05-24 11:48:54 +0200561 uses manotypes:vca-configuration;
garciadeblasd13a7492019-10-08 15:55:16 +0200562 uses manotypes:vca-relations;
Rajesh Velandye27e0b22017-09-18 17:21:48 -0400563 }
564
565 uses manotypes:input-parameter-xpath;
566
567 list parameter-pool {
568 description
569 "Pool of parameter values which must be
570 pulled from during configuration";
571 key "name";
572
573 leaf name {
574 description
575 "Name of the configuration value pool";
576 type string;
577 }
578
579 container range {
580 description
581 "Create a range of values to populate the pool with";
582
583 leaf start-value {
584 description
585 "Generated pool values start at this value";
586 type uint32;
587 mandatory true;
588 }
589
590 leaf end-value {
591 description
592 "Generated pool values stop at this value";
593 type uint32;
594 mandatory true;
595 }
596 }
597 }
598
599 list key-pair {
600 key "name";
601 description "Used to configure the list of public keys to be injected as part
602 of ns instantiation";
603
604 leaf name {
605 description "Name of this key pair";
606 type string;
607 }
608
609 leaf key {
610 description "Key associated with this key pair";
611 type string;
612 }
613 }
614
615 list user {
616 key "name";
617 description "List of users to be added through cloud-config";
618
619 leaf name {
620 description "Name of the user ";
621 type string;
622 }
623
624 leaf user-info {
625 description "The user name's real name";
626 type string;
627 }
628
629 list key-pair {
630 key "name";
631 description "Used to configure the list of public keys to be injected as part
632 of ns instantiation";
633
634 leaf name {
635 description "Name of this key pair";
636 type string;
637 }
638
639 leaf key {
640 description "Key associated with this key pair";
641 type string;
642 }
643 }
644 }
jdelacruz27797532018-09-18 19:16:16 +0200645 } // nsd-descriptor-common
Rajesh Velandye27e0b22017-09-18 17:21:48 -0400646
647 grouping nsd-vld-common {
648 /* Still having issues modelling this,
649 see the comments under vnfd-connection-point-ref
jdelacruz27797532018-09-18 19:16:16 +0200650
651 IMPORTANT: Change description fields
Rajesh Velandye27e0b22017-09-18 17:21:48 -0400652 */
jdelacruz27797532018-09-18 19:16:16 +0200653 uses vld-common;
654
655 choice init-params {
656 description "Extra parameters for VLD instantiation";
657
658 case vim-network-ref {
659 leaf vim-network-name {
660 description
661 "Name of network in VIM account. This is used to indicate
662 pre-provisioned network name in cloud account.";
663 type string;
664 }
665 }
666
667 case vim-network-profile {
668 leaf ip-profile-ref {
669 description "Named reference to IP-profile object";
670 type leafref {
671 path "../../ip-profiles/name";
672 }
673 }
674 }
675
676 }
677 } // nsd-vld-common
678
679 grouping nsd-connection-point-common {
680 description "NSD connection point base";
681 //IMPORTANT: Change description fields
682 leaf name {
683 description
684 "Name of the connection point.";
685 type string;
686 }
687
688 leaf floating-ip-required {
689 description
690 "Boolean parameter to indicate whether the CP must be exposed.
691 A public IP address will be allocated to this CP if exposed is true.
692 The default is false meaning a floating IP address is not required.
693 It must be explicitly asked for a floating IP address to be allocated.";
694 type boolean;
695 }
696 } // nsd-connection-point-common
697
698 grouping vld-common {
Rajesh Velandye27e0b22017-09-18 17:21:48 -0400699 description
700 "List of Virtual Link Descriptors.";
701
702 leaf id {
703 description
704 "Identifier for the VLD.";
705 type string;
706 }
707
708 leaf name {
709 description
710 "Virtual Link Descriptor (VLD) name.";
711 type string;
712 }
713
714 leaf short-name {
715 description
716 "Short name to appear as label in the UI";
717 type string;
718 }
719
720 leaf vendor {
721 description "Provider of the VLD.";
722 type string;
723 }
724
725 leaf description {
726 description "Description of the VLD.";
727 type string;
728 }
729
730 leaf version {
731 description "Version of the VLD";
732 type string;
733 }
734
735 leaf type {
736 type manotypes:virtual-link-type;
737 }
738
739 leaf root-bandwidth {
740 description
741 "For ELAN this is the aggregate bandwidth.";
742 type uint64;
743 }
744
745 leaf leaf-bandwidth {
746 description
747 "For ELAN this is the bandwidth of branches.";
748 type uint64;
749 }
750
751 // replicate for pnfd container here
752 uses manotypes:provider-network;
753
754 leaf mgmt-network {
755 description "Flag indicating whether this network is a VIM management network";
756 type boolean;
757 default false;
758 }
jdelacruz27797532018-09-18 19:16:16 +0200759 } // vld-common
Rajesh Velandye27e0b22017-09-18 17:21:48 -0400760
jdelacruz27797532018-09-18 19:16:16 +0200761 grouping fgd-common {
Rajesh Velandye27e0b22017-09-18 17:21:48 -0400762
jdelacruz27797532018-09-18 19:16:16 +0200763 leaf id {
764 description
765 "Identifier for the FGD.";
766 type string;
Rajesh Velandye27e0b22017-09-18 17:21:48 -0400767 }
jdelacruz27797532018-09-18 19:16:16 +0200768
769 leaf name {
770 description
771 "FGD name.";
772 type string;
773 }
774
775 leaf short-name {
776 description
777 "Short name to appear as label in the UI";
778 type string;
779 }
780
781 leaf vendor {
782 description "Provider of the FGD.";
783 type string;
784 }
785
786 leaf description {
787 description "Description of the FGD.";
788 type string;
789 }
790
791 leaf version {
792 description "Version of the FGD";
793 type string;
794 }
795 } // fgd-common
796
797 grouping rsp-common {
798
799 leaf id {
800 description
801 "Identifier for the RSP.";
802 type string;
803 }
804
805 leaf name {
806 description
807 "RSP name.";
808 type string;
809 }
810
811 } // rsp-common
812
813 grouping classifier-common {
814
815 leaf id {
816 description
817 "Identifier for the classifier rule.";
818 type string;
819 }
820
821 leaf name {
822 description
823 "Name of the classifier.";
824 type string;
825 }
826
827 leaf rsp-id-ref {
828 description
829 "A reference to the RSP.";
830 type leafref {
831 path "../../rsp/id";
832 }
833 }
834
835 list match-attributes {
836 description
837 "List of match attributes.";
838
839 key "id";
840
841 leaf id {
842 description
843 "Identifier for the classifier match attribute rule.";
844 type string;
845 }
846
847 leaf ip-proto {
848 description
849 "IP Protocol.";
850 type uint8;
851 }
852
853 leaf source-ip-address {
854 description
855 "Source IP address.";
856 type inet:ip-address;
857 }
858
859 leaf destination-ip-address {
860 description
861 "Destination IP address.";
862 type inet:ip-address;
863 }
864
865 leaf source-port {
866 description
867 "Source port number.";
868 type inet:port-number;
869 }
870
871 leaf destination-port {
872 description
873 "Destination port number.";
874 type inet:port-number;
875 }
876 //TODO: Add more match criteria
877 } //match-attributes
878 } // classifier-common
Rajesh Velandye27e0b22017-09-18 17:21:48 -0400879
880 grouping monitoring-param-common {
881 description
882 "List of monitoring parameters from VNF's that should be
883 propogated up into NSR";
884
885 leaf id {
886 type string;
887 }
888
889 leaf name {
890 type string;
891 }
892
893 uses manotypes:monitoring-param-value;
894 uses manotypes:monitoring-param-ui-data;
895 uses manotypes:monitoring-param-aggregation;
jdelacruz27797532018-09-18 19:16:16 +0200896 } // monitoring-param-common
Rajesh Velandye27e0b22017-09-18 17:21:48 -0400897}