Update docs conf.yaml version to Sulfur
[transportpce.git] / ordmodels / common / src / main / yang / org-openroadm-otn-common-types@2020-03-27.yang
1 module org-openroadm-otn-common-types {
2   namespace "http://org/openroadm/otn-common-types";
3   prefix org-openroadm-otn-common-types;
4
5   organization
6     "Open ROADM MSA";
7   contact
8     "OpenROADM.org";
9   description
10     "YANG definitions for common otn related type definitions.
11
12      Copyright of the Members of the Open ROADM MSA Agreement dated (c) 2016,
13      All other rights reserved.
14
15      Redistribution and use in source and binary forms, with or without modification,
16      are permitted provided that the following conditions are met:
17
18      * Redistributions of source code must retain the above copyright notice, this
19        list of conditions and the following disclaimer.
20      * Redistributions in binary form must reproduce the above copyright notice,
21        this list of conditions and the following disclaimer in the documentation and/or
22        other materials provided with the distribution.
23      * Neither the Members of the Open ROADM MSA Agreement nor the names of its
24        contributors may be used to endorse or promote products derived from this software
25        without specific prior written permission.
26
27      THIS SOFTWARE IS PROVIDED BY THE MEMBERS OF THE OPEN ROADM MSA  AGREEMENT ''AS IS''
28      AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED
29      WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED.
30      IN NO EVENT THE MEMBERS OF THE OPEN ROADM MSA  AGREEMENT BE LIABLE FOR ANY DIRECT,
31      INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT
32      NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES;  LOSS OF USE, DATA,
33      OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY,
34      WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
35      ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
36      POSSIBILITY OF SUCH DAMAGE.
37
38      Also contains code components extracted from IETF Interfaces.  These code components
39      are copyrighted and licensed as follows:
40
41      Copyright (c) 2016 IETF Trust and the persons identified as the document authors.
42      All rights reserved.
43
44      This document is subject to BCP 78 and the IETF Trust’s Legal Provisions Relating
45      to IETF Documents (http://trustee.ietf.org/license-info) in effect on the date of
46      publication of this document. Please review these documents carefully, as they
47      describe your rights and restrictions with respect to this document. Code Components
48      extracted from this document must include Simplified BSD License text as described in
49      Section 4.e of the Trust Legal Provisions and are provided without warranty as
50      described in the Simplified BSD License.";
51
52   revision 2020-03-27 {
53     description
54       "Version 7.0.0";
55   }
56   revision 2019-11-29 {
57     description
58       "Version 6.1.0";
59   }
60   revision 2019-09-27 {
61     description
62       "Version 6.0.0";
63   }
64   revision 2018-11-30 {
65     description
66       "Version 4.1.0";
67   }
68   revision 2018-09-28 {
69     description
70       "Version 4.0.0";
71   }
72   revision 2018-03-30 {
73     description
74       "Version 3.0.0";
75   }
76   revision 2017-12-15 {
77     description
78       "Version 2.2";
79   }
80   revision 2017-09-29 {
81     description
82       "Version 2.1";
83   }
84
85   identity otu-rate-identity {
86     description
87       "A unique rate identification of the OTU.";
88   }
89
90   identity OTUCn {
91     base otu-rate-identity;
92     description
93       "Identity for an OTUCn";
94   }
95
96   identity OTU4 {
97     base otu-rate-identity;
98     description
99       "Identity for an OTU4";
100   }
101
102   identity OTU3 {
103     base otu-rate-identity;
104     description
105       "Identity for an OTU3";
106   }
107
108   identity OTU2 {
109     base otu-rate-identity;
110     description
111       "Identity for an OTU2";
112   }
113
114   identity OTU2e {
115     base otu-rate-identity;
116     description
117       "Identity for an OTU2e";
118   }
119
120   identity OTU1 {
121     base otu-rate-identity;
122     description
123       "Identity for an OTU1";
124   }
125
126   identity OTU0 {
127     base otu-rate-identity;
128     description
129       "Identity for an OTU0";
130   }
131
132   identity OTUflex {
133     base otu-rate-identity;
134     description
135       "Identity for an OTUflex";
136   }
137
138   identity odu-rate-identity {
139     description
140       "A unique rate identification of the ODU.";
141   }
142
143   identity ODUCn {
144     base odu-rate-identity;
145     description
146       "Identity for an ODUCn";
147   }
148
149   identity ODU4 {
150     base odu-rate-identity;
151     description
152       "Identity for an ODU4";
153   }
154
155   identity ODU3 {
156     base odu-rate-identity;
157     description
158       "Identity for an ODU3";
159   }
160
161   identity ODU2 {
162     base odu-rate-identity;
163     description
164       "Identity for an ODU2";
165   }
166
167   identity ODU2e {
168     base odu-rate-identity;
169     description
170       "Identity for an ODU2e";
171   }
172
173   identity ODU1 {
174     base odu-rate-identity;
175     description
176       "Identity for an ODU1";
177   }
178
179   identity ODU0 {
180     base odu-rate-identity;
181     description
182       "Identity for an ODU0";
183   }
184
185   identity ODUflex-cbr {
186     base odu-rate-identity;
187     description
188       "ODUFlex for CBR client signals (G.709)";
189   }
190
191   identity ODUflex-cbr-identity {
192     description
193       "Service type for ODUflex (CBR)";
194   }
195
196   identity ODUflex-cbr-25G {
197     base ODUflex-cbr-identity;
198     description
199       "ODUFlex for CBR client signals 25G (G.709 17.13.1)";
200   }
201
202   identity ODUflex-cbr-200G {
203     base ODUflex-cbr-identity;
204     description
205       "ODUFlex for CBR client signals 200G (G.709 17.13.2)";
206   }
207
208   identity ODUflex-cbr-400G {
209     base ODUflex-cbr-identity;
210     description
211       "ODUFlex for CBR client signals 400G (G.709 17.13.2)";
212   }
213
214   identity ODUflex-imp {
215     base odu-rate-identity;
216     description
217       "ODUFlex for IMP (Idle insertion Mapping Procedure) mapped client signals (G.709)";
218   }
219
220   identity ODUflex-flexe {
221     base odu-rate-identity;
222     description
223       "ODUflex for FlexE-aware client signals (G.709)";
224   }
225
226   identity ODUflex-gfp {
227     base odu-rate-identity;
228     description
229       "ODUflex for GFP-F mapped client signals (G.709)";
230   }
231
232   identity odtu-type-identity {
233     description
234       "A unique identification for the MSI odtu type.";
235   }
236
237   identity ODTUCn.ts {
238     base odtu-type-identity;
239     description
240       "ODTUCn.ts - OPUCn MSI type (G.709 clause 20.2)";
241   }
242
243   identity ODTU4.ts-Allocated {
244     base odtu-type-identity;
245     description
246       "OPU4 MSI - ODTU4.ts, OPU4 MSI TS is occupied/allocated.
247        Applies to all ODTU4.x mappings";
248   }
249
250   identity ODTU01 {
251     base odtu-type-identity;
252     description
253       "ODTU01 MSI type";
254   }
255
256   identity ODTU12 {
257     base odtu-type-identity;
258     description
259       "ODTU12 MSI type";
260   }
261
262   identity ODTU13 {
263     base odtu-type-identity;
264     description
265       "ODTU13 MSI type";
266   }
267
268   identity ODTU23 {
269     base odtu-type-identity;
270     description
271       "ODTU23 MSI type";
272   }
273
274   identity ODTU2.ts {
275     base odtu-type-identity;
276     description
277       "ODTU2.ts MSI type";
278   }
279
280   identity ODTU3.ts {
281     base odtu-type-identity;
282     description
283       "ODTU3.ts MSI type";
284   }
285
286   identity ODTU4.ts {
287     base odtu-type-identity;
288     description
289       "ODTU4.ts MSI type";
290   }
291
292   identity unallocated {
293     base odtu-type-identity;
294     description
295       "Unallocated MSI type";
296   }
297
298   identity odu-function-identity {
299     description
300       "A unique identification of the ODUk interface function.";
301   }
302
303   identity ODU-TTP {
304     base odu-function-identity;
305     description
306       "ODU TTP facility facing trail termination";
307   }
308
309   identity ODU-CTP {
310     base odu-function-identity;
311     description
312       "ODU CTP connection termination";
313   }
314
315   identity ODU-TTP-CTP {
316     base odu-function-identity;
317     description
318       "ODU CTP mapper level connection termination with trail termination and client adaptation";
319   }
320
321   typedef payload-type-def {
322     type string {
323       length "2";
324       pattern '[0-9a-fA-F]*';
325     }
326     description
327       "Common type definition for odu payload-type";
328   }
329
330   typedef opucn-trib-slot-def {
331     type string;
332     description
333       "OPUCn trib slot in the form of 'A.B' with
334        A = 1..n
335        B = 1..20";
336   }
337
338   typedef tcm-direction-enum {
339     type enumeration {
340       enum up-tcm {
341         description
342           "TCM termination direction faces the switch fabric.";
343       }
344       enum down-tcm {
345         description
346           "TCM termination direction faces the facility";
347       }
348     }
349     description
350       "Enumeration type for TCM direction";
351   }
352 }