Release version 1.3.1
[ccsdk/features.git] / sdnr / wt / devicemanager-onap / onf14 / provider / src / main / yang / co-channel-profile-1-0.yang
1 module co-channel-profile-1-0 {\r
2   yang-version 1.1;\r
3   namespace "urn:onf:yang:co-channel-profile-1-0";\r
4   prefix co-channel-profile;\r
5 \r
6   import ietf-yang-types {\r
7     prefix yang;\r
8   }\r
9   import core-model-1-4 {\r
10     prefix core-model;\r
11   }\r
12 \r
13   organization\r
14     "openBackhaul.com proposal to Open Networking Foundation (ONF)";\r
15   contact\r
16     "WG Web : https://github.com/openBackhaul/Overview\r
17      WG List: CoChannelProfile@openBackhaul.com\r
18      Editor : Thorsten Heinze\r
19      Email  : Thorsten.Heinze@openBackhaul.com";\r
20   description\r
21     "Technology specific definition for groups of microwave radio interfaces, which are using the same frequency channel (XPIC, MIMO and ALIC).\r
22 \r
23      Copyright 2019 openBackhaul.com\r
24 \r
25      Licensed under the Apache License, Version 2.0 (the 'License');\r
26      you may not use this file except in compliance with the License.\r
27      You may obtain a copy of the License at\r
28      http://www.apache.org/licenses/LICENSE-2.0\r
29      Unless required by applicable law or agreed to in writing, software\r
30      distributed under the License is distributed on an 'AS IS' BASIS,\r
31      WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\r
32      See the License for the specific language governing permissions and\r
33      limitations under the License.";\r
34 \r
35   revision 2020-01-27 {\r
36     description\r
37       "Model for the Transport SDN Pilot at Telefonica Germany.\r
38        Please view https://github.com/openBackhaul/coChannelProfile/issues for changes.";\r
39     reference\r
40       "https://github.com/openBackhaul/coChannelProfile/tree/tsp: Model definition\r
41        https://github.com/openBackhaul/onfCoreIm/tree/tsp: ONF TR-512 Core IM incl. Profile and enhanced Equipment definition";\r
42   }\r
43   revision 2019-11-02 {\r
44     description\r
45       "Model for the Transport SDN Pilot at Telefonica Germany.\r
46        Please view https://github.com/openBackhaul/coChannelProfile/issues for changes.";\r
47     reference\r
48       "https://github.com/openBackhaul/coChannelProfile/tree/tsp: Model definition\r
49        https://github.com/openBackhaul/onfCoreIm/tree/tsp: ONF TR-512 Core IM incl. Profile and enhanced Equipment definition";\r
50   }\r
51   revision 2019-07-17 {\r
52     description\r
53       "Model for the Transport SDN Pilot at Telefonica Germany.\r
54        Please view https://github.com/openBackhaul/coChannelProfile/issues for changes.";\r
55     reference\r
56       "https://github.com/openBackhaul/coChannelProfile/tree/tsp: Model definition\r
57        https://github.com/openBackhaul/onfCoreIm/tree/tsp: ONF TR-512 Core IM incl. Profile and enhanced Equipment definition";\r
58   }\r
59 \r
60   identity PROFILE_NAME_TYPE_CO_CHANNEL_PROFILE {\r
61     base core-model:PROFILE_NAME_TYPE;\r
62     description\r
63       "none";\r
64   }\r
65 \r
66   augment "/core-model:control-construct/core-model:profile-collection/core-model:profile" {\r
67     when "derived-from-or-self(./core-model:profile-name, 'co-channel-profile:PROFILE_NAME_TYPE_CO_CHANNEL_PROFILE')";\r
68     uses co-channel-profile-spec;\r
69     description\r
70       "none";\r
71   }\r
72 \r
73   /****************************************\r
74    * package notifications\r
75    **************************************/ \r
76 \r
77   notification object-creation-notification {\r
78     uses object-creation-notification;\r
79     description\r
80       "none";\r
81   }\r
82 \r
83   grouping object-creation-notification {\r
84     leaf counter {\r
85       type int32;\r
86       default "-1";\r
87       config false;\r
88       description\r
89         "Counts object creation notifications.";\r
90     }\r
91     leaf timestamp {\r
92       type yang:date-and-time;\r
93       default "2010-11-20T14:00:00+01:00";\r
94       config false;\r
95       description\r
96         "none";\r
97     }\r
98     leaf object-id-ref {\r
99       type leafref {\r
100         path "/core-model:control-construct/core-model:profile-collection/core-model:profile/core-model:uuid";\r
101         require-instance false;\r
102       }\r
103       config false;\r
104       description\r
105         "none";\r
106     }\r
107     leaf object-type {\r
108       type string;\r
109       default "Type of created object not specified.";\r
110       config false;\r
111       description\r
112         "none";\r
113     }\r
114     description\r
115       "none";\r
116   }\r
117 \r
118   notification object-deletion-notification {\r
119     uses object-deletion-notification;\r
120     description\r
121       "none";\r
122   }\r
123 \r
124   grouping object-deletion-notification {\r
125     leaf counter {\r
126       type int32;\r
127       default "-1";\r
128       config false;\r
129       description\r
130         "Counts object deletion notifications.";\r
131     }\r
132     leaf timestamp {\r
133       type yang:date-and-time;\r
134       default "2010-11-20T14:00:00+01:00";\r
135       config false;\r
136       description\r
137         "none";\r
138     }\r
139     leaf object-id-ref {\r
140       type leafref {\r
141         path "/core-model:control-construct/core-model:profile-collection/core-model:profile/core-model:uuid";\r
142         require-instance false;\r
143       }\r
144       config false;\r
145       description\r
146         "none";\r
147     }\r
148     description\r
149       "none";\r
150   }\r
151 \r
152   /****************************************\r
153    * grouping statements for object classes\r
154    **************************************/ \r
155 \r
156   grouping co-channel-profile-spec {\r
157     container co-channel-profile-pac {\r
158       uses co-channel-profile-pac;\r
159       description\r
160         "none";\r
161     }\r
162     description\r
163       "none";\r
164   }\r
165 \r
166   grouping co-channel-profile-pac {\r
167     container co-channel-profile-capability {\r
168       config false;\r
169       uses co-channel-profile-capability;\r
170       description\r
171         "none";\r
172     }\r
173     container co-channel-profile-configuration {\r
174       uses co-channel-profile-configuration;\r
175       description\r
176         "none";\r
177     }\r
178     description\r
179       "none";\r
180   }\r
181 \r
182   grouping co-channel-profile-capability {\r
183     leaf xpic-is-avail {\r
184       type boolean;\r
185       default "false";\r
186       config false;\r
187       description\r
188         "In case this device is in general capable of XPIC, this field shall contain a 'true'. This information shall purely relate to capabilities of the equipment type, but not to the operational capability of a specific hardware composition on site. Means for example that this attribute might contain a 'true' statement, even if an additional cable would have been required to actually operate XPIC in a specific case.";\r
189     }\r
190     leaf mimo-is-avail {\r
191       type boolean;\r
192       default "false";\r
193       config false;\r
194       description\r
195         "In case the device is capable of MIMO, this field shall contain a 'true'.";\r
196     }\r
197     leaf number-of-mimo-channels-max {\r
198       type int8;\r
199       units "channels";\r
200       default "1";\r
201       config false;\r
202       description\r
203         "Maximum number (n) of spatial multiplexing streams that can be conveyed by an n x n MIMO configuration.";\r
204     }\r
205     leaf alic-is-avail {\r
206       type boolean;\r
207       default "false";\r
208       config false;\r
209       description\r
210         "In case the device is capable of Adjacent Link Interference Cancelation (canceling of interference cause by transmitters located at the same site), this field shall contain a 'true'.";\r
211     }\r
212     description\r
213       "none";\r
214   }\r
215 \r
216   grouping co-channel-profile-configuration {\r
217     leaf profile-name {\r
218       type string;\r
219       default "Name of profile not yet defined.";\r
220       description\r
221         "Identifier of the profile. Could be a name, could be a number. Free text field to be filled by the operator.";\r
222     }\r
223     leaf kind-of-co-channel-group {\r
224       type kind-of-co-channel-group-type;\r
225       default "KIND_OF_CO_CHANNEL_GROUP_TYPE_NOT_YET_DEFINED";\r
226       description\r
227         "Type of group (XPIC, MIMO, ALIC) of air interfaces with the same transmit and receive frequency.";\r
228     }\r
229     leaf-list logical-termination-point-list {\r
230       type leafref {\r
231         path "/core-model:control-construct/core-model:logical-termination-point/core-model:uuid";\r
232         require-instance false;\r
233       }\r
234       description\r
235         "List of AirInterfaces, which are part of the co-channel group. Referenced LTP must associate a LayerProtocol class with layerProtocolName attribute having LAYER_PROTOCOL_NAME_TYPE_AIR_LAYER as value.";\r
236     }\r
237     description\r
238       "none";\r
239   }\r
240 \r
241   /****************************************\r
242    * typedef statements\r
243    **************************************/ \r
244 \r
245   typedef kind-of-co-channel-group-type {\r
246     type identityref {\r
247       base KIND_OF_CO_CHANNEL_GROUP_TYPE;\r
248     }\r
249     description\r
250       "none";\r
251   }\r
252 \r
253   /*********************************************\r
254    * grouping statements for complex data types\r
255    *******************************************/ \r
256 \r
257   identity KIND_OF_CO_CHANNEL_GROUP_TYPE {\r
258     description\r
259       "none";\r
260   }\r
261 \r
262   identity KIND_OF_CO_CHANNEL_GROUP_TYPE_XPIC {\r
263     base KIND_OF_CO_CHANNEL_GROUP_TYPE;\r
264     description\r
265       "Cross Polarization Interference Cancellation";\r
266   }\r
267 \r
268   identity KIND_OF_CO_CHANNEL_GROUP_TYPE_MIMO {\r
269     base KIND_OF_CO_CHANNEL_GROUP_TYPE;\r
270     description\r
271       "Multiple Input Multiple Output";\r
272   }\r
273 \r
274   identity KIND_OF_CO_CHANNEL_GROUP_TYPE_ALIC {\r
275     base KIND_OF_CO_CHANNEL_GROUP_TYPE;\r
276     description\r
277       "Adjacent Link Interference Cancellation";\r
278   }\r
279 \r
280   identity KIND_OF_CO_CHANNEL_GROUP_TYPE_NOT_YET_DEFINED {\r
281     base KIND_OF_CO_CHANNEL_GROUP_TYPE;\r
282     description\r
283       "none";\r
284   }\r
285 }\r