blob: fcaec3609577a15e70f48d6571e8e12d2a300e04 [file] [log] [blame]
hiroki4ecc8712018-05-08 13:23:37 -07001module openconfig-optical-amplifier {
2
3 yang-version "1";
4
5 // namespace
6 namespace "http://openconfig.net/yang/optical-amplfier";
7
8 prefix "oc-opt-amp";
9
10 import openconfig-transport-line-common {
11 prefix oc-line-com;
12 revision-date "2016-03-31";
13 }
14 import openconfig-extensions {
15 prefix oc-ext;
16 revision-date "2015-10-09";
17 }
18
19 // import tailf-common {prefix "tailf";}
20 // tailf:export netconf;
21 // tailf:export rest;
22
23 // meta
24 organization "OpenConfig working group";
25
26 contact
27 "OpenConfig working group
28 www.openconfig.net";
29
30 description
31 "This model describes configuration and operational state data
32 for optical amplifiers, deployed as part of a transport
33 line system.";
34
35 oc-ext:openconfig-version "0.1.0";
36
37 revision "2016-03-31" {
38 description
39 "Initial public release";
40 reference "0.1.0";
41 }
42
43 revision "2015-12-11" {
44 description
45 "Initial revision";
46 reference "TBD";
47 }
48
49 // extension statements
50
51 // feature statements
52
53 // identity statements
54
55 identity OPTICAL_AMPLIFIER_TYPE {
56 description
57 "Type definition for different types of optical amplifiers";
58 }
59
60 identity EDFA {
61 base OPTICAL_AMPLIFIER_TYPE;
62 description
63 "Erbium doped fiber amplifer (EDFA)";
64 }
65
66 identity FORWARD_RAMAN {
67 base OPTICAL_AMPLIFIER_TYPE;
68 description
69 "Forward pumping Raman amplifier";
70 }
71
72 identity BACKWARD_RAMAN {
73 base OPTICAL_AMPLIFIER_TYPE;
74 description
75 "Backward pumping Raman amplifier";
76 }
77
78 identity HYBRID {
79 base OPTICAL_AMPLIFIER_TYPE;
80 description
81 "Hybrid backward pumping Raman + EDFA amplifier";
82 }
83
84 identity GAIN_RANGE {
85 description
86 "Base type for expressing the gain range for a switched gain
87 amplifier. The gain range is expressed as a generic setting,
88 e.g., LOW/MID/HIGH. The actual db range will be determined
89 by the implementation.";
90 }
91
92 identity LOW_GAIN_RANGE {
93 base GAIN_RANGE;
94 description
95 "LOW gain range setting";
96 }
97
98 identity MID_GAIN_RANGE {
99 base GAIN_RANGE;
100 description
101 "MID gain range setting";
102 }
103
104 identity HIGH_GAIN_RANGE {
105 base GAIN_RANGE;
106 description
107 "HIGH gain range setting";
108 }
109
110 identity FIXED_GAIN_RANGE {
111 base GAIN_RANGE;
112 description
113 "Fixed or non-switched gain amplfier";
114 }
115
116 identity OPTICAL_AMPLIFIER_MODE {
117 description
118 "Type definition for different types of optical amplifier
119 operating modes";
120 }
121
122 identity CONSTANT_POWER {
123 base OPTICAL_AMPLIFIER_MODE;
124 description
125 "Constant power mode";
126 }
127
128 identity CONSTANT_GAIN {
129 base OPTICAL_AMPLIFIER_MODE;
130 description
131 "Constant gain mode";
132 }
133
134
135 // grouping statements
136
137 grouping optical-amplifier-config {
138 description
139 "Configuration data for optical amplifiers";
140
141 leaf name {
142 type string;
143 description
144 "User-defined name assigned to identify a specific amplifier
145 in the device";
146 }
147
148 leaf type {
149 type identityref {
150 base OPTICAL_AMPLIFIER_TYPE;
151 }
152 description
153 "Type of the amplifier";
154 }
155
156 leaf target-gain {
157 type decimal64 {
158 fraction-digits 2;
159 range 0..max;
160 }
161 units dB;
162 description
163 "Positive gain applied by the amplifier.";
164 }
165
166 leaf target-gain-tilt {
167 type decimal64 {
168 fraction-digits 2;
169 }
170 units dB;
171 description
172 "Gain tilt control";
173 }
174
175 leaf gain-range {
176 type identityref {
177 base GAIN_RANGE;
178 }
179 description
180 "Selected gain range. The gain range is a platform-defined
181 value indicating the switched gain amplifier setting";
182 }
183
184 leaf amp-mode {
185 type identityref {
186 base OPTICAL_AMPLIFIER_MODE;
187 }
188 description
189 "The operating mode of the amplifier";
190 }
191
192 leaf output-power {
193 type decimal64 {
194 fraction-digits 2;
195 }
196 units dBm;
197 description
198 "Output optical power of the amplifier.";
199 }
200
201 }
202
203 grouping optical-amplifier-state {
204 description
205 "Operational state data for optical amplifiers";
206
207 leaf actual-gain {
208 type decimal64 {
209 fraction-digits 2;
210 range 0..max;
211 }
212 units dB;
213 description
214 "Actual gain applied by the amplifier.";
215 }
216
217 leaf actual-gain-tilt {
218 type decimal64 {
219 fraction-digits 2;
220 }
221 units dB;
222 description
223 "The actual gain tilt.";
224 }
225
226 leaf input-power {
227 type decimal64 {
228 fraction-digits 2;
229 }
230 units dBm;
231 description
232 "Input optical power of the amplifier.";
233 }
234 }
235
236 grouping optical-amplifier-top {
237 description
238 "Top-level grouping for optical amplifier data";
239
240 container optical-amplifiers {
241 description
242 "Enclosing container for list of amplifiers";
243
244 list amplifier {
245 key "name";
246 description
247 "List of optical amplifiers present in the device";
248
249 leaf name {
250 type leafref {
251 path "../config/name";
252 }
253 description
254 "Reference to the name of the amplifier";
255 }
256
257 container config {
258 description
259 "Configuration data for the amplifier";
260
261 uses optical-amplifier-config;
262 }
263
264 container state {
265
266 config false;
267
268 description
269 "Operational state data for the amplifier";
270
271 uses optical-amplifier-config;
272 uses optical-amplifier-state;
273 }
274 }
275
276 uses oc-line-com:optical-osc-top;
277 }
278 }
279
280 // data definition statements
281
282 uses optical-amplifier-top;
283
284
285}