add python compatibility module
[ccsdk/apps.git] / sdnr / model / yang / microwave-model@2017-03-24.yang
1 module microwave-model {
2     namespace "urn:onf:params:xml:ns:yang:microwave-model";
3     prefix microwave-model;
4
5     import core-model {
6         prefix core-model;
7     }
8     import g.874.1-model {
9         prefix g;
10     }
11     import ietf-yang-types {
12         prefix yang;
13     }
14
15     organization "ONF (Open Networking Foundation) Open Transport Working Group - Wireless Transport Project";
16     contact "WG Web: <https://www.opennetworking.org/technical-communities/areas/specification/1931-optical-transport>
17              WG List:  <mailto:wireless-transport@login.opennetworking.org>
18              WG Chair: Lyndon Ong
19                        <mailto:lyong@ciena.com>
20              WG Chair: Giorgio Cazzaniga
21                        <mailto:giorgio.cazzaniga@sm-optics.com>
22              Editors:  Thorsten Heinze
23                        <mailto:thorsten.heinze@telefonica.com>
24                        Martin Skorupski
25                        <mailto:martin.skorupski@highstreet-technologies.com>";
26     description "This module contains a collection of YANG definitions for managing wireless networks.";
27     revision 2017-03-24 {
28         description "Initial version";
29         reference "ONF TR 532: A YANG Data Model for Wireless Networks.";
30     }
31     /***********************
32     * package type-definitions
33     **********************/ 
34         typedef loop-back-type {
35             type enumeration {
36                 enum none {
37                     description "none";
38                 }
39                 enum if {
40                     description "Intermediate Frequency on the interface between indoor and outdoor unit.";
41                 }
42                 enum rf {
43                     description "Radio Frequency on the interface between outdoor unit and outdoor unit at the remote site.";
44                 }
45             }
46             description "none";
47         }
48         typedef severity-type {
49             type enumeration {
50                 enum non-alarmed {
51                     description "none";
52                 }
53                 enum warning {
54                     description "none";
55                 }
56                 enum minor {
57                     description "none";
58                 }
59                 enum major {
60                     description "none";
61                 }
62                 enum critical {
63                     description "none";
64                 }
65             }
66             description "According to ITU-T M.3160";
67         }
68         grouping channel-plan-type-g {
69             leaf supported-channel-plan {
70                 type string;
71                 default "Channel plan name not defined.";
72                 config false;
73                 description "Unique name (e.g. ECC/REC/(01)04_Annex 5) of a document, which describes a frequency grid that can be adjusted at the air interface. Corresponding channel plans to be delivered by the hardware vendor and to be stored by the operator in an controller/application attached database.";
74             }
75             leaf duplex-distance-is-variable {
76                 type boolean;
77                 default false;
78                 config false;
79                 description "To be set on  'true', if the distance between transmitted and received frequency is variable.";
80             }
81             leaf duplex-distance {
82                 type int32;
83                 units "kHz";
84                 default -1;
85                 config false;
86                 description "Distance between transmitted and received frequency.";
87             }
88             leaf auto-freq-select-is-avail {
89                 type boolean;
90                 default false;
91                 config false;
92                 description "In case the microwave radio is capable of automatically selecting the transmit frequency in unlicensed bands, this field shall contain a 'true'.";
93             }
94             list transmission-mode-list {
95                 key 'transmission-mode-id';
96                 config false;
97                 min-elements 1;
98                 uses transmission-mode-type-g;
99                 description "none";
100             }
101             description "none";
102         }
103         grouping transmission-mode-type-g {
104             leaf transmission-mode-id {
105                 type core-model:universal-id;
106                 config false;
107                 description "Indentifies the transmissionMode for internal reference.";
108             }
109             leaf channel-bandwidth {
110                 type int32;
111                 units "kHz";
112                 default -1;
113                 config false;
114                 description "Bandwidth of the transmit channel. The value shall be expressed explicitly (means in kHz) not as a reference to an international agreement. The values shall be chosen from the following _list: 3.500, 7.000, 14.000, 27.500, 28.000, 29.000, 29.650, 30.000, 40.000, 50.000, 55.000, 56.000, 59.300, 60.000, 80.000, 100.000, 112.000, 120.000, 150.000, 200.000, 250.000, 500.000, 750.000, 1.000.000, 1.250.000, 1.500.000, 1.750.000, 2.000.000;";
115             }
116             leaf modulation-scheme {
117                 type int16;
118                 units "symbols";
119                 default -1;
120                 config false;
121                 description "Modulation scheme, which is base to the other characteristics described in the same transmissionModeType data type. The modulation scheme shall be described by the number of states in the phase diagram (e.g. BPSK->'2' or 256QAM->'256').";
122             }
123             leaf code-rate {
124                 type int8;
125                 units "%";
126                 default -1;
127                 config false;
128                 description "Code rate of the coding scheme in % (Net bit rate ? Gross bit rate ? code rate).";
129             }
130             leaf tx-power-min {
131                 type int8;
132                 units "dBm";
133                 default 99;
134                 config false;
135                 description "Value of the minimum transmit power the modem can operate in dBm.";
136             }
137             leaf tx-power-max {
138                 type int8;
139                 units "dBm";
140                 default 99;
141                 config false;
142                 description "Value of the maximum transmit power the modem can operate in dBm.";
143             }
144             leaf rx-threshold {
145                 type int16;
146                 units "dBm";
147                 default 99;
148                 config false;
149                 description "Value of the receive level required to decode the received signal with a Bit Error Rate of 1e-6 or less.";
150             }
151             leaf am-upshift-level {
152                 type int8;
153                 units "dBm";
154                 default 99;
155                 config false;
156                 description "Value of the receive level that has to be exceeded to shift into a higher modulation scheme.";
157             }
158             leaf am-downshift-level {
159                 type int8;
160                 units "dBm";
161                 default 99;
162                 config false;
163                 description "Value of the receive level that has to be exceeded for not shifting into a lower modulation scheme.";
164             }
165             leaf xpic-is-avail {
166                 type boolean;
167                 default false;
168                 config false;
169                 description "In case this air interface type is capable of XPIC, this field shall contain a 'true'. This information shall purely relate to capabilities of the equipment type, but not to the operational capability of a specific hardware composition on site. Means for example that this attribute might contain a 'true' statement, even if an additional cable would have been required to actually operate XPIC in a specific case.";
170             }
171             description "none";
172         }
173         typedef polarization-type {
174             type enumeration {
175                 enum not-specified {
176                     description "none";
177                 }
178                 enum horizontal {
179                     description "none";
180                 }
181                 enum vertical {
182                     description "none";
183                 }
184             }
185             description "none";
186         }
187         grouping air-interface-problem-severity-type-g {
188             leaf problem-kind-name {
189                 type string;
190                 default "Problem kind name not defined.";
191                 description "Name of the alarm according to AirInterface::AirInterfaceCapability::supportedAlarms";
192             }
193             leaf problem-kind-severity {
194                 type severity-type;
195                 default warning;
196                 description "Severity of this type of alarm.";
197             }
198             description "none";
199         }
200         grouping air-interface-current-problem-type-g {
201             leaf problem-name {
202                 type string;
203                 default "Problem name not specified.";
204                 config false;
205                 description "Name of the alarm according to AirInterface::AirInterfaceCapability::supportedAlarms";
206             }
207             uses mw-current-problem-g;
208             description "none";
209         }
210         grouping air-interface-performance-type-g {
211             leaf es {
212                 type int32;
213                 units "s";
214                 default -1;
215                 config false;
216                 description "Number of errored seconds.";
217             }
218             leaf ses {
219                 type int32;
220                 units "s";
221                 default -1;
222                 config false;
223                 description "Number of severely errored seconds.";
224             }
225             leaf cses {
226                 type int32;
227                 units "s";
228                 default -1;
229                 config false;
230                 description "Number of consecutive severely errored seconds.";
231             }
232             leaf unavailability {
233                 type int32;
234                 units "s";
235                 default -1;
236                 config false;
237                 description "Total time of unavailability in seconds.";
238             }
239             leaf tx-level-min {
240                 type int8;
241                 units "dBm";
242                 default 99;
243                 config false;
244                 description "Minimum transmit power. Signed integers are required.";
245             }
246             leaf tx-level-max {
247                 type int8;
248                 units "dBm";
249                 default 99;
250                 config false;
251                 description "Maximum transmit power. Signed integers are required.";
252             }
253             leaf tx-level-avg {
254                 type int8;
255                 units "dBm";
256                 default 99;
257                 config false;
258                 description "Averaged transmit power. Signed integers are required.";
259             }
260             leaf rx-level-min {
261                 type int8;
262                 units "dBm";
263                 default 99;
264                 config false;
265                 description "Minimum receive level. Signed integers are required.";
266             }
267             leaf rx-level-max {
268                 type int8;
269                 units "dBm";
270                 default 99;
271                 config false;
272                 description "Maximum receive level. Signed integers are required.";
273             }
274             leaf rx-level-avg {
275                 type int8;
276                 units "dBm";
277                 default 99;
278                 config false;
279                 description "Averaged receive level. Signed integers are required.";
280             }
281             leaf time2-states {
282                 type int32;
283                 units "s";
284                 default -1;
285                 config false;
286                 description "Sum of all seconds the transmitter operated in e.g. BPSK.";
287             }
288             leaf time4-states-s {
289                 type int32;
290                 units "s";
291                 default -1;
292                 config false;
293                 description "none";
294             }
295             leaf time4-states {
296                 type int32;
297                 units "s";
298                 default -1;
299                 config false;
300                 description "none";
301             }
302             leaf time8-states {
303                 type int32;
304                 units "s";
305                 default -1;
306                 config false;
307                 description "none";
308             }
309             leaf time16-states-s {
310                 type int32;
311                 units "s";
312                 default -1;
313                 config false;
314                 description "none";
315             }
316             leaf time16-states {
317                 type int32;
318                 units "s";
319                 default -1;
320                 config false;
321                 description "none";
322             }
323             leaf time32-states {
324                 type int32;
325                 units "s";
326                 default -1;
327                 config false;
328                 description "none";
329             }
330             leaf time64-states {
331                 type int32;
332                 units "s";
333                 default -1;
334                 config false;
335                 description "none";
336             }
337             leaf time128-states {
338                 type int32;
339                 units "s";
340                 default -1;
341                 config false;
342                 description "none";
343             }
344             leaf time256-states {
345                 type int32;
346                 units "s";
347                 default -1;
348                 config false;
349                 description "none";
350             }
351             leaf time512-states {
352                 type int32;
353                 units "s";
354                 default -1;
355                 config false;
356                 description "none";
357             }
358             leaf time512-states-l {
359                 type int32;
360                 units "s";
361                 default -1;
362                 config false;
363                 description "none";
364             }
365             leaf time1024-states {
366                 type int32;
367                 units "s";
368                 default -1;
369                 config false;
370                 description "none";
371             }
372             leaf time1024-states-l {
373                 type int32;
374                 units "s";
375                 default -1;
376                 config false;
377                 description "none";
378             }
379             leaf time2048-states {
380                 type int32;
381                 units "s";
382                 default -1;
383                 config false;
384                 description "none";
385             }
386             leaf time2048-states-l {
387                 type int32;
388                 units "s";
389                 default -1;
390                 config false;
391                 description "none";
392             }
393             leaf time4096-states {
394                 type int32;
395                 units "s";
396                 default -1;
397                 config false;
398                 description "none";
399             }
400             leaf time4096-states-l {
401                 type int32;
402                 units "s";
403                 default -1;
404                 config false;
405                 description "none";
406             }
407             leaf time8192-states {
408                 type int32;
409                 units "s";
410                 default -1;
411                 config false;
412                 description "none";
413             }
414             leaf time8192-states-l {
415                 type int32;
416                 units "s";
417                 default -1;
418                 config false;
419                 description "none";
420             }
421             leaf snir-min {
422                 type int8;
423                 units "dB";
424                 default -99;
425                 config false;
426                 description "Minimum signal to (noise+interference) ratio.";
427             }
428             leaf snir-max {
429                 type int8;
430                 units "dB";
431                 default -99;
432                 config false;
433                 description "Maximum signal to (noise+interference) ratio.";
434             }
435             leaf snir-avg {
436                 type int8;
437                 units "dB";
438                 default -99;
439                 config false;
440                 description "Averaged signal to (noise+interference) ratio.";
441             }
442             leaf xpd-min {
443                 type int8;
444                 units "dB";
445                 default -99;
446                 config false;
447                 description "Minimum cross polarization discrimination.";
448             }
449             leaf xpd-max {
450                 type int8;
451                 units "dB";
452                 default -99;
453                 config false;
454                 description "Maximum cross polarization discrimination.";
455             }
456             leaf xpd-avg {
457                 type int8;
458                 units "dB";
459                 default -99;
460                 config false;
461                 description "Averaged cross polarization discrimination.";
462             }
463             leaf rf-temp-min {
464                 type int8;
465                 units "C";
466                 default -99;
467                 config false;
468                 description "Lowest temperature (in degree Celsius) of the radio module inside the outdoor unit.";
469             }
470             leaf rf-temp-max {
471                 type int8;
472                 units "C";
473                 default -99;
474                 config false;
475                 description "Highest temperature (in degree Celsius) of the radio module inside the outdoor unit.";
476             }
477             leaf rf-temp-avg {
478                 type int8;
479                 units "C";
480                 default -99;
481                 config false;
482                 description "Averaged temperature (in degree Celsius) of the radio module inside the outdoor unit.";
483             }
484             leaf defect-blocks-sum {
485                 type int16;
486                 units "blocks";
487                 default -1;
488                 config false;
489                 description "Total number of blocks that were defect after receiving and could not be corrected by the FEC.";
490             }
491             leaf time-period {
492                 type int32;
493                 units "s";
494                 default -1;
495                 config false;
496                 description "Total length of the measurement period.";
497             }
498             description "Consolidated performance information of the air interface.";
499         }
500         grouping air-interface-current-performance-type-g {
501             container performance-data {
502                 config false;
503                 uses air-interface-performance-type-g;
504                 description "none";
505             }
506             uses g:otn-current-data-g;
507             description "Turns performance information into current performance information by inheriting from OTN_CurrentData.";
508         }
509         grouping air-interface-historical-performance-type-g {
510             container performance-data {
511                 config false;
512                 uses air-interface-performance-type-g;
513                 description "none";
514             }
515             uses g:otn-history-data-g;
516             description "Turns performance information into historical performance information by inheriting from OTN_HistoryData.";
517         }
518         typedef protection-type {
519             type enumeration {
520                 enum hsb {
521                     description "none";
522                 }
523             }
524             description "none";
525         }
526         typedef role-type {
527             type enumeration {
528                 enum working {
529                     description "none";
530                 }
531                 enum protection {
532                     description "none";
533                 }
534                 enum protected {
535                     description "none";
536                 }
537             }
538             description "none";
539         }
540         grouping diversity-type-g {
541             leaf diversity-name {
542                 type string;
543                 default "Diversity name not defined.";
544                 config false;
545                 description "Names to be chosen from the following list: 'spaceDiversity', 'frequencyDiversity'";
546             }
547             leaf number-of-air-interfaces-max {
548                 type int8;
549                 units "air interfaces";
550                 default 1;
551                 config false;
552                 description "Maximum number of air interfaces that could be part of this kind of diversity.";
553             }
554             description "none";
555         }
556         typedef air-interface-diversity-status-type {
557             type enumeration {
558                 enum group-down {
559                     description "All air interfaces that are members of the diversity configuration are down.";
560                 }
561                 enum not-all-ai-active {
562                     description "At least one, but not all of the air interfaces that are part of the diversity configuration is not working.";
563                 }
564                 enum all-ai-active {
565                     description "All air interfaces that are part of the diversity configuration are working.";
566                 }
567             }
568             description "none";
569         }
570         grouping air-interface-diversity-problem-severity-type-g {
571             leaf problem-kind-name {
572                 type string;
573                 default "Problem kind name not defined.";
574                 description "Name of the alarm according to AirInterfaceDiversity::AirInterfaceDiversityCapability::supportedAlarms";
575             }
576             leaf problem-kind-severity {
577                 type severity-type;
578                 default warning;
579                 description "Severity of this type of alarm.";
580             }
581             description "none";
582         }
583         grouping air-interface-diversity-current-problem-type-g {
584             leaf problem-name {
585                 type string;
586                 default "Problem name not specified.";
587                 config false;
588                 description "Name of the alarm according to AirInterfaceDiversity::AirInterfaceDiversityCapability::supportedAlarms";
589             }
590             uses mw-current-problem-g;
591             description "none";
592         }
593         grouping air-interface-diversity-performance-type-g {
594             leaf snir-min {
595                 type int8;
596                 units "dB";
597                 default -99;
598                 config false;
599                 description "Minimum signal to (noise+interference) ratio of the combined signals.";
600             }
601             leaf snir-max {
602                 type int8;
603                 units "dB";
604                 default -99;
605                 config false;
606                 description "Maximum signal to (noise+interference) ratio of the combined signals.";
607             }
608             leaf snir-avg {
609                 type int8;
610                 units "dB";
611                 default -99;
612                 config false;
613                 description "Average signal to (noise+interference) ratio of the combined signals.";
614             }
615             description "Consolidated performance information of the air interface diversity group.";
616         }
617         grouping air-interface-diversity-current-performance-type-g {
618             container performance-data {
619                 config false;
620                 uses air-interface-diversity-performance-type-g;
621                 description "none";
622             }
623             uses g:otn-current-data-g;
624             description "Turns performance information into current performance information by inheriting from OTN_CurrentData.";
625         }
626         grouping air-interface-diversity-historical-performance-type-g {
627             container performance-data {
628                 config false;
629                 uses air-interface-diversity-performance-type-g;
630                 description "none";
631             }
632             uses g:otn-history-data-g;
633             description "Turns performance information into historical performance information by inheriting from OTN_HistoryData.";
634         }
635         grouping tdm-structure-type-g {
636             leaf tdm-structure-name {
637                 type string;
638                 default "TDM structure name not defined.";
639                 config false;
640                 description "Names to be chosen from the following list: 'e1','t1','j1','e3','ds3','stm1','cpri1','cpri2','cpri3','cpri4','cpri5','cpri6' or 'cpri7'";
641             }
642             leaf tdm-segment-size {
643                 type int32;
644                 units "kbit/s";
645                 default -1;
646                 config false;
647                 description "Size of the TDM segment in kbit/s. Values to be chosen from the following list: '2048','1544','34000','44736 ','155520','614400','1228800','2457600','3072000','4915200','6144000' or '9830400;";
648             }
649             leaf max-number-of-segments-reservable {
650                 type int8;
651                 units "segments";
652                 default -1;
653                 config false;
654                 description "Device specific maximum number of segments (not depending on current air interface configuration) that can be reserved for this type of segment on a single air interface.";
655             }
656             description "none";
657         }
658         grouping structure-problem-severity-type-g {
659             leaf problem-kind-name {
660                 type string;
661                 default "Problem kind name not defined.";
662                 description "Name of the alarm according to Structure::StructureCapability::supportedAlarms";
663             }
664             leaf problem-kind-severity {
665                 type severity-type;
666                 default warning;
667                 description "Severity of this type of alarm.";
668             }
669             description "none";
670         }
671         grouping structure-current-problem-type-g {
672             leaf problem-name {
673                 type string;
674                 default "Problem name not specified.";
675                 config false;
676                 description "Name of the alarm according to Structure::StructureCapability::supportedAlarms";
677             }
678             uses mw-current-problem-g;
679             description "none";
680         }
681         typedef structure-performance-type {
682             type int32;
683             description "Consolidated performance information of the Structure.";
684         }
685         grouping structure-current-performance-type-g {
686             leaf performance-data {
687                 type structure-performance-type;
688                 config false;
689                 description "none";
690             }
691             uses g:otn-current-data-g;
692             description "Turns performance information into current performance information by inheriting from OTN_CurrentData.";
693         }
694         grouping structure-historical-performance-type-g {
695             leaf performance-data {
696                 type structure-performance-type;
697                 config false;
698                 description "none";
699             }
700             uses g:otn-history-data-g;
701             description "Turns performance information into historical performance information by inheriting from OTN_HistoryData.";
702         }
703         grouping container-type-g {
704             leaf container-name {
705                 type string;
706                 default "Container name not yet defined.";
707                 config false;
708                 description "Names to be chosen from the following list: 'ethernet','e1','t1','j1','e3','ds3','stm1','cpri1','cpri2','cpri3','cpri4','cpri5','cpri6' or 'cpri7'";
709             }
710             leaf number-of-time-slots-required {
711                 type int16;
712                 units "timeslots";
713                 default -1;
714                 config false;
715                 description "Number of time slots required for transporting this type of container. Value must be calculated by the vendor after defining the timeSlotCapacity. For containers of fixed size: numberOfTimeSlotsRequired = required bandwidth of the container divided by timeSlotCapacity. For containers of variable size the minimum (most probably 1) is to be stated.";
716             }
717             leaf tdm-time-slots-is-required {
718                 type boolean;
719                 default false;
720                 config false;
721                 description "Shall be set to '1', if this container type requires bandwidth (times slots) reserved for TDM transport.";
722             }
723             leaf bundling-is-avail {
724                 type boolean;
725                 default false;
726                 config false;
727                 description "If it is possible to combine transport resources of several radio links to transport this container type, this attribute shall be set to '1'.";
728             }
729             description "none";
730         }
731         grouping tdm-container-type-g {
732             leaf tdm-container-name {
733                 type string;
734                 default "TDM container name not defined.";
735                 config false;
736                 description "Names to be chosen from the following list: 'e1','t1','j1','e3','t3','stm1','cpri1','cpri2','cpri3','cpri4','cpri5','cpri6' or 'cpri7'";
737             }
738             leaf tdm-container-size {
739                 type int32;
740                 units "kbit/s";
741                 default -1;
742                 config false;
743                 description "Capacity required for transporting this type of container (in kbit/s). Values to be chosen from the following list: '2048','1544','34000','44736 ','155520','614400','1228800','2457600','3072000','4915200','6144000' or '9830400;";
744             }
745             description "none";
746         }
747         grouping segment-id-type-g {
748             leaf structure-id-ref {
749                 type core-model:universal-id;
750                 description "none";
751             }
752             leaf segment-id-ref {
753                 type int16;
754                 description "Combinations of structureId and segmentId must be unique inside the device to assure that every resource is used just once.";
755             }
756             description "Identifies the segments, which are used to transport the container.";
757         }
758         grouping segment-status-type-g {
759             leaf segment-status-type-id {
760                 type int16;
761                 config false;
762                 description "none";
763             }
764             leaf segment-is-reserved-for-tdm {
765                 type boolean;
766                 default false;
767                 config false;
768                 description "The number of segments, which is configured by Structure::StructureConfiguration::tdmReservedNumberOfSegements, has to be reserved for TDM. Starting from the lowest index value, these segments have to be marked with a 'true' in segmentIsReservedForTdm.
769                     ";
770             }
771             leaf operational-status {
772                 type core-model:operational-state;
773                 default disabled;
774                 config false;
775                 description "Current operational status of each segment.";
776             }
777             leaf obsolete-priority-class {
778                 type int8;
779                 default -1;
780                 config false;
781                 description "PriorityClass as inherited from the associated Container::ContainerConfiguration::priorityClass. In case the device is capable of adapting the sequence, in which segments are being dropped in case of decreasing capacity of the air interface, priorityClass shall be considered, while calculating the dropOrderRank.";
782             }
783             leaf obsolete-drop-order-rank {
784                 type int16;
785                 default -1;
786                 config false;
787                 description "In case the device is NOT capable of adapting the sequence, in which segments are being dropped in case of decreasing capacity of the air interface, dropOrderRank is number of segments minus sequence number of the segment. In case the device is capable of adapting the sequence, dropOrderRank has to be calculated by the device in dependency to the assigned priorityClass. 
788                     _unique: within Structure::StructureStatus::segmentStatusList";
789             }
790             description "none";
791         }
792         grouping container-problem-severity-type-g {
793             leaf problem-kind-name {
794                 type string;
795                 default "Problem kind name not defined.";
796                 description "Name of the alarm according to Container::ContainerCapability::supportedAlarms";
797             }
798             leaf problem-kind-severity {
799                 type severity-type;
800                 default warning;
801                 description "Severity of this type of alarm.";
802             }
803             description "none";
804         }
805         grouping container-current-problem-type-g {
806             leaf problem-name {
807                 type string;
808                 default "Problem name not specified.";
809                 config false;
810                 description "Name of the alarm according to Container::ContainerCapability::supportedAlarms";
811             }
812             uses mw-current-problem-g;
813             description "none";
814         }
815         grouping container-performance-type-g {
816             leaf tx-ethernet-bytes-max-s {
817                 type int32;
818                 units "Bytes/s";
819                 default -1;
820                 config false;
821                 description "Counts the number of Bytes of Ethernet traffic (before header compression) transmitted within a second and keeps the highest value within the measurement period. Field to be left blank for all types of TDM containers.";
822             }
823             leaf tx-ethernet-bytes-max-m {
824                 type int64;
825                 units "Bytes/min";
826                 default -1;
827                 config false;
828                 description "Counts the number of Bytes of Ethernet traffic (before header compression) transmitted within a minute and keeps the highest value with in the measurement period. Field to be left blank for all types of TDM containers.";
829             }
830             leaf tx-ethernet-bytes-sum {
831                 type int64;
832                 units "Bytes";
833                 default -1;
834                 config false;
835                 description "Total number of Bytes of Ethernet traffic (before header compression) transmitted (in direction out of the device) during the measurement period. Field to be left blank for all types of TDM containers.";
836             }
837             leaf time-period {
838                 type int32;
839                 units "s";
840                 default -1;
841                 config false;
842                 description "Total length of the measurement period in seconds.";
843             }
844             description "Consolidated performance information of the Container.";
845         }
846         grouping container-current-performance-type-g {
847             container performance-data {
848                 config false;
849                 uses container-performance-type-g;
850                 description "none";
851             }
852             uses g:otn-current-data-g;
853             description "Turns performance information into current performance information by inheriting from OTN_CurrentData.";
854         }
855         grouping container-historical-performance-type-g {
856             container performance-data {
857                 config false;
858                 uses container-performance-type-g;
859                 description "none";
860             }
861             uses g:otn-history-data-g;
862             description "Turns performance information into historical performance information by inheriting from OTN_HistoryData.";
863         }
864
865     /***********************
866     * package object-classes
867     **********************/ 
868         /***********************
869         * package air-interface
870         **********************/ 
871             list mw-air-interface-pac {
872                 key 'layer-protocol';
873                 leaf layer-protocol {
874                     type leafref {
875                         path '/core-model:network-element/core-model:ltp/core-model:lp/core-model:uuid';
876                     }
877                     description "CoreModel-CoreNetworkModule-ObjectClasses:NetworkElement/_ltpRefList/_lpList/uuid";
878                 }
879                 container air-interface-capability {
880                     config false;
881                     uses air-interface-capability-g;
882                     description "none";
883                 }
884                 container air-interface-configuration {
885                     uses air-interface-configuration-g;
886                     description "none";
887                 }
888                 container air-interface-status {
889                     config false;
890                     uses air-interface-status-g;
891                     description "none";
892                 }
893                 container air-interface-current-problems {
894                     config false;
895                     uses air-interface-current-problems-g;
896                     description "none";
897                 }
898                 container air-interface-current-performance {
899                     config false;
900                     uses air-interface-current-performance-g;
901                     description "none";
902                 }
903                 container air-interface-historical-performances {
904                     config false;
905                     uses air-interface-historical-performances-g;
906                     description "none";
907                 }
908                 description "none";
909             }
910             grouping air-interface-capability-g {
911                 leaf type-of-equipment {
912                     type string;
913                     default "Type of equipment not yet defined.";
914                     config false;
915                     description "This parameter indicates the equipment type. Instead of uploading the complete set of capabilities, capabilities of the same equipment type could be reused. Should be unique for a combination of modem, radio and their respective firmware.";
916                 }
917                 leaf tx-frequency-min {
918                     type int32;
919                     units "kHz";
920                     default -1;
921                     config false;
922                     description "Value of the minimum transmit frequency tunable at the air interface.";
923                 }
924                 leaf tx-frequency-max {
925                     type int32;
926                     units "kHz";
927                     default -1;
928                     config false;
929                     description "Value of the maximum transmit frequency tunable at the air interface.";
930                 }
931                 leaf rx-frequency-min {
932                     type int32;
933                     units "kHz";
934                     default -1;
935                     config false;
936                     description "Value of the minimum receive frequency tunable at the air interface.";
937                 }
938                 leaf rx-frequency-max {
939                     type int32;
940                     units "kHz";
941                     default -1;
942                     config false;
943                     description "Value of the maximum receive frequency tunable at the air interface.";
944                 }
945                 leaf adaptive-modulation-is-avail {
946                     type boolean;
947                     default false;
948                     config false;
949                     description "In case the device is capable of adaptive modulation, this field shall contain a 'true'.";
950                 }
951                 leaf mimo-is-avail {
952                     type boolean;
953                     default false;
954                     config false;
955                     description "In case the device is capable of MIMO, this field shall contain a 'true'.";
956                 }
957                 leaf mimo-channels {
958                     type int8;
959                     units "channels";
960                     default 1;
961                     config false;
962                     description "Maximum number (n) of spatial multiplexing streams that can be conveyed by an n x n MIMO configuration.";
963                 }
964                 leaf alic-is-avail {
965                     type boolean;
966                     default false;
967                     config false;
968                     description "In case the microwave radio is capable of Adjacent Link Interference Cancelation (canceling of interference cause by transmitters located at the same site), this field shall contain a 'true'.";
969                 }
970                 leaf atpc-is-avail {
971                     type boolean;
972                     default false;
973                     config false;
974                     description "In case the microwave radio is capable of ATPC, this field shall contain a 'true'.";
975                 }
976                 leaf atpc-range {
977                     type int8;
978                     units "dB";
979                     default 0;
980                     config false;
981                     description "Extent of the ATPC range.";
982                 }
983                 leaf encryption-is-avail {
984                     type boolean;
985                     default false;
986                     config false;
987                     description "Shall be marked 'true', if payload encryption is available.";
988                 }
989                 leaf-list supported-loop-back-kind-list {
990                     type loop-back-type;
991                     config false;
992                     min-elements 1;
993                     max-elements 2;
994                     description "List of supported kinds of looping back of header information to the remote site.";
995                 }
996                 leaf maintenance-timer-range {
997                     type string;
998                     units "s";
999                     default "Range of the maintenance timer not yet defined.";
1000                     config false;
1001                     description "Available time periods for maintenance configurations (e.g. the loop back of microwave header information) to be described. Concrete values shall be separated by commas (e.g. '10, 60, 360'). Ranges shall be expressed as two values separated by a minus (e.g. '10-360').";
1002                 }
1003                 leaf supported-alarms {
1004                     type string;
1005                     default "Supported alarms not yet defined.";
1006                     config false;
1007                     description "Available alarms to be listed. Mandatory:'signalIsLost','rslIsExceeded','temperatureIsExceeded','modemIsFaulty','radioIsFaulty' and 'modulationIsDownShifted'. Further alarms might be added by the device. Names are to be separated by commas.";
1008                 }
1009                 list supported-channel-plan-list {
1010                     key 'supported-channel-plan';
1011                     config false;
1012                     min-elements 1;
1013                     uses channel-plan-type-g;
1014                     description "List of channel spacing that are supported by the device.";
1015                 }
1016                 description "Describes the 'analog' capabilities of modem and transmitter of the microwave device. Value ranges of attributes are not independently (e.g. min. and max. transmit power depends on modulation). Legal combinations of values are expressed in transmissionModeTypes.";
1017             }
1018             grouping air-interface-configuration-g {
1019                 leaf air-interface-name {
1020                     type string;
1021                     default "Air interface ID not yet defined.";
1022                     description "Operator specific microwave link ID (often used for coding area, type of element and sequential number).";
1023                 }
1024                 leaf radio-signal-id {
1025                     type string;
1026                     default "Radio signal ID not yet defined.";
1027                     description "The radioSignalId is transmitted on the air interface so the remote site of the link synchronizes on the correct transmitter. The local radio MUST NOT synchronize on a radio signal with a different radioSignalId. The link ID is neither an ID necessary to span the model nor an ID referencing external data. It is just some sort of name of the link transmitted so the correct remote site can be identified in an interference situation. The value zero might be used to make the microwave to disable the link ID check.";
1028                 }
1029                 leaf tx-frequency {
1030                     type int32;
1031                     units "kHz";
1032                     default -1;
1033                     description "Center frequency of the transmit channel. The values to be configured have to exactly match the values listed in the international agreement referenced in channelPlanID. In case of automated selection of the transmit frequency this field shall describe the lowest center frequency selectable.";
1034                 }
1035                 leaf rx-frequency {
1036                     type int32;
1037                     units "kHz";
1038                     default -1;
1039                     description "Center frequency of the receive channel.";
1040                 }
1041                 leaf tx-channel-bandwidth {
1042                     type int32;
1043                     units "kHz";
1044                     default -1;
1045                     description "Bandwidth of the transmit channel. The value shall be expressed explicitly (means in kHz) not as a reference to an international agreement. The values shall be chosen from the following _list: 3.500, 7.000, 14.000, 27.500, 28.000, 29.000, 29.650, 30.000, 40.000, 50.000, 55.000, 56.000, 59.300, 60.000, 80.000, 100.000, 112.000, 120.000, 150.000, 200.000, 250.000, 500.000, 750.000, 1.000.000, 1.250.000, 1.500.000, 1.750.000, 2.000.000;";
1046                 }
1047                 leaf rx-channel-bandwidth {
1048                     type int32;
1049                     units "kHz";
1050                     default -1;
1051                     description "Bandwidth of the receive channel. The value shall be expressed explicitly (means in kHz) not as a reference to an international agreement. The values shall be chosen from the following _list: 3.500, 7.000, 14.000, 27.500, 28.000, 29.000, 29.650, 30.000, 40.000, 50.000, 55.000, 56.000, 59.300, 60.000, 80.000, 100.000, 112.000, 120.000, 150.000, 200.000, 250.000, 500.000, 750.000, 1.000.000, 1.250.000, 1.500.000, 1.750.000, 2.000.000;";
1052                 }
1053                 leaf polarization {
1054                     type polarization-type;
1055                     default not-specified;
1056                     description "Allows documenting the polarization of the air interface.";
1057                 }
1058                 leaf power-is-on {
1059                     type boolean;
1060                     default true;
1061                     description "Power ON. Activation of the entire radio in a split mount configuration shall be expressed as a 'true'.";
1062                 }
1063                 leaf transmitter-is-on {
1064                     type boolean;
1065                     default false;
1066                     description "Activation of the transmitter inside the radio shall be expressed as a 'true'.";
1067                 }
1068                 leaf receiver-is-on {
1069                     type boolean;
1070                     default true;
1071                     description "Maintenance Feature. Activation of the receiver inside the radio shall be expressed as a 'true'. Attribute shall also be used for RX main and RX diversity squelches in case of diversity configurations.
1072                         ";
1073                 }
1074                 leaf tx-power {
1075                     type int8;
1076                     units "dBm";
1077                     default 99;
1078                     description "Transmit power to be configured on the microwave link. Signed Byte is required. The actually operated transmit power might be lower depending on adaptive modulation and ATPC.";
1079                 }
1080                 leaf adaptive-modulation-is-on {
1081                     type boolean;
1082                     default false;
1083                     description "Adaptive Modulation. Activation of adaptive modulation shall be expressed as a 'true'.";
1084                 }
1085                 leaf modulation-min {
1086                     type int16;
1087                     units "symbols";
1088                     default -1;
1089                     description "Minimum modulation to be configured (in case adaptive modulation is not used, this value represents also the fixed modulation). The modulation scheme shall be described by the number of states in the phase diagram (e.g. BPSK->'2' or 256QAM->'256'). Allowed values are defined in TypeDefinitions::transmissionModeType::modulationScheme.";
1090                 }
1091                 leaf modulation-max {
1092                     type int16;
1093                     units "symbols";
1094                     default -1;
1095                     description "Maximum modulation to be configured. The value of this field is only relevant, if Adaptive Modulation has been activated. The modulation scheme shall be described by the number of states in the phase diagram (e.g. BPSK->'2' or 256QAM->'256'). Allowed values are defined in TypeDefinitions::transmissionModeType::modulationScheme.";
1096                 }
1097                 leaf xpic-is-on {
1098                     type boolean;
1099                     default false;
1100                     description "Activation of Cross Polarization Interference Cancelation shall be expressed as a 'true'. In case XPIC is not available for the current combination of channel bandwidth and modulation or the hardware in general, this parameter shall always be set to 'false'.";
1101                 }
1102                 leaf mimo-is-on {
1103                     type boolean;
1104                     default false;
1105                     description "Activation of Multiple Input Multiple Output (MIMO) shall be expressed as a 'true'.";
1106                 }
1107                 leaf alic-is-on {
1108                     type boolean;
1109                     default false;
1110                     description "Activation of Adjacent Link Interference Cancelation (ALIC) shall be expressed as a 'true'.";
1111                 }
1112                 leaf atpc-is-on {
1113                     type boolean;
1114                     default false;
1115                     description "ATPC. Activation of Automated Transmit Power Control shall be expressed as a 'true'.";
1116                 }
1117                 leaf atpc-thresh-upper {
1118                     type int16;
1119                     units "dBm";
1120                     default 99;
1121                     description "If the receive level is higher than the upper threshold value, the transmitter is notified to decrease transmit power.";
1122                 }
1123                 leaf atpc-thresh-lower {
1124                     type int16;
1125                     units "dBm";
1126                     default 99;
1127                     description "If the receive level is lower than the lower threshold value, the transmitter is notified to increase transmit power.";
1128                 }
1129                 leaf auto-freq-select-is-on {
1130                     type boolean;
1131                     default false;
1132                     description "Activation of automatically selecting the transmit frequency in unlicensed bands shall be expressed as a 'true'.";
1133                 }
1134                 leaf auto-freq-select-range {
1135                     type int8;
1136                     units "channels";
1137                     default -1;
1138                     description "Number of transmit channels (starting at the center frequency defined in txFrequency and with channel bandwidth according to txChannelBandwidth) that define the range within the transmit frequency can automatically been chosen. ";
1139                 }
1140                 leaf modulation-is-on {
1141                     type boolean;
1142                     default true;
1143                     description "Maintenance Feature. De-activation of the modulation of the carrier signal for fault management shall be expressed as a 'false'.";
1144                 }
1145                 leaf encryption-is-on {
1146                     type boolean;
1147                     default false;
1148                     description "Activates encryption of the payload.";
1149                 }
1150                 leaf cryptographic-key {
1151                     type string;
1152                     default "Cryptographic key not yet defined.";
1153                     description "Key for transforming plaintext into ciphertext data.";
1154                 }
1155                 leaf loop-back-kind-on {
1156                     type loop-back-type;
1157                     default none;
1158                     description "Maintenance Feature. The currently configured type of looping back of the air interface header shall be expressed here. The received header is returned to the remote site.";
1159                 }
1160                 leaf maintenance-timer {
1161                     type int32;
1162                     units "s";
1163                     default -1;
1164                     description "Time of existence of any maintenance configuration (e.g. the loop back of microwave header information). Valid values are defined in AirInterface::AirInterfaceCapability::maintenanceTimerRange.";
1165                 }
1166                 list problem-kind-severity-list {
1167                     key 'problem-kind-name';
1168                     min-elements 6;
1169                     uses air-interface-problem-severity-type-g;
1170                     description "Severity of the problem to be configured.";
1171                 }
1172                 description "Configuration of the radio link.";
1173             }
1174             grouping air-interface-status-g {
1175                 leaf tx-frequency-cur {
1176                     type int32;
1177                     units "kHz";
1178                     default -1;
1179                     config false;
1180                     description "Center frequency of the currently operated transmit channel.";
1181                 }
1182                 leaf rx-frequency-cur {
1183                     type int32;
1184                     units "kHz";
1185                     default -1;
1186                     config false;
1187                     description "Center frequency of the currently operated receive channel.";
1188                 }
1189                 leaf tx-level-cur {
1190                     type int8;
1191                     units "dBm";
1192                     default 99;
1193                     config false;
1194                     description "Current transmit level.";
1195                 }
1196                 leaf rx-level-cur {
1197                     type int8;
1198                     units "dBm";
1199                     default 99;
1200                     config false;
1201                     description "Current receive level.";
1202                 }
1203                 leaf modulation-cur {
1204                     type int16;
1205                     units "symbols";
1206                     default -1;
1207                     config false;
1208                     description "Currently operated modulation on transmit path. The modulation scheme shall be described by the number of states in the phase diagram (e.g. BPSK->'2' or 256QAM->'256'). Allowed values are defined in TypeDefinitions::transmissionModeType::modulationScheme.";
1209                 }
1210                 leaf code-rate-cur {
1211                     type int8;
1212                     units "%";
1213                     default -1;
1214                     config false;
1215                     description "Code rate of the currently operated coding scheme (Net bit rate ? Gross bit rate ? code rate).";
1216                 }
1217                 leaf snir-cur {
1218                     type int8;
1219                     units "dB";
1220                     default -99;
1221                     config false;
1222                     description "Currently measured signal to (noise+interference) ratio.";
1223                 }
1224                 leaf xpd-cur {
1225                     type int8;
1226                     units "dB";
1227                     default -99;
1228                     config false;
1229                     description "Currently measured cross polarization discrimination.";
1230                 }
1231                 leaf rf-temp-cur {
1232                     type int8;
1233                     units "Celsius";
1234                     default -99;
1235                     config false;
1236                     description "Current temperature (in degree Celsius) of the radio module inside the outdoor unit.";
1237                 }
1238                 leaf last-status-change {
1239                     type yang:date-and-time;
1240                     default "2017-01-01T00:00:00.0Z";
1241                     config false;
1242                     description "Time the Air Interface entered its current operational status.  ";
1243                 }
1244                 leaf radio-power-is-up {
1245                     type boolean;
1246                     default false;
1247                     config false;
1248                     description "If the radio unit has power and is switched on, this shall be expressed as a 'true'.";
1249                 }
1250                 leaf link-is-up {
1251                     type boolean;
1252                     default false;
1253                     config false;
1254                     description "If connection is established to the remote site with the same linkID, this shall be expressed as a 'true'.";
1255                 }
1256                 leaf xpic-is-up {
1257                     type boolean;
1258                     default false;
1259                     config false;
1260                     description "If XPIC is currently actually working (not just configured), this shall be expressed as a 'true'.";
1261                 }
1262                 leaf mimo-is-up {
1263                     type boolean;
1264                     default false;
1265                     config false;
1266                     description "If MIMO is currently actually working (not just configured), this shall be expressed as a 'true'.";
1267                 }
1268                 leaf alic-is-up {
1269                     type boolean;
1270                     default false;
1271                     config false;
1272                     description "If Adjacent Link Interference Cancelation (ALIC) is currently actually working (not just configured), this shall be expressed as a 'true'.";
1273                 }
1274                 leaf atpc-is-up {
1275                     type boolean;
1276                     default false;
1277                     config false;
1278                     description "If ATPC is currently actually working (not just configured), this shall be expressed as a 'true'.";
1279                 }
1280                 leaf auto-freq-select-is-up {
1281                     type boolean;
1282                     default false;
1283                     config false;
1284                     description "If automated frequency selection is currently actually working (not just configured), this shall be expressed as a 'true'.";
1285                 }
1286                 leaf loop-back-kind-up {
1287                     type loop-back-type;
1288                     default none;
1289                     config false;
1290                     description "The currently active (not just configured) type of looping back of the air interface header shall be expressed here. The received header is returned to the remote site.";
1291                 }
1292                 leaf local-end-point-id {
1293                     type string;
1294                     default "not-supported";
1295                     config false;
1296                     description "The value of the localEndPointId is a vendor specific identifier of the air interface, used by the node to discover a microwave radio link.";
1297                 }
1298                 leaf remote-end-point-id {
1299                     type string;
1300                     default "not-supported";
1301                     config false;
1302                     description "The value of the remoteEndPointId is a vendor specific identifier or the airinterface at the remote side, used to by the node to discover a microwave radio link.";
1303                 }
1304                 description "Measurements of current values on the air interface and operational status of the device.";
1305             }
1306             grouping air-interface-current-problems-g {
1307                 list current-problem-list {
1308                     key 'sequence-number';
1309                     config false;
1310                     uses air-interface-current-problem-type-g;
1311                     description "none";
1312                 }
1313                 description "none";
1314             }
1315             grouping air-interface-current-performance-g {
1316                 list current-performance-data-list {
1317                     key 'scanner-id';
1318                     config false;
1319                     min-elements 1;
1320                     max-elements 2;
1321                     uses air-interface-current-performance-type-g;
1322                     description "At least values of the counters, which are reset every 15 minutes, are to be provided. If available, the current values of the counters, which are reset every 24 hour, can be provided, too.";
1323                 }
1324                 description "Aggregated performance information of the air interface at a particular moment.";
1325             }
1326             grouping air-interface-historical-performances-g {
1327                 list historical-performance-data-list {
1328                     key 'history-data-id';
1329                     config false;
1330                     uses air-interface-historical-performance-type-g;
1331                     description "none";
1332                 }
1333                 description "Aggregated performance information of the air interface for a pre-defined measurement interval.";
1334             }
1335             list co-channel-group {
1336                 key 'co-channel-group-id';
1337                 uses co-channel-group-g;
1338                 description "none";
1339             }
1340             grouping co-channel-group-g {
1341                 leaf co-channel-group-id {
1342                     type core-model:universal-id;
1343                     description "none";
1344                 }
1345                 leaf-list air-interface-list {
1346                     type leafref {
1347                         path '/core-model:network-element/core-model:ltp/core-model:uuid';
1348                     }
1349                     description "List of air interfaces, which are part of the co-channel (XPIC, MIMO, ALIC) group.";
1350                 }
1351                 leaf sort-of-co-channel-group {
1352                     type string;
1353                     default "Kind of co-channel group not specified.";
1354                     description "Type of group of air interfaces with the same transmit and receive frequency. The values shall be chosen from the following _list:'XPIC', 'MIMO', 'ALIC';";
1355                 }
1356                 leaf-list logical-termination-point {
1357                     type leafref {
1358                         path '/core-model:network-element/core-model:ltp/core-model:uuid';
1359                     }
1360                     description "none";
1361                 }
1362                 description "Required for configuring XPIC, MIMO and ALIC.";
1363             }
1364
1365         /***********************
1366         * package air-interface-hsb
1367         **********************/ 
1368             list mw-air-interface-hsb-end-point-pac {
1369                 key 'endpoint';
1370                 leaf role {
1371                     type role-type;
1372                     default working;
1373                     description "none";
1374                 }
1375                 leaf endpoint {
1376                     type leafref {
1377                         path '/core-model:forwarding-construct/core-model:fc-port/core-model:uuid';
1378                     }
1379                     description "none";
1380                 }
1381                 description "The EndPoint (EP) object class models the access to the FC function. Each EndPoint instance has a role (e.g., working, protection, protected, hub, spoke, leaf, root, etc.) with respect to the FC function. The association of the FC to LTPs is made via EndPoints (essentially the ports of the FC) where each EndPoint (EP) of the FC has a role in the context of the FC. The traffic forwarding between the associated End PointsEPs of the FC depends upon the type of FC and may be associated with FCSwitch object instances. In cases where there is protection conveys the protecting role of the access to the FC.  The EP replaces the Protection Unit of a traditional protection model. It represents a protected (resilient/reliable) point or a protecting (unreliable working or protection) point.";
1382             }
1383             list mw-air-interface-hsb-fc-switch-pac {
1384                 key 'fcswitch';
1385                 leaf prot-type {
1386                     type protection-type;
1387                     default hsb;
1388                     description "Indicates the protection scheme that is used for the ProtectionGroup.";
1389                 }
1390                 leaf air-interface-hsb-configuration-is-faulty-severity {
1391                     type severity-type;
1392                     default warning;
1393                     description "The level of severity of an airInterfaceHsbConfigurationIsFaulty alarm shall be chosen from an enumeration.";
1394                 }
1395                 leaf air-interface-hsb-is-partly-down-severity {
1396                     type severity-type;
1397                     default warning;
1398                     description "The level of severity for one link out of the HSB configuration being down shall be chosen from an enumeration.";
1399                 }
1400                 leaf air-interface-hsb-is-down-severity {
1401                     type severity-type;
1402                     default warning;
1403                     description "The level of severity of the total HSB configuration being down shall be chosen from an enumeration.";
1404                 }
1405                 leaf fcswitch {
1406                     type leafref {
1407                         path '/core-model:forwarding-construct/core-model:fc-switch/core-model:uuid';
1408                     }
1409                     description "none";
1410                 }
1411                 description "Represents and defines a protection switch structure encapsulated in the forwarding construct. Essentially performs the function of Protection Group. Associates to 2 or more Endpoints each playing the role of a Protection Unit. One or more protection EndPoints (standby/backup) provide protection for one or more working (i.e. regular/main/preferred) Endpoints where either protection or working can feed one or more protected Endpoint. May be used in revertive or non-revertive (symmetric) mode. When in revertive mode may define waitToRestore time. May be used in one of several modes including source switch, destination switched, source and destination switched etc (covering cases such as  1+1 ane 1:1).  May be lockout (prevented from switching), force switched or manual switched. Will indicate switch state and change of state.";
1412             }
1413
1414         /***********************
1415         * package air-interface-diversity
1416         **********************/ 
1417             list mw-air-interface-diversity-pac {
1418                 key 'layer-protocol';
1419                 leaf layer-protocol {
1420                     type leafref {
1421                         path '/core-model:network-element/core-model:ltp/core-model:lp/core-model:uuid';
1422                     }
1423                     description "CoreModel-CoreNetworkModule-ObjectClasses:NetworkElement/_ltpRefList/_lpList/uuid";
1424                 }
1425                 container air-interface-diversity-capability {
1426                     config false;
1427                     uses air-interface-diversity-capability-g;
1428                     description "none";
1429                 }
1430                 container air-interface-diversity-configuration {
1431                     uses air-interface-diversity-configuration-g;
1432                     description "none";
1433                 }
1434                 container air-interface-diversity-status {
1435                     config false;
1436                     uses air-interface-diversity-status-g;
1437                     description "none";
1438                 }
1439                 container air-interface-diversity-current-problems {
1440                     config false;
1441                     uses air-interface-diversity-current-problems-g;
1442                     description "none";
1443                 }
1444                 container air-interface-diversity-current-performance {
1445                     config false;
1446                     uses air-interface-diversity-current-performance-g;
1447                     description "none";
1448                 }
1449                 container air-interface-diversity-historical-performances {
1450                     config false;
1451                     uses air-interface-diversity-historical-performances-g;
1452                     description "none";
1453                 }
1454                 description "none";
1455             }
1456             grouping air-interface-diversity-capability-g {
1457                 list available-kinds-of-diversity {
1458                     key 'diversity-name';
1459                     config false;
1460                     uses diversity-type-g;
1461                     description "Available types of diversity to be listed.";
1462                 }
1463                 leaf supported-alarms {
1464                     type string;
1465                     default "Supported alarms not yet defined.";
1466                     config false;
1467                     description "Available alarms to be listed. Mandatory:'airInterfaceDiversityConfigurationIsPartlyDown' (at least one air interface is down, but not all of them) and 'airInterfaceDiversityConfigurationIsDown' (all air interfaces are down). Further alarms might be added by the device. Names are to be separated by commas.";
1468                 }
1469                 description "Describes the capabilities in implementing different types of air interface diversity.";
1470             }
1471             grouping air-interface-diversity-configuration-g {
1472                 container air-interface-diversity {
1473                     uses diversity-type-g;
1474                     description "Type of air interface diversity configured at the link.";
1475                 }
1476                 leaf-list air-interface-ltp-list {
1477                     type leafref {
1478                         path '/core-model:network-element/core-model:ltp/core-model:uuid';
1479                     }
1480                     min-elements 2;
1481                     description "_multiplicity:2-ThisAirInterfaceDiversity::AirInterfaceDiversityConfiguration::airInterfaceDiversity::diversityType::numberOfAirInterfacesMax";
1482                 }
1483                 list problem-kind-severity-list {
1484                     key 'problem-kind-name';
1485                     min-elements 3;
1486                     uses air-interface-diversity-problem-severity-type-g;
1487                     description "Severity of the problem to be configured.";
1488                 }
1489                 description "none";
1490             }
1491             grouping air-interface-diversity-status-g {
1492                 leaf snir-cur {
1493                     type int8;
1494                     units "dB";
1495                     default -99;
1496                     config false;
1497                     description "Currently measured signal to (noise+interference) ratio of the combined signals.";
1498                 }
1499                 leaf air-interface-diversity-status {
1500                     type air-interface-diversity-status-type;
1501                     default group-down;
1502                     config false;
1503                     description "Status of the air interface bundle. ";
1504                 }
1505                 leaf last-status-change {
1506                     type yang:date-and-time;
1507                     default "2017-01-01T00:00:00.0Z";
1508                     config false;
1509                     description "Time the Diversity Group entered its current operational status.  ";
1510                 }
1511                 description "none";
1512             }
1513             grouping air-interface-diversity-current-problems-g {
1514                 list current-problem-list {
1515                     key 'sequence-number';
1516                     config false;
1517                     uses air-interface-diversity-current-problem-type-g;
1518                     description "none";
1519                 }
1520                 description "none";
1521             }
1522             grouping air-interface-diversity-current-performance-g {
1523                 list current-performance-data-list {
1524                     key 'scanner-id';
1525                     config false;
1526                     min-elements 1;
1527                     max-elements 2;
1528                     uses air-interface-diversity-current-performance-type-g;
1529                     description "At least values of the counters, which are reset every 15 minutes, are to be provided. If available, the current values of the counters, which are reset every 24 hour, can be provided, too.";
1530                 }
1531                 description "Aggregated performance information of the air interface diversity configuration at a particular moment.";
1532             }
1533             grouping air-interface-diversity-historical-performances-g {
1534                 list historical-performance-data-list {
1535                     key 'history-data-id';
1536                     config false;
1537                     uses air-interface-diversity-historical-performance-type-g;
1538                     description "none";
1539                 }
1540                 description "Aggregated performance information of the air interface diversity configuration for a pre-defined measurement interval.";
1541             }
1542
1543         /***********************
1544         * package pure-ethernet-structure
1545         **********************/ 
1546             list mw-pure-ethernet-structure-pac {
1547                 if-feature pure-ethernet;
1548                 key 'layer-protocol';
1549                 leaf layer-protocol {
1550                     type leafref {
1551                         path '/core-model:network-element/core-model:ltp/core-model:lp/core-model:uuid';
1552                     }
1553                     description "CoreModel-CoreNetworkModule-ObjectClasses:NetworkElement/_ltpRefList/_lpList/uuid";
1554                 }
1555                 container pure-ethernet-structure-capability {
1556                     config false;
1557                     uses pure-ethernet-structure-capability-g;
1558                     description "none";
1559                 }
1560                 container pure-ethernet-structure-configuration {
1561                     uses pure-ethernet-structure-configuration-g;
1562                     description "none";
1563                 }
1564                 container pure-ethernet-structure-status {
1565                     config false;
1566                     uses pure-ethernet-structure-status-g;
1567                     description "none";
1568                 }
1569                 container pure-ethernet-structure-current-problems {
1570                     config false;
1571                     uses pure-ethernet-structure-current-problems-g;
1572                     description "none";
1573                 }
1574                 container pure-ethernet-structure-current-performance {
1575                     config false;
1576                     uses pure-ethernet-structure-current-performance-g;
1577                     description "none";
1578                 }
1579                 container pure-ethernet-structure-historical-performances {
1580                     config false;
1581                     uses pure-ethernet-structure-historical-performances-g;
1582                     description "none";
1583                 }
1584                 description "The pureEthernetStructure_Pac and its attached classes MUST be provided on management interfaces of microwave devices, which are transporting Ethernet traffic only.";
1585             }
1586             grouping pure-ethernet-structure-capability-g {
1587                 leaf structure-id {
1588                     type core-model:universal-id;
1589                     config false;
1590                     description "Identifies the Structure for bundling and container.";
1591                 }
1592                 leaf supported-alarms {
1593                     type string;
1594                     default "Supported alarms not yet defined.";
1595                     config false;
1596                     description "Available alarms to be listed. Mandatory:non. Names are to be separated by commas. Further alarms might be added by the device.";
1597                 }
1598                 description "Describes the logical structuring of the physical capacity provided by a pure Ethernet microwave device. Segmentation is not available. No fixed segment size. No TDM transport.";
1599             }
1600             grouping pure-ethernet-structure-configuration-g {
1601                 list problem-kind-severity-list {
1602                     key 'problem-kind-name';
1603                     uses structure-problem-severity-type-g;
1604                     description "Severity of the type of problem to be configured.";
1605                 }
1606                 description "none";
1607             }
1608             grouping pure-ethernet-structure-status-g {
1609                 container segment-status-list {
1610                     config false;
1611                     uses segment-status-type-g;
1612                     description "Status of the Ethernet transport segment. Always just one segment.";
1613                 }
1614                 leaf last-status-change {
1615                     type yang:date-and-time;
1616                     default "2017-01-01T00:00:00.0Z";
1617                     config false;
1618                     description "Time and date of the last update of the status information.  ";
1619                 }
1620                 description "none";
1621             }
1622             grouping pure-ethernet-structure-current-problems-g {
1623                 list current-problem-list {
1624                     key 'sequence-number';
1625                     config false;
1626                     uses structure-current-problem-type-g;
1627                     description "none";
1628                 }
1629                 description "none";
1630             }
1631             grouping pure-ethernet-structure-current-performance-g {
1632                 list current-performance-data-list {
1633                     key 'scanner-id';
1634                     config false;
1635                     min-elements 1;
1636                     max-elements 2;
1637                     uses structure-current-performance-type-g;
1638                     description "At least values of the counters, which are reset every 15 minutes, are to be provided. If available, the current values of the counters, which are reset every 24 hour, can be provided, too.";
1639                 }
1640                 description "Aggregated performance information of the structure of an pure Ethernet microwave at a particular moment.";
1641             }
1642             grouping pure-ethernet-structure-historical-performances-g {
1643                 list historical-performance-data-list {
1644                     key 'history-data-id';
1645                     config false;
1646                     uses structure-historical-performance-type-g;
1647                     description "none";
1648                 }
1649                 description "Aggregated performance information of the structure of an pure Ethernet microwave for a pre-defined measurement interval.";
1650             }
1651             feature pure-ethernet {
1652                 description "Feature 'pure-ethernet' is mandatory for device types transporting pure Ethernet.";
1653             }
1654
1655         /***********************
1656         * package hybrid-mw-structure
1657         **********************/ 
1658             list mw-hybrid-mw-structure-pac {
1659                 if-feature hybrid-microwave;
1660                 key 'layer-protocol';
1661                 leaf layer-protocol {
1662                     type leafref {
1663                         path '/core-model:network-element/core-model:ltp/core-model:lp/core-model:uuid';
1664                     }
1665                     description "CoreModel-CoreNetworkModule-ObjectClasses:NetworkElement/_ltpRefList/_lpList/uuid";
1666                 }
1667                 container hybrid-mw-structure-capability {
1668                     config false;
1669                     uses hybrid-mw-structure-capability-g;
1670                     description "none";
1671                 }
1672                 container hybrid-mw-structure-configuration {
1673                     uses hybrid-mw-structure-configuration-g;
1674                     description "none";
1675                 }
1676                 container hybrid-mw-structure-status {
1677                     config false;
1678                     uses hybrid-mw-structure-status-g;
1679                     description "none";
1680                 }
1681                 container hybrid-mw-structure-current-problems {
1682                     config false;
1683                     uses hybrid-mw-structure-current-problems-g;
1684                     description "none";
1685                 }
1686                 container hybrid-mw-structure-current-performance {
1687                     config false;
1688                     uses hybrid-mw-structure-current-performance-g;
1689                     description "none";
1690                 }
1691                 container hybrid-mw-structure-historical-performances {
1692                     config false;
1693                     uses hybrid-mw-structure-historical-performances-g;
1694                     description "none";
1695                 }
1696                 description "The HybridMwStructure_Pac and its attached classes MUST be provided on management interfaces of microwave devices, which are transporting TDM and Ethernet traffic.";
1697             }
1698             grouping hybrid-mw-structure-capability-g {
1699                 leaf structure-id {
1700                     type core-model:universal-id;
1701                     config false;
1702                     description "Identifies the Structure for bundling and container.";
1703                 }
1704                 list supported-tdm-structure-types-list {
1705                     key 'tdm-structure-name';
1706                     config false;
1707                     min-elements 1;
1708                     uses tdm-structure-type-g;
1709                     description "Lists the TDM frame types that are supported.";
1710                 }
1711                 leaf supported-alarms {
1712                     type string;
1713                     default "Supported alarms not yet defined.";
1714                     config false;
1715                     description "Available alarms to be listed. Mandatory:non. Names are to be separated by commas. Further alarms might be added by the device.";
1716                 }
1717                 description "Describes the logical structuring of the physical capacity provided by a hybrid microwave device (TDM + Ethernet). Segmentation is available. TDM transport is available.";
1718             }
1719             grouping hybrid-mw-structure-configuration-g {
1720                 container structure-type {
1721                     uses tdm-structure-type-g;
1722                     description "TDM frame to be applied.";
1723                 }
1724                 leaf number-of-tdm-segments-to-be-reserved {
1725                     type int16;
1726                     default -1;
1727                     description "Allows to configure the number of segments reserved for TDM frames of the type specified in HybridMwStructure::HybridMwStructureConfiguration::structureType";
1728                 }
1729                 list problem-kind-severity-list {
1730                     key 'problem-kind-name';
1731                     uses structure-problem-severity-type-g;
1732                     description "Severity of the type of problem to be configured.";
1733                 }
1734                 description "none";
1735             }
1736             grouping hybrid-mw-structure-status-g {
1737                 list segment-status-list {
1738                     key 'segment-status-type-id';
1739                     config false;
1740                     uses segment-status-type-g;
1741                     description "Status of each segment (all TDM and one Ethernet). Multiplicity = HybridMwStructure::StructureConfiguration::tdmReservedNumberOfSegments + 1";
1742                 }
1743                 leaf last-status-change {
1744                     type yang:date-and-time;
1745                     default "2017-01-01T00:00:00.0Z";
1746                     config false;
1747                     description "Time and date of the last update of the status information.  ";
1748                 }
1749                 description "none";
1750             }
1751             grouping hybrid-mw-structure-current-problems-g {
1752                 list current-problem-list {
1753                     key 'sequence-number';
1754                     config false;
1755                     uses structure-current-problem-type-g;
1756                     description "none";
1757                 }
1758                 description "none";
1759             }
1760             grouping hybrid-mw-structure-current-performance-g {
1761                 list current-performance-data-list {
1762                     key 'scanner-id';
1763                     config false;
1764                     min-elements 1;
1765                     max-elements 2;
1766                     uses structure-current-performance-type-g;
1767                     description "At least values of the counters, which are reset every 15 minutes, are to be provided. If available, the current values of the counters, which are reset every 24 hour, can be provided, too.";
1768                 }
1769                 description "Aggregated performance information of the structure of a hybrid microwave at a particular moment.";
1770             }
1771             grouping hybrid-mw-structure-historical-performances-g {
1772                 list historical-performance-data-list {
1773                     key 'history-data-id';
1774                     config false;
1775                     uses structure-historical-performance-type-g;
1776                     description "none";
1777                 }
1778                 description "Aggregated performance information of the structure of a hybrid microwave for a pre-defined measurement interval.";
1779             }
1780             feature hybrid-microwave {
1781                 description "Feature 'hybrid-microwave' is mandatory for device types transporting Ethernet + TDM.";
1782             }
1783
1784         /***********************
1785         * package ethernet-container
1786         **********************/ 
1787             list mw-ethernet-container-pac {
1788                 key 'layer-protocol';
1789                 leaf layer-protocol {
1790                     type leafref {
1791                         path '/core-model:network-element/core-model:ltp/core-model:lp/core-model:uuid';
1792                     }
1793                     description "CoreModel-CoreNetworkModule-ObjectClasses:NetworkElement/_ltpRefList/_lpList/uuid";
1794                 }
1795                 container ethernet-container-capability {
1796                     config false;
1797                     uses ethernet-container-capability-g;
1798                     description "none";
1799                 }
1800                 container ethernet-container-configuration {
1801                     uses ethernet-container-configuration-g;
1802                     description "none";
1803                 }
1804                 container ethernet-container-status {
1805                     config false;
1806                     uses ethernet-container-status-g;
1807                     description "none";
1808                 }
1809                 container ethernet-container-current-problems {
1810                     config false;
1811                     uses ethernet-container-current-problems-g;
1812                     description "none";
1813                 }
1814                 container ethernet-container-current-performance {
1815                     config false;
1816                     uses ethernet-container-current-performance-g;
1817                     description "none";
1818                 }
1819                 container ethernet-container-historical-performances {
1820                     config false;
1821                     uses ethernet-container-historical-performances-g;
1822                     description "none";
1823                 }
1824                 description "none";
1825             }
1826             grouping ethernet-container-capability-g {
1827                 leaf bundling-is-avail {
1828                     type boolean;
1829                     default false;
1830                     config false;
1831                     description "This attribute has to be set on 'true', if the device allows combining resources from several air interfaces for transporting this Ethernet container.";
1832                 }
1833                 leaf packet-compression-is-avail {
1834                     type boolean;
1835                     default false;
1836                     config false;
1837                     description "In case packet compression can be activated, but not configured to a certain type, packetCompressionAvail shall be set on 'true', but none of the compression level specific booleans.";
1838                 }
1839                 leaf layer2-compression-is-avail {
1840                     type boolean;
1841                     default false;
1842                     config false;
1843                     description "Packet compression on layer 2 available at the device.";
1844                 }
1845                 leaf vlan-compression-is-avail {
1846                     type boolean;
1847                     default false;
1848                     config false;
1849                     description "Packet compression on VLAN layer available at the device.";
1850                 }
1851                 leaf q-in-q-compression-is-avail {
1852                     type boolean;
1853                     default false;
1854                     config false;
1855                     description "Packet compression on layer of a second VLAN available at the device.";
1856                 }
1857                 leaf mpls-compression-is-avail {
1858                     type boolean;
1859                     default false;
1860                     config false;
1861                     description "Packet compression on mpls layer available at the device.";
1862                 }
1863                 leaf ipv4-compression-is-avail {
1864                     type boolean;
1865                     default false;
1866                     config false;
1867                     description "Packet compression on layer 3 for IPv4 available at the device.";
1868                 }
1869                 leaf ipv6-compression-is-avail {
1870                     type boolean;
1871                     default false;
1872                     config false;
1873                     description "Packet compression on layer 3 for IPv6 available at the device.";
1874                 }
1875                 leaf layer4-compression-is-avail {
1876                     type boolean;
1877                     default false;
1878                     config false;
1879                     description "Packet compression on layer 4 (TCP and UDP header) available at the device.";
1880                 }
1881                 leaf encryption-is-avail {
1882                     type boolean;
1883                     default false;
1884                     config false;
1885                     description "Shall be marked 'true', if Ethernet payload encryption is available.";
1886                 }
1887                 leaf supported-alarms {
1888                     type string;
1889                     default "Supported alarms not yet defined.";
1890                     config false;
1891                     description "Available alarms to be listed. Mandatory:'framingIsFaulty' and 'containerIsDown'. Further alarms might be added by the device.";
1892                 }
1893                 description "none";
1894             }
1895             grouping ethernet-container-configuration-g {
1896                 leaf container-id {
1897                     type string;
1898                     default "No Ethernet Flow associated yet.";
1899                     description "ContainterID in Netconf must be the same as EthernetPortID in OpenFlow so a connection can be made between the two items, which separately exist in the controller.";
1900                 }
1901                 list segments-id-list {
1902                     key 'structure-id-ref segment-id-ref';
1903                     min-elements 1;
1904                     uses segment-id-type-g;
1905                     description "Lists the segments used for transporting this Ethernet container. In case EthernetContainer::ContainerCapability::bundlingIsAvail==0, all TypeDefinitions::segmentIdType::structureId must be identical in the list.";
1906                 }
1907                 leaf packet-compression-is-on {
1908                     type boolean;
1909                     default false;
1910                     description "In case packet compression is activated, but no type is activated, it is assumed that the device chooses the optimum.";
1911                 }
1912                 leaf layer2-compression-is-on {
1913                     type boolean;
1914                     default false;
1915                     description "Packet compression on layer 2 configured at the device.";
1916                 }
1917                 leaf vlan-compression-is-on {
1918                     type boolean;
1919                     default false;
1920                     description "Packet compression on VLAN layer configured at the device.";
1921                 }
1922                 leaf q-in-q-compression-is-on {
1923                     type boolean;
1924                     default false;
1925                     description "Packet compression on layer of a second VLAN configured at the device.";
1926                 }
1927                 leaf mpls-compression-is-on {
1928                     type boolean;
1929                     default false;
1930                     description "Packet compression on MPLS layer configured at the device.";
1931                 }
1932                 leaf ipv4-compression-is-on {
1933                     type boolean;
1934                     default false;
1935                     description "Packet compression on layer 3 for IPv4 configured at the device.";
1936                 }
1937                 leaf ipv6-compression-is-on {
1938                     type boolean;
1939                     default false;
1940                     description "Packet compression on layer 3 for IPv6 configured at the device.";
1941                 }
1942                 leaf layer4-compression-is-on {
1943                     type boolean;
1944                     default false;
1945                     description "Packet compression on layer 4 (TCP and UDP header) configured at the device.";
1946                 }
1947                 leaf encryption-is-on {
1948                     type boolean;
1949                     default false;
1950                     description "Activates encryption of the Ethernet payload.";
1951                 }
1952                 leaf cryptographic-key {
1953                     type string;
1954                     default "Cryptographic key not yet defined.";
1955                     description "Key for transforming plaintext into cipher text data.";
1956                 }
1957                 list problem-kind-severity-list {
1958                     key 'problem-kind-name';
1959                     min-elements 2;
1960                     uses container-problem-severity-type-g;
1961                     description "Severity of the problem to be configured.";
1962                 }
1963                 description "none";
1964             }
1965             grouping ethernet-container-status-g {
1966                 leaf last-status-change {
1967                     type yang:date-and-time;
1968                     default "2017-01-01T00:00:00.0Z";
1969                     config false;
1970                     description "Time the Container entered its current operational status.  ";
1971                 }
1972                 description "none";
1973             }
1974             grouping ethernet-container-current-problems-g {
1975                 list current-problem-list {
1976                     key 'sequence-number';
1977                     config false;
1978                     uses container-current-problem-type-g;
1979                     description "none";
1980                 }
1981                 description "none";
1982             }
1983             grouping ethernet-container-current-performance-g {
1984                 list current-performance-data-list {
1985                     key 'scanner-id';
1986                     config false;
1987                     min-elements 1;
1988                     max-elements 2;
1989                     uses container-current-performance-type-g;
1990                     description "none";
1991                 }
1992                 description "Aggregated performance information of the Ethernet container at a particular moment.";
1993             }
1994             grouping ethernet-container-historical-performances-g {
1995                 list historical-performance-data-list {
1996                     key 'history-data-id';
1997                     config false;
1998                     uses container-historical-performance-type-g;
1999                     description "none";
2000                 }
2001                 description "Aggregated performance information of the Ethernet container for a pre-defined measurement interval.";
2002             }
2003
2004         /***********************
2005         * package tdm-container
2006         **********************/ 
2007             list mw-tdm-container-pac {
2008                 if-feature hybrid-microwave;
2009                 key 'layer-protocol';
2010                 leaf layer-protocol {
2011                     type leafref {
2012                         path '/core-model:network-element/core-model:ltp/core-model:lp/core-model:uuid';
2013                     }
2014                     description "CoreModel-CoreNetworkModule-ObjectClasses:NetworkElement/_ltpRefList/_lpList/uuid";
2015                 }
2016                 container tdm-container-capability {
2017                     config false;
2018                     uses tdm-container-capability-g;
2019                     description "none";
2020                 }
2021                 container tdm-container-configuration {
2022                     uses tdm-container-configuration-g;
2023                     description "none";
2024                 }
2025                 container tdm-container-status {
2026                     config false;
2027                     uses tdm-container-status-g;
2028                     description "none";
2029                 }
2030                 container tdm-container-current-problems {
2031                     config false;
2032                     uses tdm-container-current-problems-g;
2033                     description "none";
2034                 }
2035                 container tdm-container-current-performance {
2036                     config false;
2037                     uses tdm-container-current-performance-g;
2038                     description "none";
2039                 }
2040                 container tdm-container-historical-performances {
2041                     config false;
2042                     uses tdm-container-historical-performances-g;
2043                     description "none";
2044                 }
2045                 description "none";
2046             }
2047             grouping tdm-container-capability-g {
2048                 list supported-tdm-container-types-list {
2049                     key 'tdm-container-name';
2050                     config false;
2051                     min-elements 1;
2052                     uses tdm-container-type-g;
2053                     description "Lists the TDM containers that are supported.";
2054                 }
2055                 leaf supported-alarms {
2056                     type string;
2057                     default "Supported alarms not yet defined.";
2058                     config false;
2059                     description "Available alarms to be listed. Mandatory:'framingIsFaulty' and 'containerIsDown'. Further alarms might be added by the device.";
2060                 }
2061                 description "Bundling is not available.";
2062             }
2063             grouping tdm-container-configuration-g {
2064                 leaf container-id {
2065                     type string;
2066                     default "No TDM Flow associated yet.";
2067                     description "ContainterID in Netconf must be the same as TDM Flow ID so a connection can be made between the two items, which separately exist in the controller.";
2068                 }
2069                 container container-type {
2070                     uses tdm-container-type-g;
2071                     description "Type of TDM container.";
2072                 }
2073                 container segment-id {
2074                     uses segment-id-type-g;
2075                     description "Multiplicity = 1; One segment per TDM container; Type of segment must match type of container;";
2076                 }
2077                 list problem-kind-severity-list {
2078                     key 'problem-kind-name';
2079                     min-elements 2;
2080                     uses container-problem-severity-type-g;
2081                     description "Severity of the problem to be configured.";
2082                 }
2083                 description "none";
2084             }
2085             grouping tdm-container-status-g {
2086                 leaf last-status-change {
2087                     type yang:date-and-time;
2088                     default "2017-01-01T00:00:00.0Z";
2089                     config false;
2090                     description "Time the Container entered its current operational status.  ";
2091                 }
2092                 description "none";
2093             }
2094             grouping tdm-container-current-problems-g {
2095                 list current-problem-list {
2096                     key 'sequence-number';
2097                     config false;
2098                     uses container-current-problem-type-g;
2099                     description "none";
2100                 }
2101                 description "none";
2102             }
2103             grouping tdm-container-current-performance-g {
2104                 list current-performance-data-list {
2105                     key 'scanner-id';
2106                     config false;
2107                     min-elements 1;
2108                     max-elements 2;
2109                     uses container-current-performance-type-g;
2110                     description "At least values of the counters, which are reset every 15 minutes, are to be provided. If available, the current values of the counters, which are reset every 24 hour, can be provided, too.";
2111                 }
2112                 description "Aggregated performance information of the TDM container at a particular moment.";
2113             }
2114             grouping tdm-container-historical-performances-g {
2115                 list historical-performance-data-list {
2116                     key 'history-data-id';
2117                     config false;
2118                     uses container-historical-performance-type-g;
2119                     description "none";
2120                 }
2121                 description "Aggregated performance information of the TDM container for a pre-defined measurement interval.";
2122             }
2123
2124         /***********************
2125         * package super-classes
2126         **********************/ 
2127             grouping mw-current-problem-g {
2128                 leaf sequence-number {
2129                     type int32;
2130                     config false;
2131                     description "Unique sequence number of the current problem object.";
2132                 }
2133                 leaf time-stamp {
2134                     type yang:date-and-time;
2135                     default "2017-01-01T00:00:00.0Z";
2136                     config false;
2137                     description "Time and date of the problem.  ";
2138                 }
2139                 leaf problem-severity {
2140                     type severity-type;
2141                     default warning;
2142                     config false;
2143                     description "Severity of the alarm.";
2144                 }
2145                 description "none";
2146             }
2147
2148
2149     /***********************
2150     * package notifications
2151     **********************/ 
2152         notification object-creation-notification {
2153             uses object-creation-notification-g;
2154             description "none";
2155         }
2156         grouping object-creation-notification-g {
2157             leaf counter {
2158                 type int32;
2159                 default -1;
2160                 description "Counts object creation notifications.";
2161             }
2162             leaf time-stamp {
2163                 type yang:date-and-time;
2164                 default "2017-01-01T00:00:00.0Z";
2165                 description "none";
2166             }
2167             leaf object-id-ref {
2168                 type core-model:universal-id;
2169                 description "ID of the affected MW_AirInterface_Pac, MW_AirInterfaceDiversity_Pac, MW_Structure_Pac, MW_PureEthernetStructure_Pac, MW_HybridMwStructure_Pac, MW_Container_Pac, MW_EthernetContainer_Pac or MW_TdmContainer_Pac.";
2170             }
2171             leaf object-type {
2172                 type string;
2173                 default "Type of created object not specified.";
2174                 description "Type of Object to be chosen from the following list of values: 'MW_AirInterface_Pac', 'MW_AirInterfaceDiversity_Pac', 'MW_Structure_Pac', 'MW_PureEthernetStructure_Pac', 'MW_HybridMwStructure_Pac', 'MW_Container_Pac', 'MW_EthernetContainer_Pac' or 'MW_TdmContainer_Pac'.";
2175             }
2176             description "To be sent when a new MW_AirInterface_Pac, MW_AirInterfaceDiversity_Pac, MW_Structure_Pac, MW_PureEthernetStructure_Pac, MW_HybridMwStructure_Pac, MW_Container_Pac, MW_EthernetContainer_Pac or MW_TdmContainer_Pac has to be instancieted in the controller.";
2177         }
2178         notification object-deletion-notification {
2179             uses object-deletion-notification-g;
2180             description "none";
2181         }
2182         grouping object-deletion-notification-g {
2183             leaf counter {
2184                 type int32;
2185                 default -1;
2186                 description "Counts object deletion notifications.";
2187             }
2188             leaf time-stamp {
2189                 type yang:date-and-time;
2190                 default "2017-01-01T00:00:00.0Z";
2191                 description "none";
2192             }
2193             leaf object-id-ref {
2194                 type core-model:universal-id;
2195                 description "ID of the affected MW_AirInterface_Pac, MW_AirInterfaceDiversity_Pac, MW_Structure_Pac, MW_PureEthernetStructure_Pac, MW_HybridMwStructure_Pac, MW_Container_Pac, MW_EthernetContainer_Pac or MW_TdmContainer_Pac.";
2196             }
2197             description "To be sent when a new MW_AirInterface_Pac, MW_AirInterfaceDiversity_Pac, MW_Structure_Pac, MW_PureEthernetStructure_Pac, MW_HybridMwStructure_Pac, MW_Container_Pac, MW_EthernetContainer_Pac or MW_TdmContainer_Pac instance has to be deleted in the controller.";
2198         }
2199         notification attribute-value-changed-notification {
2200             uses attribute-value-changed-notification-g;
2201             description "none";
2202         }
2203         grouping attribute-value-changed-notification-g {
2204             leaf counter {
2205                 type int32;
2206                 default -1;
2207                 description "Counts attribute value changed notifications.";
2208             }
2209             leaf time-stamp {
2210                 type yang:date-and-time;
2211                 default "2017-01-01T00:00:00.0Z";
2212                 description "none";
2213             }
2214             leaf object-id-ref {
2215                 type core-model:universal-id;
2216                 description "ID of the affected MW_AirInterface_Pac, MW_AirInterfaceDiversity_Pac, MW_Structure_Pac, MW_PureEthernetStructure_Pac, MW_HybridMwStructure_Pac, MW_Container_Pac, MW_EthernetContainer_Pac or MW_TdmContainer_Pac.";
2217             }
2218             leaf attribute-name {
2219                 type string;
2220                 default "Attribute name not specified.";
2221                 description "Name of the attribute that has been changed.";
2222             }
2223             leaf new-value {
2224                 type string;
2225                 default "New value not specified.";
2226                 description "Attribute value converted to a string (xml, json, ...)";
2227             }
2228             description "To be sent when an attribute has changed and one or more controllers have to update their data.";
2229         }
2230         notification problem-notification {
2231             uses problem-notification-g;
2232             description "none";
2233         }
2234         grouping problem-notification-g {
2235             leaf counter {
2236                 type int32;
2237                 default -1;
2238                 description "Counts problem notifications";
2239             }
2240             leaf time-stamp {
2241                 type yang:date-and-time;
2242                 default "2017-01-01T00:00:00.0Z";
2243                 description "none";
2244             }
2245             leaf object-id-ref {
2246                 type core-model:universal-id;
2247                 description "ID of the affected MW_AirInterface_Pac, MW_AirInterfaceDiversity_Pac, MW_Structure_Pac, MW_PureEthernetStructure_Pac, MW_HybridMwStructure_Pac, MW_Container_Pac, MW_EthernetContainer_Pac or MW_TdmContainer_Pac.";
2248             }
2249             leaf problem {
2250                 type string;
2251                 default "Problem name not specified.";
2252                 description "Name of the problem according to AirInterface::AirInterfaceCapability::supportedAlarms or AirInterfaceDiversity::AirInterfaceDiversityCapability::supportedAlarms or Structure::StructureCapability::supportedAlarms or PureEthernetStructure::PureEthernetStructureCapability::supportedAlarms or HybridMwStructure::HybridMwStructureCapability::supportedAlarms or Container::ContainerCapability::supportedAlarms or EthernetContainer::EthernetContainerCapability::supportedAlarms or TdmContainer::TdmContainerCapability::supportedAlarms.";
2253             }
2254             leaf severity {
2255                 type severity-type;
2256                 default warning;
2257                 description "Severity of the problem according to AirInterface::AirInterfaceConfiguration::problemSeverityList, AirInterfaceDiversity::AirInterfaceDiversityConfiguration::problemSeverityList, Structure::StructureConfiguration::problemSeverityList, PureEthernetStructure::PureEthernetStructureConfiguration::problemSeverityList, HybridMwStructure::HybridMwStructureConfiguration::problemSeverityList, Container::ContainerConfiguration::problemSeverityList, EthernetContainer::EthernetContainerConfiguration::problemSeverityList or TdmContainer::TdmContainerConfiguration::problemSeverityList";
2258             }
2259             description "To be sent when a problem occurs at a MW_AirInterface_Pac, MW_AirInterfaceDiversity_Pac, MW_Structure_Pac, MW_PureEthernetStructure_Pac, MW_HybridMwStructure_Pac, MW_Container_Pac, MW_EthernetContainer_Pac or MW_TdmContainer_Pac.";
2260         }
2261
2262 }