blob: 4a14783a2e2d31f6f1228f8a49f7494e83cd1682 [file] [log] [blame]
demx8as69872fa02018-07-06 10:27:37 +02001module g.874.1-model {
2 namespace "urn:onf:params:xml:ns:yang:g.874.1-model";
3 prefix g.874.1-model;
4
5 import core-model {
6 prefix core-model;
7 }
8 import ietf-yang-types {
9 prefix yang;
10 }
11
12 organization "ONF (Open Networking Foundation) Open Transport Working Group - Wireless Transport Project";
13 contact "WG Web: <https://www.opennetworking.org/technical-communities/areas/specification/1931-optical-transport>
14 WG List: <mailto:wireless-transport@login.opennetworking.org>
15 WG Chair: Lyndon Ong
16 <mailto:lyong@ciena.com>
17 WG Chair: Giorgio Cazzaniga
18 <mailto:giorgio.cazzaniga@sm-optics.com>
19 Editors: Thorsten Heinze
20 <mailto:thorsten.heinze@telefonica.com>
21 Martin Skorupski
22 <mailto:martin.skorupski@highstreet-technologies.com>";
23 description "<p>Version 2.02; outcome of the 10/2013 Nuremberg meeting.<br>Version 2.03; updates for Geneva 03-2014<br>Version 2.04; updates for Shanghai 09-2014<br>Version 2.05; input to Geneva 11-2014<br>Version 2.06; output from Geneva 11-2014<br>Version 2.07; using OpenProfile 3-2015<br>Version 2.08; output from Geneva 06-2015</p>";
24 revision 2017-03-20 {
25 description "Initial version";
26 reference "ONF TR 532: A YANG Data Model for Wireless Networks.";
27 }
28 /***********************
29 * package object-classes
30 **********************/
31 grouping otn-current-data-g {
32 leaf timestamp {
33 type date-and-time;
34 description "The timestamp associated with when the current data was collected.";
35 }
36 uses q.822-current-data-g;
37 description "This object class is an abstract class from which the OTN layer-specific CurrentData object classes are inherited. This object class is a subclass of the Q.822 CurrentData object class, which in turn is a subclass of X.739 Scanner object class. It inherits the following attributes: scannerId, operationalState, granularityPeriod, administrativeState, suspectIntervalFlag, elapsedTime, observedObjectClass, and observedObjectInstance.";
38 }
39 grouping otn-history-data-g {
40 leaf suspect-interval-flag {
41 type boolean;
42 default false;
43 description "This attribute indicates that the data collected during the interval is suspect.";
44 }
45 uses q.822-history-data-g;
46 description "This object class is an abstract class from which the OTN layer-specific HistoryData object classes are inherited. ";
47 }
48
49 /***********************
50 * package type-definitions
51 **********************/
52 typedef directionality {
53 type enumeration {
54 enum sink {
55 description "none";
56 }
57 enum source {
58 description "none";
59 }
60 enum bidirectional {
61 description "none";
62 }
63 }
64 description "The enumeration with the options for directionality of the termination point.";
65 }
66 typedef gcc-access {
67 type enumeration {
68 enum gcc1 {
69 description "none";
70 }
71 enum gcc2 {
72 description "none";
73 }
74 enum gcc1-and-gcc2 {
75 description "none";
76 }
77 }
78 description "This enumeration indicates the GCC access represented by the entity.";
79 }
80 typedef operational-state {
81 type enumeration {
82 enum enabled {
83 description "none";
84 }
85 enum disabled {
86 description "none";
87 }
88 }
89 description "The list of valid operational states for the connection.";
90 }
91 typedef oper-type {
92 type enumeration {
93 enum revertive {
94 description "none";
95 }
96 enum non-revertive {
97 description "none";
98 }
99 }
100 description "The operation type associated with the protection mechanism (either non-revertive or revertive).";
101 }
102 typedef ext-cmd-operation {
103 type enumeration {
104 enum exercise {
105 description "none";
106 }
107 enum manual-switch {
108 description "none";
109 }
110 enum forced-switch {
111 description "none";
112 }
113 enum lockout {
114 description "none";
115 }
116 enum release-of-manual-switch {
117 description "none";
118 }
119 enum release-of-forced-switch {
120 description "none";
121 }
122 enum release-of-lockout {
123 description "none";
124 }
125 }
126 description "This enumeration contains the options for the actions that instruct the protection system for performing specific protection switching operations.";
127 }
128 typedef administrative-state {
129 type enumeration {
130 enum unlocked {
131 description "none";
132 }
133 enum locked {
134 description "none";
135 }
136 enum shutting-down {
137 description "none";
138 }
139 }
140 description "For more information on Administrative State, See ITU-T Recs. X.731 and M.3100.";
141 }
142 typedef oc-tk-nim-k-bit-rate {
143 type enumeration {
144 enum 2.5-g {
145 description "none";
146 }
147 enum 10-g {
148 description "none";
149 }
150 enum 40-g {
151 description "none";
152 }
153 enum 100-g {
154 description "none";
155 }
156 }
157 description "Provides an enumeration with the meaning of each 'k' value.";
158 }
159 typedef tim-det-mo {
160 type enumeration {
161 enum dapi {
162 description "none";
163 }
164 enum sapi {
165 description "none";
166 }
167 enum both {
168 description "none";
169 }
170 }
171 description "List of modes for trace identifier mismatch detection.";
172 }
173 typedef oc-tk-nim-problem-list {
174 type enumeration {
175 enum los-p {
176 description "Loss of Signal -- Payload";
177 }
178 enum oci {
179 description "Open Connection Indicator";
180 }
181 enum ssf-p {
182 description "Server Signal Failure -- Payload -- can not co-exist with SSF or SSF-O";
183 }
184 enum ssf-o {
185 description "Server Signal Failure -- Overhead; can not co-exist with SSF or SSF-P";
186 }
187 enum ssf {
188 description "Server Signal Failure; can not co-exist with SSF-P or SSF-O";
189 }
190 enum tim {
191 description "Trail Trace Identifier Mismatch";
192 }
193 enum deg {
194 description "Signal Degraded";
195 }
196 enum bdi {
197 description "Backward Defect Indication";
198 }
199 }
200 description "The valid list of problems for the entity.";
201 }
202 typedef tcm-monitoring {
203 type enumeration {
204 enum intrusive {
205 description "none";
206 }
207 enum non-intrusive {
208 description "none";
209 }
210 }
211 description "Monitoring types for the tandem connection monitoring function.";
212 }
213 typedef tcm-mode {
214 type enumeration {
215 enum operational {
216 description "none";
217 }
218 enum transparent {
219 description "none";
220 }
221 enum monitor {
222 description "none";
223 }
224 }
225 description "List of value modes for the sink side of the tandem connection monitoring function.";
226 }
227 typedef ops-mnk-ttp-k-bit-rate {
228 type enumeration {
229 enum 40-g {
230 description "none";
231 }
232 enum 100-g {
233 description "none";
234 }
235 }
236 description "Provides an enumeration with the meaning of each 'k' value.";
237 }
238 typedef ops-mnk-ttp-problem-list {
239 type enumeration {
240 enum los {
241 description "Loss of Signal";
242 }
243 enum lol {
244 description "Loss of Lane Alignment";
245 }
246 }
247 description "The valid list of problems for the entity.";
248 }
249 typedef op-sn-ttp-problem-list {
250 type enumeration {
251 enum los {
252 description "Loss of Signal";
253 }
254 }
255 description "The valid list of problems for the entity.";
256 }
257 typedef otm-n-k-bit-rates {
258 type enumeration {
259 enum 2.5-g {
260 description "none";
261 }
262 enum 10-g {
263 description "none";
264 }
265 enum 40-g {
266 description "none";
267 }
268 enum 2.5-10-g {
269 description "none";
270 }
271 enum 10-40-g {
272 description "none";
273 }
274 enum 2.5-10-40-g {
275 description "none";
276 }
277 }
278 description "Provides an enumeration with the meaning of each 'k' value.";
279 }
280 typedef domain-interface {
281 type enumeration {
282 enum intra-domain {
283 description "none";
284 }
285 enum inter-domain {
286 description "none";
287 }
288 }
289 description "This enumeration provides the options for the interface associated with OTMn.";
290 }
291 typedef otm-n-optical-reach {
292 type enumeration {
293 enum intra-office {
294 description "none";
295 }
296 enum shorthaul {
297 description "none";
298 }
299 enum longhaul {
300 description "none";
301 }
302 }
303 description "The valid options for reach of the optical cable.";
304 }
305 typedef apr-status {
306 type enumeration {
307 enum on {
308 description "none";
309 }
310 enum off {
311 description "none";
312 }
313 }
314 description "The enumeration of the options for the Automatic Power Reduction Status.";
315 }
316 typedef ot-sn-ttp-problem-list {
317 type enumeration {
318 enum bdi-p {
319 description "BDI-P (Backward Defect Indication - Payload); not co-exist with BDI-O or BDI";
320 }
321 enum bdi-o {
322 description "BDI-O (Backward Defect Indication - Overhead); not co-exist with BDI-P or BDI";
323 }
324 enum bdi {
325 description "BDI (Backward Defect Indication); not co-exist with BDI-P or BDI-O";
326 }
327 enum tim {
328 description "TIM (Trail Trace Identifier Mismatch);";
329 }
330 enum los-p {
331 description "-P (Loss of Signal - Payload); not co-exist with LOS-O or LOS";
332 }
333 enum los-o {
334 description "LOS-O (Loss of Signal - Overhead); not co-exist with LOS-P or LOS";
335 }
336 enum los {
337 description "LOS (Loss of Signal); not co-exist with LOS-P or LOS-O. ";
338 }
339 }
340 description "The valid list of problems for the entity.";
341 }
342 typedef ot-uk-ctp-adaptation {
343 type enumeration {
344 enum regular {
345 description "i.e. OPSM/OTUk-a, OCh[r]/OTUk-a";
346 }
347 enum none {
348 description "i.e. OPSM/OTUk-b, OCh[r]/OTUk-b";
349 }
350 enum vendor-specific {
351 description "i.e. OCh[r]/OTUk-v";
352 }
353 enum functionally-standardized {
354 description "i.e. OCh[r]/OTUkV";
355 }
356 }
357 description "The adaptation options for OTUk_ConnectionTermationPoints.";
358 }
359 typedef ot-uk-ctp-k-bit-rate {
360 type enumeration {
361 enum 2.5-g {
362 description "none";
363 }
364 enum 10-g {
365 description "none";
366 }
367 enum 40-g {
368 description "none";
369 }
370 enum 100-g {
371 description "none";
372 }
373 }
374 description "Provides an enumeration with the meaning of each 'k' value.";
375 }
376 typedef ot-uk-ctp-problem-list {
377 type enumeration {
378 enum lof {
379 description "Loss of Frame";
380 }
381 enum ais {
382 description "Alarm Indication Signal";
383 }
384 enum lom {
385 description "Loss of MultiFrame";
386 }
387 }
388 description "The valid list of problems for the entity.";
389 }
390 typedef ot-uk-ttp-problem-list {
391 type enumeration {
392 enum tim {
393 description "Trail Trace Identifier Mismatch";
394 }
395 enum deg {
396 description "Signal Degraded";
397 }
398 enum bdi {
399 description "Backward Defect Indication";
400 }
401 enum ssf {
402 description "Server Signal Failure";
403 }
404 }
405 description "The valid list of problems for the entity.";
406 }
407 typedef monitored-direction {
408 type enumeration {
409 enum sink {
410 description "none";
411 }
412 enum source {
413 description "none";
414 }
415 }
416 description "The enumeration with the options for directionality for nonintrusive monitoring.";
417 }
418 typedef deg-thr-type {
419 type enumeration {
420 enum percentage {
421 description "<p>Choice of % or Number of errored blocks</p>";
422 }
423 enum number-errored-blocks {
424 description "<p>Number of % or blocks</p>";
425 }
426 }
427 description "<p>The value of the threshold can be provisioned in terms of number of errored blocks or in terms of percentage of errored blocks. For percentage-based specification, in order to support provision of less than 1%, the specification consists of two fields. The first field indicates the granularity of percentage. For examples, in 1%, in 0.1%, or in 0.01%, etc. The second field indicates the multiple of the granularity. For number of errored block based, the value is a positive integer.</p>";
428 }
429 typedef link-type {
430 type enumeration {
431 enum dwdm {
432 description "none";
433 }
434 enum cwdm {
435 description "none";
436 }
437 enum no-wdm {
438 description "none";
439 }
440 }
441 description "none";
442 }
443 typedef application-identifier-type {
444 type enumeration {
445 enum standard {
446 description "none";
447 }
448 enum proprietary {
449 description "none";
450 }
451 }
452 description "none";
453 }
454 typedef printable-string {
455 type string;
456 description "none";
457 }
458 typedef date-and-time {
459 type string;
460 description "This primitive type defines the date and time according to the following structure:
461 'yyyyMMddhhmmss.s[Z|{+|-}HHMm]' where:
462 yyyy '0000'..'9999' year
463 MM '01'..'12' month
464 dd '01'..'31' day
465 hh '00'..'23' hour
466 mm '00'..'59' minute
467 ss '00'..'59' second
468 s '.0'..'.9' tenth of second (set to '.0' if EMS or NE cannot support this granularity)
469 Z 'Z' indicates UTC (rather than local time)
470 {+|-} '+' or '-' delta from UTC
471 HH '00'..'23' time zone difference in hours
472 Mm '00'..'59' time zone difference in minutes.";
473 }
474 typedef aps-channel {
475 type enumeration {
476 enum path {
477 description "none";
478 }
479 enum tcm1 {
480 description "none";
481 }
482 enum tcm2 {
483 description "none";
484 }
485 enum tcm3 {
486 description "none";
487 }
488 enum tcm4 {
489 description "none";
490 }
491 enum tcm5 {
492 description "none";
493 }
494 enum tcm6 {
495 description "none";
496 }
497 enum section {
498 description "none";
499 }
500 }
501 description "none";
502 }
503 typedef bit-string {
504 type string;
505 description "This primitive type defines a bit oriented string.
506 The size of the BitString will be defined in the valueRange property of the attribute; according to ASN.1 (X.680).
507 The semantic of each bit position will be defined in the Documentation field of the attribute.";
508 }
509 typedef delay-measurement-role {
510 type enumeration {
511 enum controller {
512 description "none";
513 }
514 enum responder {
515 description "none";
516 }
517 }
518 description "none";
519 }
520 typedef resize-operation-type {
521 type enumeration {
522 enum increase-bw {
523 description "Increase Bandwidth";
524 }
525 enum decrease-bw {
526 description "Decrease Bandwidth";
527 }
528 }
529 description "none";
530 }
531 typedef granularity-period-type {
532 type enumeration {
533 enum unknown {
534 description "none";
535 }
536 enum period-15-min {
537 description "none";
538 }
539 enum period-24-hours {
540 description "none";
541 }
542 }
543 description "The enumeration with the options for granularity period of the performance data.";
544 }
545
546 /***********************
547 * package illustrative-object-diagrams
548 **********************/
549
550 /***********************
551 * package imported-information-object-classes
552 **********************/
553 /***********************
554 * package q.822
555 **********************/
556 grouping q.822-current-data-g {
557 leaf suspect-interval-flag {
558 type boolean;
559 description "This attribute is used to indicate that the performance data for the current period may not be reliable. Some reasons for this to occur are:- Suspect data were detected by the actual resource doing data collection.- Transition of the administrativeState attribute to/from the 'lock' state.- Transition of the operationalState to/from the 'disabled' state.- Scheduler setting that inhibits the collection function.- The performance counters were reset during the interval.- The currentData (or subclass) object instance was created during the monitoring period.";
560 }
561 leaf elapsed-time {
562 type int64;
563 description "none";
564 }
565 uses x.739-scanner-g;
566 description "none";
567 }
568 grouping q.822-history-data-g {
569 leaf history-data-id {
570 type string;
571 description "none";
572 }
573 leaf period-end-time {
574 type yang:date-and-time;
575 description "none";
576 }
577 leaf granularity-period {
578 type granularity-period-type;
579 description "none";
580 }
581 uses x.721-top-g;
582 description "none";
583 }
584
585 /***********************
586 * package x.739
587 **********************/
588 grouping x.739-scanner-g {
589 leaf scanner-id {
590 type string;
591 description "none";
592 }
593 leaf granularity-period {
594 type granularity-period-type;
595 description "none";
596 }
597 leaf administrative-state {
598 type core-model:administrative-state;
599 description "none";
600 }
601 uses x.721-top-g;
602 description "none";
603 }
604
605 /***********************
606 * package x.721
607 **********************/
608 grouping x.721-top-g {
609 leaf object-class {
610 type object-identifier;
611 description "ObjectClass ::= CHOICE{ globalForm [0] OBJECT IDENTIFIER,
612 localForm [1] INTEGER}";
613 }
614 leaf name-binding {
615 type object-identifier;
616 description "none";
617 }
618 description "This is the top level of managed object class hierarchy and every other managed object class is a specialization of either this generic class (top) or a specialization of subclass of top. The parameter miscellaneousError is to be used when a processing failure has occurred and the error condition encountered does not match any of object's defined specific error types.";
619 }
620
621
622 /***********************
623 * package imported-data-types
624 **********************/
625 typedef object-instance {
626 type string;
627 description "none";
628 }
629 typedef name {
630 type string;
631 description "none";
632 }
633 typedef object-identifier {
634 type string;
635 description "none";
636 }
637 typedef generalized-time {
638 type string;
639 description "none";
640 }
641 typedef time-period {
642 type string;
643 description "This primitive Type is imported from X.739.";
644 }
645
646}