Remove openroadm and tapi models building
[transportpce.git] / ordmodels / common / src / main / yang / org-openroadm-port-types@2018-11-30.yang
1 module org-openroadm-port-types {
2   namespace "http://org/openroadm/port/types";
3   prefix org-openroadm-port-types;
4
5   import org-openroadm-common-link-types {
6     prefix org-openroadm-common-link-types;
7     revision-date 2018-11-30;
8   }
9
10   organization
11     "Open ROADM MSA";
12   contact
13     "OpenROADM.org";
14   description
15     "YANG definitions for port types.
16
17      Copyright of the Members of the Open ROADM MSA Agreement dated (c) 2016,
18      All other rights reserved.
19
20      Redistribution and use in source and binary forms, with or without modification,
21      are permitted provided that the following conditions are met:
22
23      * Redistributions of source code must retain the above copyright notice, this
24        list of conditions and the following disclaimer.
25      * Redistributions in binary form must reproduce the above copyright notice,
26        this list of conditions and the following disclaimer in the documentation and/or
27        other materials provided with the distribution.
28      * Neither the Members of the Open ROADM MSA Agreement nor the names of its
29        contributors may be used to endorse or promote products derived from this software
30        without specific prior written permission.
31
32      THIS SOFTWARE IS PROVIDED BY THE MEMBERS OF THE OPEN ROADM MSA  AGREEMENT ''AS IS''
33      AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED
34      WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED.
35      IN NO EVENT THE MEMBERS OF THE OPEN ROADM MSA  AGREEMENT BE LIABLE FOR ANY DIRECT,
36      INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT
37      NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES;  LOSS OF USE, DATA,
38      OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY,
39      WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
40      ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
41      POSSIBILITY OF SUCH DAMAGE.";
42
43   revision 2018-11-30 {
44     description
45       "Version 4.1.0";
46   }
47   revision 2018-09-28 {
48     description
49       "Version 4.0.0";
50   }
51   revision 2018-03-30 {
52     description
53       "Version 3.0.0";
54   }
55   revision 2017-12-15 {
56     description
57       "Version 2.2";
58   }
59   revision 2017-09-29 {
60     description
61       "Version 2.1";
62   }
63   revision 2017-07-28 {
64     description
65       "Version 2.0.1 - added revision-date to imports";
66   }
67   revision 2017-06-26 {
68     description
69       "Version 2.0";
70   }
71   revision 2016-10-14 {
72     description
73       "Version 1.2";
74   }
75
76   identity supported-if-capability {
77     description
78       "Base identity from which specific supported interfaces are derived";
79   }
80
81   identity if-100GE {
82     base supported-if-capability;
83   }
84
85   identity if-OMS {
86     base supported-if-capability;
87   }
88
89   identity if-OTS {
90     base supported-if-capability;
91   }
92
93   identity if-OTS-OMS-MC-NMC {
94     base supported-if-capability;
95   }
96
97   identity if-NMC {
98     base supported-if-capability;
99   }
100
101   identity if-OCH {
102     base supported-if-capability;
103   }
104
105   identity if-1GE {
106     base supported-if-capability;
107   }
108
109   identity if-10GE {
110     base supported-if-capability;
111   }
112
113   identity if-40GE {
114     base supported-if-capability;
115   }
116
117   identity if-OCH-OTU1-ODU1 {
118     base supported-if-capability;
119   }
120
121   identity if-OCH-OTU2-ODU2 {
122     base supported-if-capability;
123   }
124
125   identity if-OCH-OTU2E-ODU2E {
126     base supported-if-capability;
127   }
128
129   identity if-OCH-OTU3-ODU3 {
130     base supported-if-capability;
131   }
132
133   identity if-OCH-OTU4-ODU4 {
134     base supported-if-capability;
135   }
136
137   identity if-OTUCn-ODUCn {
138     base supported-if-capability;
139   }
140
141   identity if-otsi-flexo-flexogroup {
142     base supported-if-capability;
143   }
144
145   identity if-otsi-otucn-oducn {
146     base supported-if-capability;
147   }
148
149   identity if-OTU4-ODU4 {
150     base supported-if-capability;
151   }
152
153   identity if-OTU1-ODU1 {
154     base supported-if-capability;
155   }
156
157   identity if-OTU2-ODU2 {
158     base supported-if-capability;
159   }
160
161   identity if-OTU2e-ODU2e {
162     base supported-if-capability;
163   }
164
165   identity if-OTU3-ODU3 {
166     base supported-if-capability;
167   }
168
169   identity if-1GE-ODU0 {
170     base supported-if-capability;
171   }
172
173   identity if-10GE-ODU2 {
174     base supported-if-capability;
175   }
176
177   identity if-10GE-ODU2e {
178     base supported-if-capability;
179   }
180
181   identity if-10GE-oduflexgfp {
182     base supported-if-capability;
183   }
184
185   identity if-25GE-oduflexcbr {
186     base supported-if-capability;
187   }
188
189   identity if-40GE-ODU3 {
190     base supported-if-capability;
191   }
192
193   identity if-40GE-oduflexgfp {
194     base supported-if-capability;
195   }
196
197   identity if-100GE-ODU4 {
198     base supported-if-capability;
199   }
200
201   identity if-100GE-oduflexgfp {
202     base supported-if-capability;
203   }
204
205   identity if-200GE-oduflexcbr {
206     base supported-if-capability;
207   }
208
209   identity if-400GE-odufleximp {
210     base supported-if-capability;
211   }
212
213   identity if-400GE-oduflexcbr {
214     base supported-if-capability;
215   }
216
217   identity supported-xpdr-capability {
218     description
219       "Base identity from which specific supported xponder are derived";
220   }
221
222   identity Transponder {
223     base supported-xpdr-capability;
224   }
225
226   identity Regen {
227     base supported-xpdr-capability;
228   }
229
230   typedef port-wavelength-types {
231     type enumeration {
232       enum "wavelength" {
233         value 1;
234         description
235           "Port on a transponder or ROADM SRG add drop";
236       }
237       enum "multi-wavelength" {
238         value 2;
239         description
240           "External port connecting to other roadm.";
241       }
242     }
243     description
244       "Port types.";
245   }
246
247   typedef port-module-types {
248     type enumeration {
249       enum "100GBASE-LR4" {
250         value 1;
251       }
252       enum "CWDM-4" {
253         value 2;
254       }
255     }
256     description
257       "Pluggable modue types.";
258   }
259
260   grouping common-port {
261     leaf port-power-capability-min-rx {
262       type org-openroadm-common-link-types:power-dBm;
263       config false;
264       description
265         "Based on port capabilities, the minimum power in the system spec for this port to
266          provide optimum function in rx direction";
267     }
268     leaf port-power-capability-min-tx {
269       type org-openroadm-common-link-types:power-dBm;
270       config false;
271       description
272         "Based on port capabilities, the minimum power in the system spec for this port to
273          provide optimum function in tx direction.";
274     }
275     leaf port-power-capability-max-rx {
276       type org-openroadm-common-link-types:power-dBm;
277       config false;
278       description
279         "Based on port capabilities, the maximum power in the system spec for this port to
280          provide optimum function in rx direction.";
281     }
282     leaf port-power-capability-max-tx {
283       type org-openroadm-common-link-types:power-dBm;
284       config false;
285       description
286         "Based on port capabilities, the maximum power in the system spec for this port to
287          provide optimum function in tx direction.";
288     }
289   }
290
291   grouping roadm-port {
292     uses common-port;
293   }
294 }