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