blob: 9a53635c6cfa76aaccb996a9ac8ae71e1b108e0c [file] [log] [blame]
hirokid8fd7862018-10-09 15:24:24 +09001module tapi-photonic-media {
2 namespace "urn:onf:otcc:yang:tapi-photonic-media";
3 prefix tapi-photonic-media;
4 import tapi-common {
5 prefix tapi-common;
6 }
7 import tapi-connectivity {
8 prefix tapi-connectivity;
9 }
10 import tapi-topology {
11 prefix tapi-topology;
12 }
13 organization "ONF OTCC (Open Transport Configuration & Control) Project";
14 contact "
15 Project Web: <https://wiki.opennetworking.org/display/OTCC/TAPI>
16 Project List: <mailto:transport-api@opennetworking.org>
17 Editor: Karthik Sethuraman
18 <mailto:karthik.sethuraman@necam.com>";
19 description "
20 This module contains TAPI PhotonicMedia Model definitions.
21 Source: TapiPhotonicMedia.uml
22 Copyright (c) 2018 Open Networking Foundation (ONF). All rights reserved.
23 License: This module is distributed under the Apache License 2.0";
24 revision 2018-10-16 {
25 description "ONF Transport API version 2.1.0.
26 - The TAPI YANG models included in this TAPI release (v2.1.0) are a *normative* part of the TAPI SDK.
27 - The YANG specifications have been generated from the corresponding UML model using the [ONF EAGLE UML2YANG mapping tool]
28 <https://github.com/OpenNetworkingFoundation/EagleUmlYang>
29 and further edited manually to comply with the [ONF IISOMI UML2YANG mapping guidelines]
30 <https://wiki.opennetworking.org/display/OIMT/UML+-+YANG+Guidelines>
31 - Status of YANG model artifacts can be determined by referring to the corresponding UML artifacts.
32 As described in the UML models, some artifacts are considered *experimental*, and thus the corresponding YANG artifacts.
33 - The ONF TAPI release process does not guarantee backward compatibility of YANG models across major versions of TAPI releases.
34 The YANG model backward compatibility criteria are outlined in section 11 of <https://tools.ietf.org/html/rfc7950>.
35 YANG models included in this release are not backward compatible with previous TAPI releases.
36 - Changes included in this TAPI release (v2.1.0) are listed in
37 <https://github.com/OpenNetworkingFoundation/TAPI/blob/develop/CHANGE_LOG/change-log.2.1.0.md>";
38 reference "ONF-TR-527, ONF-TR-512, ONF-TR-531, RFC 7950, RFC 6087 and ONF TAPI UML model
39 <https://github.com/OpenNetworkingFoundation/TAPI/tree/v2.1.0/UML>";
40 }
41 revision 2018-03-07 {
42 description "ONF Transport API version 2.0.2
43 This YANG module has been generated from the TAPI UML Model using the IISOMI-Eagle xmi2yang mapping tool.
44 Changes in this revision: <https://github.com/OpenNetworkingFoundation/TAPI/blob/develop/CHANGE_LOG/change-log.2.0.2.md>";
45 reference "ONF-TR-527, ONF-TR-512, ONF-TR-531, RFC 6020, RFC 6087 and ONF TAPI UML model
46 <https://github.com/OpenNetworkingFoundation/TAPI/tree/v2.0.2/UML>";
47 }
48 revision 2018-02-16 {
49 description "ONF Transport API version 2.0.1
50 This YANG module has been generated from the TAPI UML Model using the IISOMI-Eagle xmi2yang mapping tool.
51 Changes in this revision: <https://github.com/OpenNetworkingFoundation/TAPI/blob/develop/CHANGE_LOG/change-log.2.0.1.md>";
52 reference "ONF-TR-527, ONF-TR-512, ONF-TR-531, RFC 6020, RFC 6087 and ONF TAPI UML model
53 <https://github.com/OpenNetworkingFoundation/TAPI/tree/v2.0.1/UML>";
54 }
55 revision 2018-01-02 {
56 description "ONF Transport API version 2.0.0
57 This YANG module has been generated from the TAPI UML Model using the IISOMI-Eagle xmi2yang mapping tool.
58 Changes in this revision: <https://github.com/OpenNetworkingFoundation/TAPI/blob/develop/CHANGE_LOG/change-log.2.0.0.md>";
59 reference "ONF-TR-527, ONF-TR-512, ONF-TR-531, RFC 6020, RFC 6087 and ONF TAPI UML model
60 <https://github.com/OpenNetworkingFoundation/TAPI/tree/v2.0.0/UML>";
61 }
62 augment "/tapi-common:context/tapi-topology:topology-context/tapi-topology:topology/tapi-topology:node/tapi-topology:owned-node-edge-point/tapi-connectivity:cep-list/tapi-connectivity:connection-end-point" {
63 container otsi-connection-end-point-spec {
64 uses otsi-connection-end-point-spec;
65 description "Augments the base LayerProtocol information in ConnectionEndPoint with OCH-specific information";
66 }
67 description "Augments the base LayerProtocol information in ConnectionEndPoint with OCH-specific information";
68 }
69 augment "/tapi-common:context/tapi-topology:topology-context/tapi-topology:topology/tapi-topology:node/tapi-topology:owned-node-edge-point" {
70 container media-channel-node-edge-point-spec {
71 uses media-channel-node-edge-point-spec;
72 description "Augments the base LayerProtocol information in NodeEdgePoint with OCH-specific information";
73 }
74 description "Augments the base LayerProtocol information in NodeEdgePoint with OCH-specific information";
75 }
76 augment "/tapi-common:context/tapi-topology:topology-context/tapi-topology:topology/tapi-topology:node/tapi-topology:owned-node-edge-point/tapi-connectivity:cep-list/tapi-connectivity:connection-end-point" {
77 container otsi-assembly-connection-end-point-spec {
78 uses otsi-assembly-connection-end-point-spec;
79 description "none";
80 }
81 description "none";
82 }
83 augment "/tapi-common:context/tapi-common:service-interface-point" {
84 container otsi-service-interface-point-spec {
85 uses otsi-service-interface-point-spec;
86 description "none";
87 }
88 description "none";
89 }
90 augment "/tapi-common:context/tapi-connectivity:connectivity-context/tapi-connectivity:connectivity-service/tapi-connectivity:end-point" {
91 container otsi-connectivity-service-end-point-spec {
92 uses otsi-connectivity-service-end-point-spec;
93 description "none";
94 }
95 description "none";
96 }
97 augment "/tapi-common:context/tapi-common:service-interface-point" {
98 container media-channel-service-interface-point-spec {
99 uses media-channel-service-interface-point-spec;
100 description "none";
101 }
102 description "none";
103 }
104 augment "/tapi-common:context/tapi-connectivity:connectivity-context/tapi-connectivity:connectivity-service/tapi-connectivity:end-point" {
105 container media-channel-service-interface-point-spec {
106 uses media-channel-service-interface-point-spec;
107 description "none";
108 }
109 description "none";
110 }
111 augment "/tapi-common:context/tapi-topology:topology-context/tapi-topology:topology/tapi-topology:node/tapi-topology:owned-node-edge-point/tapi-connectivity:cep-list/tapi-connectivity:connection-end-point" {
112 container media-channel-connection-end-point-spec {
113 uses media-channel-connection-end-point-spec;
114 description "none";
115 }
116 description "none";
117 }
118 augment "/tapi-common:context/tapi-topology:topology-context/tapi-topology:topology/tapi-topology:node/tapi-topology:owned-node-edge-point/tapi-connectivity:cep-list/tapi-connectivity:connection-end-point" {
119 container ots-connection-end-point-spec {
120 uses ots-connection-end-point-spec;
121 description "none";
122 }
123 description "none";
124 }
125 augment "/tapi-common:context/tapi-topology:topology-context/tapi-topology:topology/tapi-topology:node/tapi-topology:owned-node-edge-point/tapi-connectivity:cep-list/tapi-connectivity:connection-end-point" {
126 container media-channel-assembly-spec {
127 uses media-channel-assembly-spec;
128 description "none";
129 }
130 description "none";
131 }
Ai Hamano933b0fe2018-11-30 11:22:37 +0900132 augment "/tapi-common:get-service-interface-point-list/tapi-common:output/tapi-common:sip" {
133 container otsi-service-interface-point-spec {
134 uses otsi-service-interface-point-spec;
135 description "none";
136 }
137 description "none";
138 }
139 augment "/tapi-common:get-service-interface-point-details/tapi-common:output/tapi-common:sip" {
140 container otsi-service-interface-point-spec {
141 uses otsi-service-interface-point-spec;
142 description "none";
143 }
144 description "none";
145 }
146 augment "/tapi-topology:get-node-edge-point-details/tapi-topology:output/tapi-topology:node-edge-point" {
147 container media-channel-node-edge-point-spec {
148 uses media-channel-node-edge-point-spec;
149 description "none";
150 }
151 description "none";
152 }
153 augment "/tapi-connectivity:get-connectivity-service-list/tapi-connectivity:output/tapi-connectivity:service/tapi-connectivity:end-point" {
154 container otsi-connectivity-service-end-point-spec {
155 uses otsi-connectivity-service-end-point-spec;
156 description "none";
157 }
158 description "none";
159 }
160 augment "/tapi-connectivity:get-connectivity-service-details/tapi-connectivity:output/tapi-connectivity:service/tapi-connectivity:end-point" {
161 container otsi-connectivity-service-end-point-spec {
162 uses otsi-connectivity-service-end-point-spec;
163 description "none";
164 }
165 description "none";
166 }
167 augment "/tapi-connectivity:create-connectivity-service/tapi-connectivity:output/tapi-connectivity:service/tapi-connectivity:end-point" {
168 container media-channel-connectivity-service-end-point-spec {
169 uses media-channel-connectivity-service-end-point-spec;
170 description "none";
171 }
172 description "none";
173 }
174 augment "/tapi-connectivity:update-connectivity-service/tapi-connectivity:output/tapi-connectivity:service/tapi-connectivity:end-point" {
175 container media-channel-connectivity-service-end-point-spec {
176 uses media-channel-connectivity-service-end-point-spec;
177 description "none";
178 }
179 description "none";
180 }
181 augment "/tapi-connectivity:get-connectivity-service-details/tapi-connectivity:output/tapi-connectivity:service/tapi-connectivity:end-point" {
182 container media-channel-connectivity-service-end-point-spec {
183 uses media-channel-connectivity-service-end-point-spec;
184 description "none";
185 }
186 description "none";
187 }
188 augment "/tapi-connectivity:get-connectivity-service-list/tapi-connectivity:output/tapi-connectivity:service/tapi-connectivity:end-point" {
189 container media-channel-connectivity-service-end-point-spec {
190 uses media-channel-connectivity-service-end-point-spec;
191 description "none";
192 }
193 description "none";
194 }
195 augment "/tapi-connectivity:create-connectivity-service/tapi-connectivity:input/tapi-connectivity:end-point" {
196 container otsi-connectivity-service-end-point-spec {
197 uses otsi-connectivity-service-end-point-spec;
198 description "none";
199 }
200 description "none";
201 }
202 augment "/tapi-connectivity:update-connectivity-service/tapi-connectivity:input/tapi-connectivity:end-point" {
203 container otsi-connectivity-service-end-point-spec {
204 uses otsi-connectivity-service-end-point-spec;
205 description "none";
206 }
207 description "none";
208 }
209 augment "/tapi-connectivity:update-connectivity-service/tapi-connectivity:input/tapi-connectivity:end-point" {
210 container media-channel-connectivity-service-end-point-spec {
211 uses media-channel-connectivity-service-end-point-spec;
212 description "none";
213 }
214 description "none";
215 }
216 augment "/tapi-connectivity:create-connectivity-service/tapi-connectivity:output/tapi-connectivity:service/tapi-connectivity:end-point" {
217 container otsi-connectivity-service-end-point-spec {
218 uses otsi-connectivity-service-end-point-spec;
219 description "none";
220 }
221 description "none";
222 }
223 augment "/tapi-connectivity:create-connectivity-service/tapi-connectivity:input/tapi-connectivity:end-point" {
224 container media-channel-connectivity-service-end-point-spec {
225 uses media-channel-connectivity-service-end-point-spec;
226 description "none";
227 }
228 description "none";
229 }
230 augment "/tapi-connectivity:update-connectivity-service/tapi-connectivity:output/tapi-connectivity:service/tapi-connectivity:end-point" {
231 container otsi-connectivity-service-end-point-spec {
232 uses otsi-connectivity-service-end-point-spec;
233 description "none";
234 }
235 description "none";
236 }
237 augment "/tapi-common:get-service-interface-point-details/tapi-common:output/tapi-common:sip" {
238 container media-channel-service-interface-point-spec {
239 uses media-channel-service-interface-point-spec;
240 description "none";
241 }
242 description "none";
243 }
244 augment "/tapi-common:get-service-interface-point-list/tapi-common:output/tapi-common:sip" {
245 container media-channel-service-interface-point-spec {
246 uses media-channel-service-interface-point-spec;
247 description "none";
248 }
249 description "none";
250 }
251 augment "/tapi-connectivity:get-connection-end-point-details/tapi-connectivity:output/tapi-connectivity:connection-end-point" {
252 container media-channel-connection-end-point-spec {
253 uses media-channel-connection-end-point-spec;
254 description "none";
255 }
256 description "none";
257 }
258 augment "/tapi-connectivity:get-connection-end-point-details/tapi-connectivity:output/tapi-connectivity:connection-end-point" {
259 container otsi-assembly-connection-end-point-spec {
260 uses otsi-assembly-connection-end-point-spec;
261 description "none";
262 }
263 description "none";
264 }
265 augment "/tapi-connectivity:get-connection-end-point-details/tapi-connectivity:output/tapi-connectivity:connection-end-point" {
266 container otsi-connection-end-point-spec {
267 uses otsi-connection-end-point-spec;
268 description "none";
269 }
270 description "none";
271 }
hirokid8fd7862018-10-09 15:24:24 +0900272 /***********************
273 * package object-classes
274 **********************/
275 grouping otsi-gserver-adaptation-pac {
276 leaf number-of-otsi {
277 type uint64;
278 config false;
279 description "none";
280 }
281 description "none";
282 }
283 grouping otsi-connection-end-point-spec {
284 container otsi-termination {
285 config false;
286 uses otsi-termination-pac;
287 description "none";
288 }
289 description "none";
290 }
291 grouping otsi-termination-pac {
292 container selected-central-frequency {
293 config false;
294 uses central-frequency;
295 description "none";
296 }
297 container selected-application-identifier {
298 config false;
299 uses application-identifier;
300 description "This attribute indicates the selected Application Identifier that is used by the OCh trail termination function. The syntax of ApplicationIdentifier is a pair {ApplicationIdentifierType, PrintableString}. The value of ApplicationIdentifierType is either STANDARD or PROPRIETARY. The value of PrintableString represents the standard application code as defined in the ITU-T Recommendations or a vendor-specific proprietary code. If the ApplicationIdentifierType is STANDARD the value of PrintableString represents a standard application code as defined in the ITU-T Recommendations. If the ApplicationIdentifierType is PROPRIETARY, the first six characters of the PrintableString must contain the Hexadecimal representation of an OUI assigned to the vendor whose implementation generated the Application Identifier; the remaining octets of the PrintableString are unspecified. The value of this attribute of an object instance has to be one of the values identified in the attribute SupportableApplicationIdentifierList of the same object instance. The values and value ranges of the optical interface parameters of a standard application code must be consistent with those values specified in the ITU-T Recommendation for that application code.";
301 }
302 leaf selected-modulation {
303 type modulation-technique;
304 default "UNDEFINED";
305 config false;
306 description "This parameter defines the modulation used at the source";
307 }
308 container selected-spectrum {
309 config false;
310 uses spectrum-band;
311 description "none";
312 }
313 container transmited-power {
314 config false;
315 uses power-properties-pac;
316 description "Measured power at the Transmitter.";
317 }
318 container received-power {
319 uses power-properties-pac;
320 description "none";
321 }
322 container laser-properties {
323 config false;
324 uses laser-properties-pac;
325 description "Laser properties.";
326 }
327 description "Provides status information only.";
328 }
329 grouping media-channel-pool-capability-pac {
330 list supportable-spectrum {
Ai Hamano933b0fe2018-11-30 11:22:37 +0900331 key 'upper-frequency lower-frequency';
hirokid8fd7862018-10-09 15:24:24 +0900332 config false;
333 uses spectrum-band;
334 description "none";
335 }
336 list available-spectrum {
Ai Hamano933b0fe2018-11-30 11:22:37 +0900337 key 'upper-frequency lower-frequency';
hirokid8fd7862018-10-09 15:24:24 +0900338 config false;
339 uses spectrum-band;
340 description "none";
341 }
342 list occupied-spectrum {
Ai Hamano933b0fe2018-11-30 11:22:37 +0900343 key 'upper-frequency lower-frequency';
hirokid8fd7862018-10-09 15:24:24 +0900344 config false;
345 uses spectrum-band;
346 description "none";
347 }
348 description "none";
349 }
350 grouping media-channel-node-edge-point-spec {
351 container mc-pool {
352 config false;
353 uses media-channel-pool-capability-pac;
354 description "none";
355 }
356 description "none";
357 }
358 grouping otsi-routing-spec {
359 leaf optical-routing-strategy {
360 type optical-routing-strategy;
361 description "none";
362 }
363 description "none";
364 }
365 grouping media-channel-properties-pac {
366 container occupied-spectrum {
367 config false;
368 uses spectrum-band;
369 description "none";
370 }
371 container measured-power-ingress {
372 config false;
373 uses power-properties-pac;
374 description "none";
375 }
376 container measured-power-egress {
377 uses power-properties-pac;
378 description "none";
379 }
380 description "none";
381 }
382 grouping otsi-assembly-connection-end-point-spec {
383 container otsi-adapter {
384 config false;
385 uses otsi-gserver-adaptation-pac;
386 description "none";
387 }
388 container fec-parameters {
389 config false;
390 uses fec-properties-pac;
391 description "none";
392 }
393 description "none";
394 }
395 grouping otsi-capability-pac {
396 list supportable-lower-central-frequency {
Ai Hamano933b0fe2018-11-30 11:22:37 +0900397 key 'central-frequency';
hirokid8fd7862018-10-09 15:24:24 +0900398 config false;
399 uses central-frequency;
400 description "The lower frequency of the channel spectrum";
401 }
402 list supportable-upper-central-frequency {
Ai Hamano933b0fe2018-11-30 11:22:37 +0900403 key 'central-frequency';
hirokid8fd7862018-10-09 15:24:24 +0900404 config false;
405 uses central-frequency;
406 description "The Upper frequency of the channel spectrum";
407 }
408 list supportable-application-identifier {
Ai Hamano933b0fe2018-11-30 11:22:37 +0900409 key 'application-code';
hirokid8fd7862018-10-09 15:24:24 +0900410 config false;
411 uses application-identifier;
412 description "The list of supportable ApplicationIdentifiers.";
413 }
414 leaf-list supportable-modulation {
415 type modulation-technique;
416 config false;
417 description "This parameter defines the modulation used at the source";
418 }
419 container total-power-warn-threshold {
420 config false;
421 uses total-power-threshold-pac;
422 description "none";
423 }
424 description "Can read the status of the warning for the upper value that the power can reach.";
425 }
426 grouping otsi-service-interface-point-spec {
427 container otsi-capability {
428 config false;
429 uses otsi-capability-pac;
430 description "none";
431 }
432 description "none";
433 }
434 grouping otsi-connectivity-service-end-point-spec {
435 container otsi-config {
436 uses otsi-termination-config-pac;
437 description "none";
438 }
439 description "none";
440 }
441 grouping otsi-termination-config-pac {
442 container central-frequency {
443 uses central-frequency;
444 description "The central frequency of the laser. It is the oscillation frequency of the corresponding electromagnetic wave";
445 }
446 container spectrum {
447 uses spectrum-band;
448 description "none";
449 }
450 container application-identifier {
451 uses application-identifier;
452 description "This attribute indicates the selected Application Identifier.";
453 }
454 leaf modulation {
455 type modulation-technique;
456 description "The modulation techniqu selected at the source.";
457 }
458 leaf laser-control {
459 type laser-control-type;
460 description "Laser control can be FORCED-ON, FORCED-OFF or LASER-SHUTDOWN";
461 }
462 container transmit-power {
463 uses power-properties-pac;
464 description "Transmit power as requested.";
465 }
466 leaf total-power-warn-threshold-upper {
467 type decimal64 {
468 fraction-digits 7;
469 }
470 description "Allows to configure the Upper power threshold which is expected to be different from Default, but within the Min and Max values specified as OTSi SIP capability.";
471 }
472 leaf total-power-warn-threshold-lower {
473 type decimal64 {
474 fraction-digits 7;
475 }
476 description "Allows to configure the Lowerpower threshold which is expected to be different from Default, but within the Min and Max values specified as OTSi SIP capability.";
477 }
478 description "none";
479 }
480 grouping fec-properties-pac {
481 leaf pre-fec-ber {
482 type uint64;
483 config false;
484 description "counter: bit error rate before correction by FEC";
485 }
486 leaf post-fec-ber {
487 type uint64;
488 config false;
489 description "counter: bit error rate after correction by FEC";
490 }
491 leaf corrected-bytes {
492 type uint64;
493 config false;
494 description "Bytes corrected between those that were received corrupted";
495 }
496 leaf corrected-bits {
497 type uint64;
498 config false;
499 description "Bits corrected between those that were received corrupted";
500 }
501 leaf uncorrectable-bytes {
502 type uint64;
503 config false;
504 description "Bytes that could not be corrected by FEC";
505 }
506 leaf uncorrectable-bits {
507 type uint64;
508 config false;
509 description "Bits that could not be corrected by FEC";
510 }
511 description "none";
512 }
513 grouping media-channel-service-interface-point-spec {
514 container mc-pool {
515 config false;
516 uses media-channel-pool-capability-pac;
517 description "none";
518 }
519 description "none";
520 }
521 grouping media-channel-connectivity-service-end-point-spec {
522 container mc-config {
523 uses media-channel-config-pac;
524 description "none";
525 }
526 description "none";
527 }
528 grouping media-channel-config-pac {
529 container spectrum {
530 uses spectrum-band;
531 description "none";
532 }
533 description "none";
534 }
535 grouping media-channel-connection-end-point-spec {
536 container media-channel {
537 config false;
538 uses media-channel-properties-pac;
539 description "none";
540 }
541 description "none";
542 }
543 grouping ots-connection-end-point-spec {
544 container ots-media-channel {
545 config false;
546 uses media-channel-properties-pac;
547 description "none";
548 }
549 description "none";
550 }
551 grouping media-channel-assembly-spec {
552 description "none";
553 }
554 grouping laser-properties-pac {
555 leaf laser-status {
556 type laser-control-status-type;
557 config false;
558 description "none";
559 }
560 leaf laser-application-type {
561 type laser-type;
562 config false;
563 description "The type of laser, its operational wavelengths, and its applications. String size 255.";
564 }
565 leaf laser-bias-current {
566 type decimal64 {
567 fraction-digits 7;
568 }
569 config false;
570 description "The Bias current of the laser that is the medium polarization current of the laser.";
571 }
572 leaf laser-temperature {
573 type decimal64 {
574 fraction-digits 7;
575 }
576 config false;
577 description "The temperature of the laser";
578 }
579 description "none";
580 }
581 grouping power-properties-pac {
582 leaf total-power {
583 type decimal64 {
584 fraction-digits 7;
585 }
586 description "The total power at any point in a channel specified in dBm.";
587 }
588 leaf power-spectral-density {
589 type decimal64 {
590 fraction-digits 7;
591 }
592 config false;
593 description "This describes how power of a signal is distributed over frequency specified in nW/MHz";
594 }
595 description "Indication with severity warning raised when a total power value measured is above the threshold.";
596 }
597 grouping total-power-threshold-pac {
598 leaf total-power-upper-warn-threshold-default {
599 type decimal64 {
600 fraction-digits 7;
601 }
602 description "Can read the value of the default threshold that was set";
603 }
604 leaf total-power-upper-warn-threshold-min {
605 type decimal64 {
606 fraction-digits 7;
607 }
608 description "Can read the value of the lower threshold that was set";
609 }
610 leaf total-power-upper-warn-threshold-max {
611 type decimal64 {
612 fraction-digits 7;
613 }
614 description "Can read the value of the upper threshold that was set";
615 }
616 leaf total-power-lower-warn-threshold-default {
617 type decimal64 {
618 fraction-digits 7;
619 }
620 description "Can read the value of the default threshold that was set";
621 }
622 leaf total-power-lower-warn-threshold-max {
623 type decimal64 {
624 fraction-digits 7;
625 }
626 description "Can read the value of the upper threshold that was set";
627 }
628 leaf total-power-lower-warn-threshold-min {
629 type decimal64 {
630 fraction-digits 7;
631 }
632 description "Can read the value of the lower threshold that was set";
633 }
634 description "none";
635 }
636
637 /***********************
638 * package type-definitions
639 **********************/
640 identity PHOTONIC_LAYER_QUALIFIER {
641 base tapi-common:LAYER_PROTOCOL_QUALIFIER;
642 description "none";
643 }
644 identity PHOTONIC_LAYER_QUALIFIER_OTSi {
645 base PHOTONIC_LAYER_QUALIFIER;
646 description "none";
647 }
648 identity PHOTONIC_LAYER_QUALIFIER_OTSiA {
649 base PHOTONIC_LAYER_QUALIFIER;
650 description "none";
651 }
652 identity PHOTONIC_LAYER_QUALIFIER_OTSiG {
653 base PHOTONIC_LAYER_QUALIFIER;
654 description "none";
655 }
656 identity PHOTONIC_LAYER_QUALIFIER_NMC {
657 base PHOTONIC_LAYER_QUALIFIER;
658 description "none";
659 }
660 identity PHOTONIC_LAYER_QUALIFIER_NMCA {
661 base PHOTONIC_LAYER_QUALIFIER;
662 description "none";
663 }
664 identity PHOTONIC_LAYER_QUALIFIER_SMC {
665 base PHOTONIC_LAYER_QUALIFIER;
666 description "none";
667 }
668 identity PHOTONIC_LAYER_QUALIFIER_SMCA {
669 base PHOTONIC_LAYER_QUALIFIER;
670 description "none";
671 }
672 identity PHOTONIC_LAYER_QUALIFIER_OCH {
673 base PHOTONIC_LAYER_QUALIFIER;
674 description "none";
675 }
676 identity PHOTONIC_LAYER_QUALIFIER_OMS {
677 base PHOTONIC_LAYER_QUALIFIER;
678 description "none";
679 }
680 identity PHOTONIC_LAYER_QUALIFIER_OTS {
681 base PHOTONIC_LAYER_QUALIFIER;
682 description "none";
683 }
684 grouping application-identifier {
685 leaf application-identifier-type {
686 type application-identifier-type;
687 description "The ITU-T recommendation which defines the application code format.";
688 }
689 leaf application-code {
690 type string;
691 description "none";
692 }
693 description "The syntax of ApplicationIdentifier is a pair {ApplicationIdentifierType, PrintableString}. The value of ApplicationIdentifierType is either STANDARD or PROPRIETARY. The value of PrintableString represents the standard application code as defined in the ITU-T Recommendations or a vendor-specific proprietary code. If the ApplicationIdentifierType is STANDARD the value of PrintableString represents a standard application code as defined in the ITU-T Recommendations. If the ApplicationIdentifierType is PROPRIETARY, the first six characters of the PrintableString must contain the Hexadecimal representation of an OUI assigned to the vendor whose implementation generated the Application Identifier; the remaining octets of the PrintableString are unspecified. The value of this attribute of an object instance has to be one of the values identified in the attribute SupportableApplicationIdentifierList of the same object instance. The values and value ranges of the optical interface parameters of a standard application code must be consistent with those values specified in the ITU-T Recommendation for that application code.";
694 }
695 grouping central-frequency {
696 container frequency-constraint {
697 uses frequency-constraint;
698 description "none";
699 }
700 leaf central-frequency {
701 type uint64;
702 description "The central frequency of the laser specified in MHz. It is the oscillation frequency of the corresponding electromagnetic wave. ";
703 }
704 description "This data-type holds the central frequency information as well frequency constraints in terms of GridType ( FIXED grid (DWDM or CWDM) or FLEX grid) and AdjustmentGranularity.";
705 }
706 typedef optical-routing-strategy {
707 type enumeration {
708 enum OPTIMAL_OSNR {
709 description "none";
710 }
711 enum NO_RELAY {
712 description "none";
713 }
714 enum MIN_RELAY {
715 description "none";
716 }
717 enum PREFERRED_NO_CHANGE_WAVELENGTH_AS_RESTORE {
718 description "none";
719 }
720 enum PREFERRED_NO_SKIPPING_WAVELENGTH {
721 description "none";
722 }
723 }
724 description "none";
725 }
726 typedef application-identifier-type {
727 type enumeration {
728 enum PROPRIETARY {
729 description "none";
730 }
731 enum ITUT_G959_1 {
732 description "none";
733 }
734 enum ITUT_G698_1 {
735 description "none";
736 }
737 enum ITUT_G698_2 {
738 description "none";
739 }
740 enum ITUT_G696_1 {
741 description "none";
742 }
743 enum ITUT_G695 {
744 description "none";
745 }
746 }
747 description "none";
748 }
749 typedef grid-type {
750 type enumeration {
751 enum DWDM {
752 description "Fixed frequency grid in C & L bands as specified in ITU-T G.694.1
753 ";
754 }
755 enum CWDM {
756 description "Fixed frequency grid as specified in ITU-T G.694.2";
757 }
758 enum FLEX {
759 description "Flexible frequency grid as specified in ITU-T G.694.1. In this case,
760 - the allowed frequency slots have a nominal central frequency (in THz) defined by:
761 193.1 + n × 0.00625 where n is a positive or negative integer including 0 and 0.00625 is the nominal central frequency granularity in THz
762 - and a slot width defined by:
763 12.5 × m where m is a positive integer and 12.5 is the slot width granularity in GHz.
764 Any combination of frequency slots is allowed as long as no two frequency slots overlap.";
765 }
766 enum GRIDLESS {
767 description "none";
768 }
769 enum UNSPECIFIED {
770 description "Unspecified/proprietary frequency grid";
771 }
772 }
773 description "The frequency grid standard that specify reference set of frequencies used to denote allowed nominal central frequencies that may be used for defining applications.";
774 }
775 typedef adjustment-granularity {
776 type enumeration {
777 enum G_100GHZ {
778 description "100000 MHz";
779 }
780 enum G_50GHZ {
781 description "50000 MHz";
782 }
783 enum G_25GHZ {
784 description "25000 MHz";
785 }
786 enum G_12_5GHZ {
787 description "12500 MHz";
788 }
789 enum G_6_25GHZ {
790 description "6250 MHz";
791 }
792 enum G_3_125GHZ {
793 description "3125 MHz";
794 }
795 enum UNCONSTRAINED {
796 description "none";
797 }
798 }
799 description "Adjustment granularity in Gigahertz. As per ITU-T G.694.1, it is used to calculate nominal central frequency";
800 }
801 grouping spectrum-band {
802 leaf upper-frequency {
803 type uint64;
804 description "The upper frequency bound of the media channel spectrum specified in MHz";
805 }
806 leaf lower-frequency {
807 type uint64;
808 description "The lower frequency bound of the media channel spectrum specified in MHz";
809 }
810 container frequency-constraint {
811 uses frequency-constraint;
812 description "none";
813 }
814 description "This data-type holds the spectrum information in termsof upper/lower frequency directly or optionally the information to determin this in terms of the nominal central frequency and spectral width for a FIXED grid (DWDM or CWDM) and FLEX grid type systems.";
815 }
816 typedef modulation-technique {
817 type enumeration {
818 enum RZ {
819 description "none";
820 }
821 enum NRZ {
822 description "none";
823 }
824 enum BPSK {
825 description "none";
826 }
827 enum DPSK {
828 description "none";
829 }
830 enum QPSK {
831 description "none";
832 }
833 enum 8QAM {
834 description "none";
835 }
836 enum 16QAM {
837 description "none";
838 }
839 enum PAM4 {
840 description "none";
841 }
842 enum PAM8 {
843 description "none";
844 }
845 enum UNDEFINED {
846 description "none";
847 }
848 }
849 description "none";
850 }
851 typedef laser-type {
852 type enumeration {
853 enum PUMP {
854 description "none";
855 }
856 enum MODULATED {
857 description "none";
858 }
859 enum PULSE {
860 description "none";
861 }
862 }
863 description "none";
864 }
865 typedef photonic-layer-qualifier {
866 type identityref {
867 base PHOTONIC_LAYER_QUALIFIER;
868 }
869 description "none";
870 }
871 typedef laser-control-type {
872 type enumeration {
873 enum FORCED-ON {
874 description "none";
875 }
876 enum FORCED-OFF {
877 description "none";
878 }
879 enum AUTOMATIC-LASER-SHUTDOWN {
880 description "none";
881 }
882 enum UNDEFINED {
883 description "none";
884 }
885 }
886 description "none";
887 }
888 typedef laser-control-status-type {
889 type enumeration {
890 enum ON {
891 description "none";
892 }
893 enum OFF {
894 description "none";
895 }
896 enum PULSING {
897 description "none";
898 }
899 enum UNDEFINED {
900 description "none";
901 }
902 }
903 description "none";
904 }
905 grouping frequency-constraint {
906 leaf adjustment-granularity {
907 type adjustment-granularity;
908 description "Adjustment granularity in Gigahertz. As per ITU-T G.694.1, it is used to calculate nominal central frequency (in THz)";
909 }
910 leaf grid-type {
911 type grid-type;
912 description "Specifies the frequency grid standard used to determine the nominal central frequency and frequency slot width";
913 }
914 description "This data-type holds the frequency constraint information in terms of GridType ( FIXED grid (DWDM or CWDM) or FLEX grid) and AdjustmentGranularity.";
915 }
916
917}