Update docs conf.yaml version to Sulfur
[transportpce.git] / ordmodels / common / src / main / yang / org-openroadm-pm-types@2020-03-27.yang
1 module org-openroadm-pm-types {
2   namespace "http://org/openroadm/pm-types";
3   prefix org-openroadm-pm-types;
4
5   organization
6     "Open ROADM MSA";
7   contact
8     "OpenROADM.org";
9   description
10     "YANG definitions of performance management types.
11
12       Copyright of the Members of the Open ROADM MSA Agreement dated (c) 2016,
13       All other rights reserved.
14
15       Redistribution and use in source and binary forms, with or without modification,
16       are permitted provided that the following conditions are met:
17
18       * Redistributions of source code must retain the above copyright notice, this
19         list of conditions and the following disclaimer.
20       * Redistributions in binary form must reproduce the above copyright notice,
21         this list of conditions and the following disclaimer in the documentation and/or
22         other materials provided with the distribution.
23       * Neither the Members of the Open ROADM MSA Agreement nor the names of its
24         contributors may be used to endorse or promote products derived from this software
25         without specific prior written permission.
26
27       THIS SOFTWARE IS PROVIDED BY THE MEMBERS OF THE OPEN ROADM MSA  AGREEMENT ''AS IS''
28       AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED
29       WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED.
30       IN NO EVENT THE MEMBERS OF THE OPEN ROADM MSA  AGREEMENT BE LIABLE FOR ANY DIRECT,
31       INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT
32       NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES;  LOSS OF USE, DATA,
33       OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY,
34       WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
35       ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
36       POSSIBILITY OF SUCH DAMAGE";
37
38   revision 2020-03-27 {
39     description
40       "Version 7.0.0";
41   }
42   revision 2019-11-29 {
43     description
44       "Version 6.1.0";
45   }
46   revision 2019-03-29 {
47     description
48       "Version 5.0.0";
49   }
50   revision 2018-11-30 {
51     description
52       "Version 4.1.0";
53   }
54   revision 2017-12-15 {
55     description
56       "Version 2.2";
57   }
58   revision 2017-09-29 {
59     description
60       "Version 2.1";
61   }
62   revision 2017-06-26 {
63     description
64       "Version 2.0";
65   }
66   revision 2016-10-14 {
67     description
68       "Version 1.2";
69   }
70
71   typedef pm-granularity {
72     type enumeration {
73       enum notApplicable {
74         value 1;
75         description
76           "This is for total statistic counters on devices that support
77               them.";
78       }
79       enum 15min {
80         value 2;
81       }
82       enum 24Hour {
83         value 3;
84       }
85     }
86     description
87       "Granularity of PM bin";
88   }
89
90   typedef pm-data-type {
91     type union {
92       type uint64;
93       type int64;
94       type decimal64 {
95         fraction-digits 2;
96       }
97       type decimal64 {
98         fraction-digits 17;
99       }
100     }
101   }
102
103   typedef validity {
104     type enumeration {
105       enum complete {
106         value 1;
107       }
108       enum partial {
109         value 2;
110       }
111       enum suspect {
112         value 3;
113       }
114     }
115     description
116       "Validity of data";
117   }
118
119   typedef pm-names-enum {
120     type enumeration {
121       enum vendorExtension {
122         value 1;
123         description
124           "vendor extension";
125       }
126       enum bitErrorRate {
127         value 2;
128         description
129           "Bit error rate (BER)";
130       }
131       enum opticalPowerOutput {
132         value 3;
133         description
134           "Optical Power Output (OPOUT-OTS, OPOUT-OMS, OPT-OCH). Total optical power includes Variable Optical Attenuator (VOA) attenuation";
135       }
136       enum opticalReturnLoss {
137         value 4;
138         description
139           "Optical Return Loss (ORL-OTS) - at MW port(s) B";
140       }
141       enum opticalPowerInput {
142         value 5;
143         description
144           "Optical Power Input (OPIN-OTS, OPIN-OMS, OPR-OCH). Total optical power";
145       }
146       enum codeViolations {
147         value 8;
148         description
149           "Code Violations (CV)";
150       }
151       enum erroredSeconds {
152         value 9;
153         description
154           "Errored Seconds (ES)";
155       }
156       enum severelyErroredSeconds {
157         value 10;
158         description
159           "Severely Errored Seconds (SES)";
160       }
161       enum unavailableSeconds {
162         value 11;
163         description
164           "Unavailable Seconds (UAS)";
165       }
166       enum inFrames {
167         value 12;
168         description
169           "In frames (INFRAMES-E)";
170       }
171       enum inFramesErrored {
172         value 13;
173         description
174           "In frames errored (INFRAMESERR-E)";
175       }
176       enum outFrames {
177         value 14;
178         description
179           "Out frames (OUTFRAMES-E)";
180       }
181       enum erroredSecondsEthernet {
182         value 15;
183         description
184           "Errored Seconds Ethernet (ES-E)";
185       }
186       enum severelyErroredSecondsEthernet {
187         value 16;
188         description
189           "Severely Errored Seconds, Ethernet (SES-E)";
190       }
191       enum unavailableSecondsEthernet {
192         value 17;
193         description
194           "Unavailable Seconds, Ethernet (UAS-E)";
195       }
196       enum erroredBlockCount {
197         value 18;
198         description
199           "Errored block count";
200       }
201       enum delay {
202         value 19;
203         description
204           "Number of frames between a DMValue toggle event and the received DMp signal value toggle event";
205       }
206       enum defectSeconds {
207         value 20;
208         description
209           "Defect Seconds (DS)";
210       }
211       enum backwardIncomingAlignmentError {
212         value 21;
213         description
214           "Backward Incoming Alignment Error (BIAE)";
215       }
216       enum incomingAlignmentError {
217         value 22;
218         description
219           "Incoming Alignment Error (IAE)";
220       }
221       enum opticalPowerOutputMin {
222         value 23;
223         description
224           "Minimum Optical Power Output (OPOUT-OTS). Total optical power includes Variable Optical Attenuator (VOA) attenuation";
225       }
226       enum opticalPowerOutputMax {
227         value 24;
228         description
229           "Maximum Optical Power Output (OPOUT-OTS). Total optical power includes Variable Optical Attenuator (VOA) attenuation";
230       }
231       enum opticalPowerOutputAvg {
232         value 25;
233         description
234           "Average Optical Power Output (OPOUT-OTS). Total optical power includes Variable Optical Attenuator (VOA) attenuation";
235       }
236       enum opticalPowerInputMin {
237         value 26;
238         description
239           "Minimum Optical Power Input (OPIN-OTS). Total optical power";
240       }
241       enum opticalPowerInputMax {
242         value 27;
243         description
244           "Maximum Optical Power Input (OPIN-OTS). Total optical power";
245       }
246       enum opticalPowerInputAvg {
247         value 28;
248         description
249           "Average Optical Power Input (OPIN-OTS). Total optical power";
250       }
251       enum opticalPowerOutputOSC {
252         value 29;
253         description
254           "OSC Optical Power Output (OPT-OSC). OSC Transmit power on MW port";
255       }
256       enum opticalPowerOutputOSCMin {
257         value 30;
258         description
259           "Minimum OSC Optical Power Output (OPT-OSC). OSC Transmit power on MW port";
260       }
261       enum opticalPowerOutputOSCMax {
262         value 31;
263         description
264           "Maximum OSC Optical Power Output (OPT-OSC). OSC Transmit power on MW port";
265       }
266       enum opticalPowerOutputOSCAvg {
267         value 32;
268         description
269           "Average OSC Optical Power Output (OPT-OSC). OSC Transmit power on MW port";
270       }
271       enum opticalPowerInputOSC {
272         value 33;
273         description
274           "OSC Optical Power Input (OPR-OSC). OSC Receive power on MW port";
275       }
276       enum opticalPowerInputOSCMin {
277         value 34;
278         description
279           "Minimum OSC Optical Power Input (OPR-OSC). OSC Receive power on MW port";
280       }
281       enum opticalPowerInputOSCMax {
282         value 35;
283         description
284           "Maximum OSC Optical Power Input (OPR-OSC). OSC Receive power on MW port";
285       }
286       enum opticalPowerInputOSCAvg {
287         value 36;
288         description
289           "Average OSC Optical Power Input (OPR-OSC). OSC Receive power on MW port";
290       }
291       enum preFECCorrectedErrors {
292         value 37;
293         description
294           "pFEC corrected Errors";
295       }
296       enum totalOpticalPowerInput {
297         value 38;
298         description
299           "Total Optical Power Input.";
300       }
301       enum totalOpticalPowerInputMin {
302         value 39;
303         description
304           "Minimum Total Optical Power Input.";
305       }
306       enum totalOpticalPowerInputMax {
307         value 40;
308         description
309           "Maximum Total Optical Power Input.";
310       }
311       enum totalOpticalPowerInputAvg {
312         value 41;
313         description
314           "Average Total Optical Power Input.";
315       }
316       enum FECCorrectableBlocks {
317         value 42;
318         description
319           "FEC Correctable Blocks.";
320       }
321       enum FECUncorrectableBlocks {
322         value 43;
323         description
324           "FEC Uncorrectable Blocks.";
325       }
326       enum BIPErrorCounter {
327         value 56;
328         description
329           "BIP Error Counter";
330       }
331       enum protectionSwitchingCount {
332         value 57;
333         description
334           "Protection Switching Count (PSC)";
335       }
336       enum protectionSwitchingDuration {
337         value 58;
338         description
339           "Protection Switching Duration in seconds (PSD)";
340       }
341       enum erroredBlockCountTCM1-up {
342         value 59;
343         description
344           "errored Blocks Count on TCM1 up direction.";
345       }
346       enum erroredBlockCountTCM2-up {
347         value 60;
348         description
349           "errored Blocks Count on TCM2 up direction.";
350       }
351       enum erroredBlockCountTCM3-up {
352         value 61;
353         description
354           "errored Blocks Count on TCM3 up direction.";
355       }
356       enum erroredBlockCountTCM4-up {
357         value 62;
358         description
359           "errored Blocks Count on TCM4 up direction.";
360       }
361       enum erroredBlockCountTCM5-up {
362         value 63;
363         description
364           "errored Blocks Count on TCM5 up direction.";
365       }
366       enum erroredBlockCountTCM6-up {
367         value 64;
368         description
369           "errored Blocks Count on TCM6 up direction.";
370       }
371       enum delayTCM1-up {
372         value 65;
373         description
374           "Delay on TCM1 up direction.";
375       }
376       enum delayTCM2-up {
377         value 66;
378         description
379           "Delay on TCM2 up direction.";
380       }
381       enum delayTCM3-up {
382         value 67;
383         description
384           "Delay on TCM3 up direction.";
385       }
386       enum delayTCM4-up {
387         value 68;
388         description
389           "Delay on TCM4 up direction.";
390       }
391       enum delayTCM5-up {
392         value 69;
393         description
394           "Delay on TCM5 up direction.";
395       }
396       enum delayTCM6-up {
397         value 70;
398         description
399           "Delay on TCM6 up direction.";
400       }
401       enum erroredBlockCountTCM1-down {
402         value 71;
403         description
404           "errored Blocks Count on TCM1 down direction.";
405       }
406       enum erroredBlockCountTCM2-down {
407         value 72;
408         description
409           "errored Blocks Count on TCM2 down direction.";
410       }
411       enum erroredBlockCountTCM3-down {
412         value 73;
413         description
414           "errored Blocks Count on TCM3 down direction.";
415       }
416       enum erroredBlockCountTCM4-down {
417         value 74;
418         description
419           "errored Blocks Count on TCM4 down direction.";
420       }
421       enum erroredBlockCountTCM5-down {
422         value 75;
423         description
424           "errored Blocks Count on TCM5 down direction.";
425       }
426       enum erroredBlockCountTCM6-down {
427         value 76;
428         description
429           "errored Blocks Count on TCM6 down direction.";
430       }
431       enum delayTCM1-down {
432         value 77;
433         description
434           "Delay on TCM1 down direction.";
435       }
436       enum delayTCM2-down {
437         value 78;
438         description
439           "Delay on TCM2 down direction.";
440       }
441       enum delayTCM3-down {
442         value 79;
443         description
444           "Delay on TCM3 down direction.";
445       }
446       enum delayTCM4-down {
447         value 80;
448         description
449           "Delay on TCM4 down direction.";
450       }
451       enum delayTCM5-down {
452         value 81;
453         description
454           "Delay on TCM5 down direction.";
455       }
456       enum delayTCM6-down {
457         value 82;
458         description
459           "Delay on TCM6 down direction.";
460       }
461       enum partialRateDiscard {
462         value 83;
463         description
464           "Discarded packet as a result of policing or rate limiting for subrate ethernet.";
465       }
466       enum erroredSecondsTCM1-up {
467         value 84;
468         description
469           "errored Seconds Count on TCM1 up direction.";
470       }
471       enum erroredSecondsTCM2-up {
472         value 85;
473         description
474           "errored Seconds Count on TCM2 up direction.";
475       }
476       enum erroredSecondsTCM3-up {
477         value 86;
478         description
479           "errored Seconds Count on TCM3 up direction.";
480       }
481       enum erroredSecondsTCM4-up {
482         value 87;
483         description
484           "errored Seconds Count on TCM4 up direction.";
485       }
486       enum erroredSecondsTCM5-up {
487         value 88;
488         description
489           "errored Seconds Count on TCM5 up direction.";
490       }
491       enum erroredSecondsTCM6-up {
492         value 89;
493         description
494           "errored Seconds Count on TCM6 up direction.";
495       }
496       enum severelyErroredSecondsTCM1-up {
497         value 90;
498         description
499           "severely Errored Seconds Count on TCM1 up direction.";
500       }
501       enum severelyErroredSecondsTCM2-up {
502         value 91;
503         description
504           "severely Errored Seconds Count on TCM2 up direction.";
505       }
506       enum severelyErroredSecondsTCM3-up {
507         value 92;
508         description
509           "severely Errored Seconds Count on TCM3 up direction.";
510       }
511       enum severelyErroredSecondsTCM4-up {
512         value 93;
513         description
514           "severely Errored Seconds Count on TCM4 up direction.";
515       }
516       enum severelyErroredSecondsTCM5-up {
517         value 94;
518         description
519           "severely Errored Seconds Count on TCM5 up direction.";
520       }
521       enum severelyErroredSecondsTCM6-up {
522         value 95;
523         description
524           "severely Errored Seconds Count on TCM6 up direction.";
525       }
526       enum unavailableSecondsTCM1-up {
527         value 96;
528         description
529           "unavailable Seconds Count on TCM1 up direction.";
530       }
531       enum unavailableSecondsTCM2-up {
532         value 97;
533         description
534           "unavailable Seconds Count on TCM2 up direction.";
535       }
536       enum unavailableSecondsTCM3-up {
537         value 98;
538         description
539           "unavailable Seconds Count on TCM3 up direction.";
540       }
541       enum unavailableSecondsTCM4-up {
542         value 99;
543         description
544           "unavailable Seconds Count on TCM4 up direction.";
545       }
546       enum unavailableSecondsTCM5-up {
547         value 100;
548         description
549           "unavailable Seconds Count on TCM5 up direction.";
550       }
551       enum unavailableSecondsTCM6-up {
552         value 101;
553         description
554           "unavailable Seconds Count on TCM6 up direction.";
555       }
556       enum erroredSecondsTCM1-down {
557         value 102;
558         description
559           "errored Seconds Count on TCM1 down direction.";
560       }
561       enum erroredSecondsTCM2-down {
562         value 103;
563         description
564           "errored Seconds Count on TCM2 down direction.";
565       }
566       enum erroredSecondsTCM3-down {
567         value 104;
568         description
569           "errored Seconds Count on TCM3 down direction.";
570       }
571       enum erroredSecondsTCM4-down {
572         value 105;
573         description
574           "errored Seconds Count on TCM4 down direction.";
575       }
576       enum erroredSecondsTCM5-down {
577         value 106;
578         description
579           "errored Seconds Count on TCM5 down direction.";
580       }
581       enum erroredSecondsTCM6-down {
582         value 107;
583         description
584           "errored Seconds Count on TCM6 down direction.";
585       }
586       enum severelyErroredSecondsTCM1-down {
587         value 108;
588         description
589           "severely Errored Seconds Count on TCM1 down direction.";
590       }
591       enum severelyErroredSecondsTCM2-down {
592         value 109;
593         description
594           "severely Errored Seconds Count on TCM2 down direction.";
595       }
596       enum severelyErroredSecondsTCM3-down {
597         value 110;
598         description
599           "severely Errored Seconds Count on TCM3 down direction.";
600       }
601       enum severelyErroredSecondsTCM4-down {
602         value 111;
603         description
604           "severely Errored Seconds Count on TCM4 down direction.";
605       }
606       enum severelyErroredSecondsTCM5-down {
607         value 112;
608         description
609           "severely Errored Seconds Count on TCM5 down direction.";
610       }
611       enum severelyErroredSecondsTCM6-down {
612         value 113;
613         description
614           "severely Errored Seconds Count on TCM6 down direction.";
615       }
616       enum unavailableSecondsTCM1-down {
617         value 114;
618         description
619           "unavailable Seconds Count on TCM1 down direction.";
620       }
621       enum unavailableSecondsTCM2-down {
622         value 115;
623         description
624           "unavailable Seconds Count on TCM2 down direction.";
625       }
626       enum unavailableSecondsTCM3-down {
627         value 116;
628         description
629           "unavailable Seconds Count on TCM3 down direction.";
630       }
631       enum unavailableSecondsTCM4-down {
632         value 117;
633         description
634           "unavailable Seconds Count on TCM4 down direction.";
635       }
636       enum unavailableSecondsTCM5-down {
637         value 118;
638         description
639           "unavailable Seconds Count on TCM5 down direction.";
640       }
641       enum unavailableSecondsTCM6-down {
642         value 119;
643         description
644           "unavailable Seconds Count on TCM6 down direction.";
645       }
646       enum fecCorrectedCodewords {
647         value 120;
648         description
649           "FEC Corrected Codewords Counter";
650       }
651       enum fecUncorrectedCodewords {
652         value 121;
653         description
654           "FEC Uncorrected Codewords Counter";
655       }
656       enum fecSymbolErrors {
657         value 122;
658         description
659           "FEC Symbol Error Counter";
660       }
661       enum localFaultSeconds {
662         value 123;
663         description
664           "Local Fault Seconds";
665       }
666       enum remoteFaultSeconds {
667         value 124;
668         description
669           "Remote Fault Seconds";
670       }
671     }
672   }
673
674   grouping pm-measurement {
675     description
676       "Set of parameters related to a PM Measurement";
677     leaf pmParameterValue {
678       type pm-data-type;
679       config false;
680       mandatory true;
681     }
682     leaf pmParameterUnit {
683       type string;
684       mandatory false;
685       description
686         "Unit PM parameter has been measured - frames, packets, u, etc";
687     }
688     leaf validity {
689       type validity;
690       mandatory false;
691     }
692   }
693
694   grouping pm-names {
695     description
696       "Name of PM parameter. Consists of a set list of parameters,
697        plus an extension field to support addition parameters.";
698     leaf type {
699       type pm-names-enum;
700       mandatory true;
701     }
702     leaf extension {
703       type string;
704       description
705         "name of parameter, when enum value set to vendorExtension because
706          name not found in pm-names-enum";
707     }
708   }
709 }