E2AP code changes
[o-du/l2.git] / src / codec_utils / E2AP / E2AP.asn1
1 -- ASN1START\r
2 -- **************************************************************\r
3 --\r
4 -- Elementary Procedure definitions\r
5 -- Derived from 3GPP 38.413 v15.4.0 NGAP\r
6 -- **************************************************************\r
7 \r
8 E2AP-PDU-Descriptions {\r
9 iso(1) identified-organization(3) dod(6) internet(1) private(4) enterprise(1) 53148 e2(1) version1 (1) e2ap(1) e2ap-PDU-Descriptions (0) }\r
10 \r
11 DEFINITIONS AUTOMATIC TAGS ::= \r
12 \r
13 BEGIN\r
14 \r
15 -- **************************************************************\r
16 --\r
17 -- IE parameter types from other modules.\r
18 --\r
19 -- **************************************************************\r
20 \r
21 IMPORTS\r
22         CriticalityE2,\r
23         ProcedureCodeE2\r
24 FROM E2AP-CommonDataTypes\r
25 \r
26 \r
27 \r
28         E2setupFailure,\r
29         E2setupRequest,\r
30         E2setupResponse,\r
31         ErrorIndicationE2,\r
32         ResetRequest,\r
33         ResetResponse,\r
34         RICcontrolAcknowledge,\r
35         RICcontrolFailure,\r
36         RICcontrolRequest,\r
37         RICindication,\r
38         RICserviceQuery,\r
39         RICserviceUpdate,\r
40         RICserviceUpdateAcknowledge,\r
41         RICserviceUpdateFailure,\r
42         RICsubscriptionFailure,\r
43         RICsubscriptionRequest,\r
44         RICsubscriptionResponse,\r
45         RICsubscriptionDeleteFailure,\r
46         RICsubscriptionDeleteRequest,\r
47         RICsubscriptionDeleteResponse\r
48 FROM E2AP-PDU-Contents\r
49 \r
50         id-E2setup,\r
51         id-ErrorIndicationE2,\r
52         id-Reset,\r
53         id-RICcontrol,\r
54         id-RICindication,\r
55         id-RICserviceQuery,\r
56         id-RICserviceUpdate,\r
57         id-RICsubscription,\r
58         id-RICsubscriptionDelete\r
59 FROM E2AP-Constants;\r
60 \r
61 -- **************************************************************\r
62 --\r
63 -- Interface Elementary Procedure Class\r
64 --\r
65 -- **************************************************************\r
66 \r
67 E2AP-ELEMENTARY-PROCEDURE ::= CLASS {\r
68         &InitiatingMessageE2                                                                            ,\r
69         &SuccessfulOutcomeE2                                                    OPTIONAL        ,\r
70         &UnsuccessfulOutcomeE2                                          OPTIONAL        ,\r
71         &procedureCode                          ProcedureCodeE2 UNIQUE  ,\r
72         &criticality                            CriticalityE2           DEFAULT ignore\r
73 }\r
74 \r
75 WITH SYNTAX {\r
76         INITIATING MESSAGE                      &InitiatingMessageE2\r
77         [SUCCESSFUL OUTCOME                     &SuccessfulOutcomeE2]\r
78         [UNSUCCESSFUL OUTCOME           &UnsuccessfulOutcomeE2]\r
79         PROCEDURE CODE                          &procedureCode\r
80         [CRITICALITY                            &criticality]\r
81 }\r
82 \r
83 -- **************************************************************\r
84 --\r
85 -- Interface PDU Definition\r
86 --\r
87 -- **************************************************************\r
88 \r
89 E2AP-PDU ::= CHOICE {\r
90         initiatingMessage                       InitiatingMessageE2,\r
91         successfulOutcome                       SuccessfulOutcomeE2,\r
92         unsuccessfulOutcome                     UnsuccessfulOutcomeE2,\r
93         ...\r
94 }\r
95 \r
96 InitiatingMessageE2 ::= SEQUENCE {\r
97         procedureCode   E2AP-ELEMENTARY-PROCEDURE.&procedureCode                ({E2AP-ELEMENTARY-PROCEDURES}),\r
98         criticality             E2AP-ELEMENTARY-PROCEDURE.&criticality                  ({E2AP-ELEMENTARY-PROCEDURES}{@procedureCode}),\r
99         value                   E2AP-ELEMENTARY-PROCEDURE.&InitiatingMessageE2  ({E2AP-ELEMENTARY-PROCEDURES}{@procedureCode})\r
100 }\r
101 \r
102 SuccessfulOutcomeE2 ::= SEQUENCE {\r
103         procedureCode   E2AP-ELEMENTARY-PROCEDURE.&procedureCode                ({E2AP-ELEMENTARY-PROCEDURES}),\r
104         criticality             E2AP-ELEMENTARY-PROCEDURE.&criticality                  ({E2AP-ELEMENTARY-PROCEDURES}{@procedureCode}),\r
105         value                   E2AP-ELEMENTARY-PROCEDURE.&SuccessfulOutcomeE2  ({E2AP-ELEMENTARY-PROCEDURES}{@procedureCode})\r
106 }\r
107 \r
108 UnsuccessfulOutcomeE2 ::= SEQUENCE {\r
109         procedureCode   E2AP-ELEMENTARY-PROCEDURE.&procedureCode                ({E2AP-ELEMENTARY-PROCEDURES}),\r
110         criticality             E2AP-ELEMENTARY-PROCEDURE.&criticality                  ({E2AP-ELEMENTARY-PROCEDURES}{@procedureCode}),\r
111         value                   E2AP-ELEMENTARY-PROCEDURE.&UnsuccessfulOutcomeE2        ({E2AP-ELEMENTARY-PROCEDURES}{@procedureCode})\r
112 }\r
113 \r
114 -- **************************************************************\r
115 --\r
116 -- Interface Elementary Procedure List\r
117 --\r
118 -- **************************************************************\r
119 \r
120 E2AP-ELEMENTARY-PROCEDURES E2AP-ELEMENTARY-PROCEDURE ::= {\r
121         E2AP-ELEMENTARY-PROCEDURES-CLASS-1                                      |\r
122         E2AP-ELEMENTARY-PROCEDURES-CLASS-2,     \r
123         ...\r
124 }\r
125 \r
126 E2AP-ELEMENTARY-PROCEDURES-CLASS-1 E2AP-ELEMENTARY-PROCEDURE ::= {\r
127         ricSubscription                                                                         |\r
128         ricSubscriptionDelete                                                           |\r
129         ricServiceUpdate                                                                        |\r
130         ricControl                                                                                      |\r
131         e2setup                                                                                         |\r
132         reset,\r
133         ...\r
134 }\r
135 \r
136 E2AP-ELEMENTARY-PROCEDURES-CLASS-2 E2AP-ELEMENTARY-PROCEDURE ::= {\r
137         ricIndication                                                                           |\r
138         ricServiceQuery                                                                         |\r
139         errorIndication,        \r
140         ...\r
141 }\r
142 \r
143 -- **************************************************************\r
144 --\r
145 -- Interface Elementary Procedures\r
146 --\r
147 -- **************************************************************\r
148 \r
149 e2setup E2AP-ELEMENTARY-PROCEDURE ::= {\r
150         INITIATING MESSAGE              E2setupRequest\r
151         SUCCESSFUL OUTCOME              E2setupResponse\r
152         UNSUCCESSFUL OUTCOME    E2setupFailure\r
153         PROCEDURE CODE                  id-E2setup\r
154         CRITICALITY                             reject\r
155 }\r
156 \r
157 errorIndication E2AP-ELEMENTARY-PROCEDURE ::= {\r
158         INITIATING MESSAGE              ErrorIndicationE2\r
159         PROCEDURE CODE                  id-ErrorIndicationE2\r
160         CRITICALITY                             ignore\r
161 }\r
162 \r
163 reset   E2AP-ELEMENTARY-PROCEDURE ::= {\r
164         INITIATING MESSAGE              ResetRequest\r
165         SUCCESSFUL OUTCOME              ResetResponse\r
166         PROCEDURE CODE                  id-Reset\r
167         CRITICALITY                             reject\r
168 }\r
169 \r
170 ricControl E2AP-ELEMENTARY-PROCEDURE ::= {\r
171         INITIATING MESSAGE              RICcontrolRequest\r
172         SUCCESSFUL OUTCOME              RICcontrolAcknowledge\r
173         UNSUCCESSFUL OUTCOME    RICcontrolFailure\r
174         PROCEDURE CODE                  id-RICcontrol\r
175         CRITICALITY                             reject\r
176 }\r
177 \r
178 ricIndication E2AP-ELEMENTARY-PROCEDURE ::= {\r
179         INITIATING MESSAGE              RICindication\r
180         PROCEDURE CODE                  id-RICindication\r
181         CRITICALITY                             ignore\r
182 }\r
183 \r
184 ricServiceQuery E2AP-ELEMENTARY-PROCEDURE ::= {\r
185         INITIATING MESSAGE              RICserviceQuery\r
186         PROCEDURE CODE                  id-RICserviceQuery\r
187         CRITICALITY                             ignore\r
188 }\r
189 \r
190 ricServiceUpdate E2AP-ELEMENTARY-PROCEDURE ::= {\r
191         INITIATING MESSAGE              RICserviceUpdate\r
192         SUCCESSFUL OUTCOME              RICserviceUpdateAcknowledge\r
193         UNSUCCESSFUL OUTCOME    RICserviceUpdateFailure\r
194         PROCEDURE CODE                  id-RICserviceUpdate\r
195         CRITICALITY                             reject\r
196 }\r
197 \r
198 ricSubscription E2AP-ELEMENTARY-PROCEDURE ::= {\r
199         INITIATING MESSAGE              RICsubscriptionRequest\r
200         SUCCESSFUL OUTCOME              RICsubscriptionResponse\r
201         UNSUCCESSFUL OUTCOME    RICsubscriptionFailure\r
202         PROCEDURE CODE                  id-RICsubscription\r
203         CRITICALITY                             reject\r
204 }\r
205 \r
206 ricSubscriptionDelete E2AP-ELEMENTARY-PROCEDURE ::= {\r
207         INITIATING MESSAGE              RICsubscriptionDeleteRequest\r
208         SUCCESSFUL OUTCOME              RICsubscriptionDeleteResponse\r
209         UNSUCCESSFUL OUTCOME    RICsubscriptionDeleteFailure\r
210         PROCEDURE CODE                  id-RICsubscriptionDelete\r
211         CRITICALITY                             reject\r
212 }\r
213 \r
214 \r
215 END\r
216 -- ASN1STOP\r
217 \r
218 \r
219 \r
220 -- ASN1START\r
221 -- **************************************************************\r
222 --\r
223 -- PDU definitions for E2AP\r
224 -- Derived from 3GPP 38.413 v15.4.0 NGAP\r
225 -- \r
226 -- **************************************************************\r
227 \r
228 E2AP-PDU-Contents {\r
229 iso(1) identified-organization(3) dod(6) internet(1) private(4) enterprise(1) 53148 e2(1) version1 (1) e2ap(1) e2ap-PDU-Contents (1) }\r
230 \r
231 DEFINITIONS AUTOMATIC TAGS ::= \r
232 \r
233 BEGIN\r
234 \r
235 -- **************************************************************\r
236 --\r
237 -- IE parameter types from other modules.\r
238 --\r
239 -- **************************************************************\r
240 \r
241 IMPORTS\r
242         CauseE2,\r
243         CriticalityDiagnosticsE2,\r
244         GlobalE2node-ID,\r
245         GlobalRIC-ID,\r
246         RANfunctionDefinition,\r
247         RANfunctionID,\r
248         RANfunctionRevision,\r
249         RICactionDefinition,\r
250         RICactionID,\r
251         RICactionType,\r
252         RICcallProcessID,\r
253         RICcontrolAckRequest,\r
254         RICcontrolHeader,\r
255         RICcontrolMessage,\r
256         RICcontrolOutcome,\r
257         RICcontrolStatus,\r
258         RICeventTriggerDefinition,\r
259         RICindicationHeader,\r
260         RICindicationMessage,\r
261         RICindicationSN,\r
262         RICindicationType,\r
263         RICrequestID,\r
264         RICsubsequentAction,\r
265         TimeToWaitE2\r
266 FROM E2AP-IEs\r
267 \r
268         ProtocolIE-ContainerE2{},\r
269         ProtocolIE-ContainerList{},\r
270         ProtocolIE-SingleContainerE2{},\r
271         E2AP-PROTOCOL-IES,\r
272         E2AP-PROTOCOL-IES-PAIR\r
273 FROM E2AP-Containers\r
274 \r
275         id-CauseE2,\r
276         id-CriticalityDiagnosticsE2,\r
277         id-GlobalE2node-ID,\r
278         id-GlobalRIC-ID,\r
279         id-RANfunctionID,\r
280         id-RANfunctionID-Item,\r
281         id-RANfunctionIEcause-Item,\r
282         id-RANfunction-Item,\r
283         id-RANfunctionsAccepted,\r
284         id-RANfunctionsAdded,\r
285         id-RANfunctionsDeleted,\r
286         id-RANfunctionsModified,\r
287         id-RANfunctionsRejected,\r
288         id-RICaction-Admitted-Item,\r
289         id-RICactionID,\r
290         id-RICaction-NotAdmitted-Item,\r
291         id-RICactions-Admitted,\r
292         id-RICactions-NotAdmitted,\r
293         id-RICaction-ToBeSetup-Item,\r
294         id-RICcallProcessID,\r
295         id-RICcontrolAckRequest,\r
296         id-RICcontrolHeader,\r
297         id-RICcontrolMessage,\r
298         id-RICcontrolOutcome,\r
299         id-RICcontrolStatus,\r
300         id-RICindicationHeader,\r
301         id-RICindicationMessage,\r
302         id-RICindicationSN,\r
303         id-RICindicationType,\r
304         id-RICrequestID,\r
305         id-RICserviceQuery,\r
306         id-RICsubscriptionDetails,\r
307         id-TimeToWaitE2,\r
308         \r
309         maxofRANfunctionID,\r
310         maxofRICactionID\r
311 FROM E2AP-Constants;\r
312 \r
313 -- **************************************************************\r
314 --\r
315 -- MESSAGES FOR NEAR-RT RIC FUNCTIONAL PROCEDURES\r
316 --\r
317 -- **************************************************************\r
318 \r
319 -- **************************************************************\r
320 --\r
321 -- RIC Subscription Elementary Procedure\r
322 --\r
323 -- **************************************************************\r
324 -- **************************************************************\r
325 --\r
326 -- RIC SUBSCRIPTION REQUEST\r
327 --\r
328 -- **************************************************************\r
329 RICsubscriptionRequest ::= SEQUENCE {\r
330         protocolIEs                                     ProtocolIE-ContainerE2  {{RICsubscriptionRequest-IEs}},\r
331         ...\r
332 }\r
333 \r
334 RICsubscriptionRequest-IEs E2AP-PROTOCOL-IES ::= {\r
335         { ID id-RICrequestID                            CRITICALITY reject      TYPE RICrequestID                                       PRESENCE mandatory}|\r
336         { ID id-RANfunctionID                           CRITICALITY reject      TYPE RANfunctionID                                      PRESENCE mandatory}|\r
337         { ID id-RICsubscriptionDetails          CRITICALITY reject      TYPE RICsubscriptionDetails                     PRESENCE mandatory},\r
338         ...\r
339 }\r
340 \r
341 \r
342 RICsubscriptionDetails ::= SEQUENCE {\r
343         ricEventTriggerDefinition       RICeventTriggerDefinition,\r
344         ricAction-ToBeSetup-List        RICactions-ToBeSetup-List,\r
345         ...\r
346 }\r
347 \r
348 RICactions-ToBeSetup-List ::= SEQUENCE (SIZE(1..maxofRICactionID)) OF ProtocolIE-SingleContainerE2 { {RICaction-ToBeSetup-ItemIEs} }\r
349 \r
350 RICaction-ToBeSetup-ItemIEs     E2AP-PROTOCOL-IES ::= {\r
351         { ID id-RICaction-ToBeSetup-Item        CRITICALITY ignore      TYPE RICaction-ToBeSetup-Item   PRESENCE mandatory },\r
352         ...\r
353 }\r
354 \r
355 RICaction-ToBeSetup-Item ::= SEQUENCE {\r
356         ricActionID                                     RICactionID,\r
357         ricActionType                           RICactionType,\r
358         ricActionDefinition                     RICactionDefinition     OPTIONAL,\r
359         ricSubsequentAction                     RICsubsequentAction     OPTIONAL,\r
360         ...\r
361 }\r
362 \r
363 -- **************************************************************\r
364 --\r
365 -- RIC SUBSCRIPTION RESPONSE\r
366 --\r
367 -- **************************************************************\r
368 RICsubscriptionResponse ::= SEQUENCE {\r
369         protocolIEs                                     ProtocolIE-ContainerE2{{RICsubscriptionResponse-IEs}},\r
370         ...\r
371 }\r
372 \r
373 RICsubscriptionResponse-IEs E2AP-PROTOCOL-IES ::= {\r
374         { ID id-RICrequestID                            CRITICALITY reject              TYPE RICrequestID                               PRESENCE mandatory } |\r
375         { ID id-RANfunctionID                           CRITICALITY reject              TYPE RANfunctionID                              PRESENCE mandatory } |\r
376         { ID id-RICactions-Admitted                     CRITICALITY reject              TYPE RICaction-Admitted-List    PRESENCE mandatory } |\r
377         { ID id-RICactions-NotAdmitted          CRITICALITY reject              TYPE RICaction-NotAdmitted-List PRESENCE optional },\r
378         ...     \r
379 }\r
380 \r
381 \r
382 \r
383 RICaction-Admitted-List ::= SEQUENCE (SIZE(1..maxofRICactionID)) OF ProtocolIE-SingleContainerE2{{RICaction-Admitted-ItemIEs}}\r
384 \r
385 RICaction-Admitted-ItemIEs E2AP-PROTOCOL-IES ::= {\r
386         { ID id-RICaction-Admitted-Item         CRITICALITY ignore              TYPE RICaction-Admitted-Item    PRESENCE mandatory },\r
387         ...\r
388 }\r
389 \r
390 RICaction-Admitted-Item ::= SEQUENCE {\r
391         ricActionID                                     RICactionID,\r
392         ...\r
393 }\r
394 \r
395 RICaction-NotAdmitted-List ::= SEQUENCE (SIZE(0..maxofRICactionID)) OF ProtocolIE-SingleContainerE2 { {RICaction-NotAdmitted-ItemIEs} }\r
396 \r
397 RICaction-NotAdmitted-ItemIEs E2AP-PROTOCOL-IES ::= {\r
398         { ID id-RICaction-NotAdmitted-Item      CRITICALITY ignore      TYPE RICaction-NotAdmitted-Item         PRESENCE mandatory },\r
399         ...\r
400 }\r
401 \r
402 RICaction-NotAdmitted-Item ::= SEQUENCE {\r
403         ricActionID                                     RICactionID,\r
404         cause                                           CauseE2,\r
405         ...\r
406 }\r
407 \r
408 -- **************************************************************\r
409 --\r
410 -- RIC SUBSCRIPTION FAILURE\r
411 --\r
412 -- **************************************************************\r
413 RICsubscriptionFailure ::= SEQUENCE {\r
414         protocolIEs                                     ProtocolIE-ContainerE2  {{RICsubscriptionFailure-IEs}},\r
415         ...\r
416 }\r
417 \r
418 RICsubscriptionFailure-IEs E2AP-PROTOCOL-IES ::= {\r
419         { ID id-RICrequestID                            CRITICALITY reject      TYPE RICrequestID                                       PRESENCE mandatory      }|\r
420         { ID id-RANfunctionID                           CRITICALITY reject      TYPE RANfunctionID                                      PRESENCE mandatory      }|\r
421         { ID id-RICactions-NotAdmitted          CRITICALITY reject      TYPE RICaction-NotAdmitted-List         PRESENCE mandatory      }|\r
422         { ID id-CriticalityDiagnosticsE2                CRITICALITY ignore      TYPE CriticalityDiagnosticsE2                   PRESENCE optional       },      \r
423         ...\r
424 }\r
425 \r
426 -- **************************************************************\r
427 --\r
428 -- RIC Subscription Delete Elementary Procedure\r
429 --\r
430 -- **************************************************************\r
431 -- **************************************************************\r
432 --\r
433 -- RIC SUBSCRIPTION DELETE REQUEST\r
434 --\r
435 -- **************************************************************\r
436 RICsubscriptionDeleteRequest ::= SEQUENCE {\r
437         protocolIEs                                     ProtocolIE-ContainerE2  {{RICsubscriptionDeleteRequest-IEs}},\r
438         ...\r
439 }\r
440 \r
441 RICsubscriptionDeleteRequest-IEs E2AP-PROTOCOL-IES ::= {\r
442         { ID id-RICrequestID                            CRITICALITY reject      TYPE RICrequestID                                       PRESENCE mandatory      }|\r
443         { ID id-RANfunctionID                           CRITICALITY reject      TYPE RANfunctionID                                      PRESENCE mandatory      },      \r
444         ...\r
445 }\r
446 \r
447 -- **************************************************************\r
448 --\r
449 -- RIC SUBSCRIPTION DELETE RESPONSE\r
450 --\r
451 -- **************************************************************\r
452 RICsubscriptionDeleteResponse ::= SEQUENCE {\r
453         protocolIEs                                     ProtocolIE-ContainerE2  {{RICsubscriptionDeleteResponse-IEs}},\r
454         ...\r
455 }\r
456 \r
457 RICsubscriptionDeleteResponse-IEs E2AP-PROTOCOL-IES ::= {\r
458         { ID id-RICrequestID                            CRITICALITY reject      TYPE RICrequestID                                       PRESENCE mandatory      }|\r
459         { ID id-RANfunctionID                           CRITICALITY reject      TYPE RANfunctionID                                      PRESENCE mandatory      },      \r
460         ...\r
461 }\r
462 -- **************************************************************\r
463 --\r
464 -- RIC SUBSCRIPTION DELETE FAILURE\r
465 --\r
466 -- **************************************************************\r
467 RICsubscriptionDeleteFailure ::= SEQUENCE {\r
468         protocolIEs                                     ProtocolIE-ContainerE2  {{RICsubscriptionDeleteFailure-IEs}},\r
469         ...\r
470 }\r
471 \r
472 RICsubscriptionDeleteFailure-IEs E2AP-PROTOCOL-IES ::= {\r
473         { ID id-RICrequestID                            CRITICALITY reject      TYPE RICrequestID                                       PRESENCE mandatory      }|\r
474         { ID id-RANfunctionID                           CRITICALITY reject      TYPE RANfunctionID                                      PRESENCE mandatory      }|\r
475         { ID id-CauseE2                                         CRITICALITY ignore      TYPE CauseE2                                                    PRESENCE mandatory      }|\r
476         { ID id-CriticalityDiagnosticsE2                CRITICALITY ignore      TYPE CriticalityDiagnosticsE2                   PRESENCE optional       },      \r
477         ...\r
478 }\r
479 \r
480 -- **************************************************************\r
481 --\r
482 -- RIC Indication Elementary Procedure\r
483 --\r
484 -- **************************************************************\r
485 -- **************************************************************\r
486 --\r
487 -- RIC INDICATION\r
488 --\r
489 -- **************************************************************\r
490 RICindication ::= SEQUENCE {\r
491         protocolIEs                                     ProtocolIE-ContainerE2  {{RICindication-IEs}},\r
492         ...\r
493 }\r
494 \r
495 RICindication-IEs E2AP-PROTOCOL-IES ::= {\r
496         { ID id-RICrequestID                            CRITICALITY reject      TYPE RICrequestID                                       PRESENCE mandatory      }|\r
497         { ID id-RANfunctionID                           CRITICALITY reject      TYPE RANfunctionID                                      PRESENCE mandatory      }|\r
498         { ID id-RICactionID                                     CRITICALITY reject      TYPE RICactionID                                        PRESENCE mandatory      }|\r
499         { ID id-RICindicationSN                         CRITICALITY reject      TYPE RICindicationSN                            PRESENCE optional       }|\r
500         { ID id-RICindicationType                       CRITICALITY reject      TYPE RICindicationType                          PRESENCE mandatory      }|\r
501         { ID id-RICindicationHeader                     CRITICALITY reject      TYPE RICindicationHeader                        PRESENCE mandatory      }|\r
502         { ID id-RICindicationMessage            CRITICALITY reject      TYPE RICindicationMessage                       PRESENCE mandatory      }|\r
503         { ID id-RICcallProcessID                        CRITICALITY reject      TYPE RICcallProcessID                           PRESENCE optional       },\r
504         ...\r
505 }\r
506 \r
507 -- **************************************************************\r
508 --\r
509 -- RIC Control Elementary Procedure\r
510 --\r
511 -- **************************************************************\r
512 -- **************************************************************\r
513 --\r
514 -- RIC CONTROL REQUEST\r
515 --\r
516 -- **************************************************************\r
517 RICcontrolRequest ::= SEQUENCE {\r
518         protocolIEs                                     ProtocolIE-ContainerE2  {{RICcontrolRequest-IEs}},\r
519         ...\r
520 }\r
521 \r
522 RICcontrolRequest-IEs E2AP-PROTOCOL-IES ::= {\r
523         { ID id-RICrequestID                            CRITICALITY reject      TYPE RICrequestID                                       PRESENCE mandatory      }|\r
524         { ID id-RANfunctionID                           CRITICALITY reject      TYPE RANfunctionID                                      PRESENCE mandatory      }|\r
525         { ID id-RICcallProcessID                        CRITICALITY reject      TYPE RICcallProcessID                           PRESENCE optional       }|\r
526         { ID id-RICcontrolHeader                        CRITICALITY reject      TYPE RICcontrolHeader                           PRESENCE mandatory      }|\r
527         { ID id-RICcontrolMessage                       CRITICALITY reject      TYPE RICcontrolMessage                          PRESENCE mandatory      }|\r
528         { ID id-RICcontrolAckRequest            CRITICALITY reject      TYPE RICcontrolAckRequest                       PRESENCE optional       },\r
529         ...\r
530 }\r
531 -- **************************************************************\r
532 --\r
533 -- RIC CONTROL ACKNOWLEDGE\r
534 --\r
535 -- **************************************************************\r
536 RICcontrolAcknowledge ::= SEQUENCE {\r
537         protocolIEs                                     ProtocolIE-ContainerE2  {{RICcontrolAcknowledge-IEs}},\r
538         ...\r
539 }\r
540 \r
541 RICcontrolAcknowledge-IEs E2AP-PROTOCOL-IES ::= {\r
542         { ID id-RICrequestID                            CRITICALITY reject      TYPE RICrequestID                                       PRESENCE mandatory      }|\r
543         { ID id-RANfunctionID                           CRITICALITY reject      TYPE RANfunctionID                                      PRESENCE mandatory      }|\r
544         { ID id-RICcallProcessID                        CRITICALITY reject      TYPE RICcallProcessID                           PRESENCE optional       }|\r
545         { ID id-RICcontrolStatus                        CRITICALITY reject      TYPE RICcontrolStatus                           PRESENCE mandatory      } |\r
546         { ID id-RICcontrolOutcome                       CRITICALITY reject      TYPE RICcontrolOutcome                          PRESENCE optional       },\r
547         ...\r
548 }\r
549 -- **************************************************************\r
550 --\r
551 -- RIC CONTROL FAILURE\r
552 --\r
553 -- **************************************************************\r
554 RICcontrolFailure ::= SEQUENCE {\r
555         protocolIEs                                     ProtocolIE-ContainerE2  {{RICcontrolFailure-IEs}},\r
556         ...\r
557 }\r
558 \r
559 RICcontrolFailure-IEs E2AP-PROTOCOL-IES ::= {\r
560         { ID id-RICrequestID                            CRITICALITY reject      TYPE RICrequestID                                       PRESENCE mandatory      }|\r
561         { ID id-RANfunctionID                           CRITICALITY reject      TYPE RANfunctionID                                      PRESENCE mandatory      }|\r
562         { ID id-RICcallProcessID                        CRITICALITY reject      TYPE RICcallProcessID                           PRESENCE optional       }|\r
563         { ID id-CauseE2                                         CRITICALITY ignore      TYPE CauseE2                                                    PRESENCE mandatory      } |\r
564         { ID id-RICcontrolOutcome                       CRITICALITY reject      TYPE RICcontrolOutcome                          PRESENCE optional       },\r
565         ...\r
566 }\r
567 \r
568 -- **************************************************************\r
569 --\r
570 -- MESSAGES FOR GLOBAL PROCEDURES\r
571 --\r
572 -- **************************************************************\r
573 \r
574 -- **************************************************************\r
575 --\r
576 -- Error Indication Elementary Procedure\r
577 --\r
578 -- **************************************************************\r
579 -- **************************************************************\r
580 --\r
581 -- ERROR INDICATION\r
582 --\r
583 -- **************************************************************\r
584 ErrorIndicationE2 ::= SEQUENCE {\r
585         protocolIEs                                     ProtocolIE-ContainerE2  {{ErrorIndicationE2-IEs}},\r
586         ...\r
587 }\r
588 \r
589 ErrorIndicationE2-IEs E2AP-PROTOCOL-IES ::= {\r
590         { ID id-RICrequestID                            CRITICALITY reject      TYPE RICrequestID                               PRESENCE optional       }|\r
591         { ID id-RANfunctionID                           CRITICALITY reject      TYPE RANfunctionID                              PRESENCE optional       }|\r
592         { ID id-CauseE2                                         CRITICALITY ignore      TYPE CauseE2                                            PRESENCE optional       }|\r
593         { ID id-CriticalityDiagnosticsE2                CRITICALITY ignore      TYPE CriticalityDiagnosticsE2           PRESENCE optional       },      \r
594         ...\r
595 }\r
596 \r
597 -- **************************************************************\r
598 --\r
599 -- E2 Setup Elementary Procedure\r
600 --\r
601 -- **************************************************************\r
602 -- **************************************************************\r
603 --\r
604 -- E2 SETUP REQUEST\r
605 --\r
606 -- **************************************************************\r
607 \r
608 E2setupRequest ::= SEQUENCE {\r
609         protocolIEs             ProtocolIE-ContainerE2          { {E2setupRequestIEs} },\r
610         ...\r
611 }\r
612 \r
613 E2setupRequestIEs E2AP-PROTOCOL-IES ::= {\r
614         { ID id-GlobalE2node-ID                 CRITICALITY reject      TYPE GlobalE2node-ID                            PRESENCE mandatory      }|\r
615         { ID id-RANfunctionsAdded               CRITICALITY reject      TYPE RANfunctions-List                          PRESENCE optional       },\r
616         ...\r
617 }\r
618 \r
619 -- **************************************************************\r
620 --\r
621 -- E2 SETUP RESPONSE\r
622 --\r
623 -- **************************************************************\r
624 \r
625 E2setupResponse ::= SEQUENCE {\r
626         protocolIEs             ProtocolIE-ContainerE2          { {E2setupResponseIEs} },\r
627         ...\r
628 }\r
629 \r
630 E2setupResponseIEs E2AP-PROTOCOL-IES ::= {\r
631         { ID id-GlobalRIC-ID                            CRITICALITY reject      TYPE GlobalRIC-ID                               PRESENCE mandatory      }|\r
632         { ID id-RANfunctionsAccepted            CRITICALITY reject      TYPE RANfunctionsID-List                PRESENCE optional       }|\r
633         { ID id-RANfunctionsRejected            CRITICALITY reject      TYPE RANfunctionsIDcause-List   PRESENCE optional       },\r
634         ...\r
635 }\r
636 \r
637 -- **************************************************************\r
638 --\r
639 -- E2 SETUP FAILURE\r
640 --\r
641 -- **************************************************************\r
642 \r
643 E2setupFailure ::= SEQUENCE {\r
644         protocolIEs             ProtocolIE-ContainerE2          { {E2setupFailureIEs} },\r
645         ...\r
646 }\r
647 \r
648 E2setupFailureIEs E2AP-PROTOCOL-IES ::= {\r
649         { ID id-CauseE2                                         CRITICALITY ignore      TYPE CauseE2                                            PRESENCE mandatory      }|\r
650         { ID id-TimeToWaitE2                                    CRITICALITY ignore      TYPE TimeToWaitE2                                       PRESENCE optional       }|\r
651         { ID id-CriticalityDiagnosticsE2                CRITICALITY ignore      TYPE CriticalityDiagnosticsE2           PRESENCE optional       },\r
652         ...\r
653 }\r
654 \r
655 -- **************************************************************\r
656 --\r
657 -- Reset Elementary Procedure\r
658 --\r
659 -- **************************************************************\r
660 \r
661 -- **************************************************************\r
662 --\r
663 -- RESET REQUEST\r
664 --\r
665 -- **************************************************************\r
666 \r
667 ResetRequest ::= SEQUENCE {\r
668         protocolIEs             ProtocolIE-ContainerE2          { {ResetRequestIEs} },\r
669         ...\r
670 }\r
671 \r
672 ResetRequestIEs E2AP-PROTOCOL-IES ::= {\r
673         { ID id-CauseE2                                         CRITICALITY ignore      TYPE CauseE2                                            PRESENCE mandatory      },\r
674         ...\r
675 }\r
676 \r
677 -- **************************************************************\r
678 --\r
679 -- RESET RESPONSE\r
680 --\r
681 -- **************************************************************\r
682 \r
683 ResetResponse ::= SEQUENCE {\r
684         protocolIEs             ProtocolIE-ContainerE2          { {ResetResponseIEs} },\r
685         ...\r
686 }\r
687 \r
688 ResetResponseIEs E2AP-PROTOCOL-IES ::= {\r
689         { ID id-CriticalityDiagnosticsE2                CRITICALITY ignore      TYPE CriticalityDiagnosticsE2           PRESENCE optional       },\r
690         ...\r
691 }\r
692 \r
693 -- **************************************************************\r
694 --\r
695 -- RIC Service Update Elementary Procedure\r
696 --\r
697 -- **************************************************************\r
698 -- **************************************************************\r
699 --\r
700 -- RIC SERVICE UPDATE\r
701 --\r
702 -- **************************************************************\r
703 RICserviceUpdate ::= SEQUENCE {\r
704         protocolIEs                                     ProtocolIE-ContainerE2  {{RICserviceUpdate-IEs}},\r
705         ...\r
706 }\r
707 \r
708 RICserviceUpdate-IEs E2AP-PROTOCOL-IES ::= {\r
709         { ID id-RANfunctionsAdded                       CRITICALITY reject      TYPE RANfunctions-List                          PRESENCE optional       }|\r
710         { ID id-RANfunctionsModified            CRITICALITY reject      TYPE RANfunctions-List                          PRESENCE optional       }|\r
711         { ID id-RANfunctionsDeleted                     CRITICALITY reject      TYPE RANfunctionsID-List                        PRESENCE optional       },\r
712         ...\r
713 }\r
714 \r
715 RANfunctions-List ::= SEQUENCE (SIZE(0..maxofRANfunctionID)) OF ProtocolIE-SingleContainerE2 { {RANfunction-ItemIEs} }\r
716 \r
717 RANfunction-ItemIEs     E2AP-PROTOCOL-IES ::= {\r
718         { ID id-RANfunction-Item                        CRITICALITY ignore      TYPE RANfunction-Item                           PRESENCE mandatory      },\r
719         ...\r
720 }\r
721 \r
722 \r
723 RANfunction-Item ::= SEQUENCE {\r
724         ranFunctionID                           RANfunctionID,\r
725         ranFunctionDefinition           RANfunctionDefinition,\r
726         ranFunctionRevision                     RANfunctionRevision,\r
727         ...\r
728 }\r
729 \r
730 RANfunctionsID-List ::= SEQUENCE (SIZE(0..maxofRANfunctionID)) OF ProtocolIE-SingleContainerE2{{RANfunctionID-ItemIEs}}\r
731 \r
732 RANfunctionID-ItemIEs E2AP-PROTOCOL-IES ::= {\r
733         { ID id-RANfunctionID-Item                      CRITICALITY ignore              TYPE RANfunctionID-Item                 PRESENCE mandatory      },\r
734         ...\r
735 }\r
736 \r
737 RANfunctionID-Item ::= SEQUENCE {\r
738         ranFunctionID                           RANfunctionID,\r
739         ranFunctionRevision                     RANfunctionRevision,\r
740         ...\r
741 }\r
742 \r
743 -- **************************************************************\r
744 --\r
745 -- RIC SERVICE UPDATE ACKNOWLEDGE\r
746 --\r
747 -- **************************************************************\r
748 RICserviceUpdateAcknowledge ::= SEQUENCE {\r
749         protocolIEs                                     ProtocolIE-ContainerE2  {{RICserviceUpdateAcknowledge-IEs}},\r
750         ...\r
751 }\r
752 \r
753 RICserviceUpdateAcknowledge-IEs E2AP-PROTOCOL-IES ::= {\r
754         { ID id-RANfunctionsAccepted            CRITICALITY reject      TYPE RANfunctionsID-List                        PRESENCE optional       }|\r
755         { ID id-RANfunctionsRejected            CRITICALITY reject      TYPE RANfunctionsIDcause-List           PRESENCE optional       },\r
756         ...\r
757 }\r
758 \r
759 RANfunctionsIDcause-List ::= SEQUENCE (SIZE(0..maxofRANfunctionID)) OF ProtocolIE-SingleContainerE2 { {RANfunctionIDcause-ItemIEs} }\r
760 \r
761 RANfunctionIDcause-ItemIEs      E2AP-PROTOCOL-IES ::= {\r
762         { ID id-RANfunctionIEcause-Item         CRITICALITY ignore      TYPE RANfunctionIDcause-Item            PRESENCE mandatory      },\r
763         ...\r
764 }\r
765 \r
766 \r
767 RANfunctionIDcause-Item ::= SEQUENCE {\r
768         ranFunctionID                           RANfunctionID,\r
769         cause                                           CauseE2,\r
770         ...\r
771 }\r
772 \r
773 \r
774 -- **************************************************************\r
775 --\r
776 -- RIC SERVICE UPDATE FAILURE\r
777 --\r
778 -- **************************************************************\r
779 RICserviceUpdateFailure ::= SEQUENCE {\r
780         protocolIEs                     ProtocolIE-ContainerE2  {{RICserviceUpdateFailure-IEs}},\r
781         ...\r
782 }\r
783 \r
784 RICserviceUpdateFailure-IEs E2AP-PROTOCOL-IES ::= {\r
785         { ID id-RANfunctionsRejected            CRITICALITY ignore      TYPE RANfunctionsIDcause-List           PRESENCE optional       }|\r
786         { ID id-TimeToWaitE2                                    CRITICALITY ignore      TYPE TimeToWaitE2                                               PRESENCE optional       }|\r
787         { ID id-CriticalityDiagnosticsE2                CRITICALITY ignore      TYPE CriticalityDiagnosticsE2                   PRESENCE optional       },\r
788         ...\r
789 }\r
790 \r
791 -- **************************************************************\r
792 --\r
793 -- RIC Service Query Elementary Procedure\r
794 --\r
795 -- **************************************************************\r
796 -- **************************************************************\r
797 --\r
798 -- RIC SERVICE QUERY\r
799 --\r
800 -- **************************************************************\r
801 RICserviceQuery ::= SEQUENCE {\r
802         protocolIEs                                     ProtocolIE-ContainerE2  {{RICserviceQuery-IEs}},\r
803         ...\r
804 }\r
805 \r
806 RICserviceQuery-IEs E2AP-PROTOCOL-IES ::= {\r
807         { ID id-RANfunctionsAccepted            CRITICALITY reject      TYPE RANfunctionsID-List                        PRESENCE optional       },\r
808         ...\r
809 }\r
810 \r
811 END\r
812 -- ASN1STOP\r
813 \r
814 -- ASN1START\r
815 -- **************************************************************\r
816 -- E2AP\r
817 -- Information Element Definitions\r
818 -- \r
819 -- **************************************************************\r
820 \r
821 E2AP-IEs {\r
822 iso(1) identified-organization(3) dod(6) internet(1) private(4) enterprise(1) 53148 e2(1) version1 (1) e2ap(1) e2ap-IEs (2)}\r
823 \r
824 DEFINITIONS AUTOMATIC TAGS ::= \r
825 \r
826 BEGIN\r
827 \r
828 IMPORTS\r
829         CriticalityE2,\r
830         PresenceE2,\r
831         ProcedureCodeE2,\r
832         ProtocolIE-IDE2,\r
833         TriggeringMessageE2\r
834 FROM E2AP-CommonDataTypes\r
835 \r
836         maxnoofErrors,\r
837         maxProtocolIEs\r
838 FROM E2AP-Constants;\r
839 \r
840 -- A\r
841 -- B\r
842 -- C\r
843 CauseE2 ::= CHOICE {\r
844         ricRequest                      CauseRIC,\r
845         ricService                      CauseRICservice,\r
846         transport                       CauseTransport,\r
847         protocol                        CauseProtocol,\r
848         misc                            CauseMisc,\r
849         ...\r
850 }\r
851 \r
852 CauseMisc ::= ENUMERATED {\r
853         control-processing-overload,\r
854         hardware-failure,\r
855         om-intervention,\r
856         unspecified,\r
857         ...\r
858 }\r
859 CauseProtocol ::= ENUMERATED {\r
860         transfer-syntax-error,\r
861         abstract-syntax-error-reject,\r
862         abstract-syntax-error-ignore-and-notify,\r
863         message-not-compatible-with-receiver-state,\r
864         semantic-error,\r
865         abstract-syntax-error-falsely-constructed-message,\r
866         unspecified,\r
867         ...\r
868 }\r
869 \r
870 CauseRIC ::= ENUMERATED {\r
871         ran-function-id-Invalid, \r
872         action-not-supported, \r
873         excessive-actions,\r
874         duplicate-action, \r
875         duplicate-event,\r
876         function-resource-limit, \r
877         request-id-unknown, \r
878         inconsistent-action-subsequent-action-sequence, \r
879         control-message-invalid, \r
880         call-process-id-invalid,\r
881         unspecified,\r
882         ...\r
883 }\r
884 \r
885 CauseRICservice ::= ENUMERATED{\r
886         function-not-required, \r
887         excessive-functions, \r
888         ric-resource-limit,\r
889         ...\r
890 }\r
891 CauseTransport ::= ENUMERATED {\r
892         unspecified,\r
893         transport-resource-unavailable,\r
894         ...\r
895 }\r
896 \r
897 -- **************************************************************\r
898 -- copied from 3GPP 38.413 NGAP IEs v15.5.0\r
899 -- note: ie-Extensions removed\r
900 -- **************************************************************\r
901 CriticalityDiagnosticsE2 ::= SEQUENCE {\r
902         procedureCode                                   ProcedureCodeE2                                                 OPTIONAL,\r
903         triggeringMessage                               TriggeringMessageE2                                             OPTIONAL,\r
904         procedureCriticality                    CriticalityE2                                                           OPTIONAL,\r
905         ricRequestorID                                  RICrequestID                                                    OPTIONAL,\r
906         iEsCriticalityDiagnosticsE2             CriticalityDiagnostics-IE-ListE2                        OPTIONAL,\r
907         ...\r
908 }\r
909 \r
910 CriticalityDiagnostics-IE-ListE2 ::= SEQUENCE (SIZE(1..maxnoofErrors)) OF CriticalityDiagnostics-IE-ItemE2\r
911 \r
912 CriticalityDiagnostics-IE-ItemE2 ::= SEQUENCE {\r
913         iECriticalityE2         CriticalityE2,\r
914         iE-ID                           ProtocolIE-IDE2,\r
915         typeOfError                     TypeOfErrorE2,\r
916         ...\r
917 }\r
918 \r
919 -- D\r
920 -- E\r
921 \r
922 -- **************************************************************\r
923 -- copied from 3GPP X2AP IEs v15.4.0\r
924 -- note: ie-Extensions removed\r
925 -- **************************************************************\r
926 ENB-ID ::= CHOICE {\r
927         macro-eNB-ID                    BIT STRING (SIZE (20)),\r
928         home-eNB-ID                             BIT STRING (SIZE (28)),\r
929         ... ,\r
930         short-Macro-eNB-ID              BIT STRING (SIZE(18)),\r
931         long-Macro-eNB-ID               BIT STRING (SIZE(21))\r
932 }\r
933 -- **************************************************************\r
934 -- copied from 3GPP 38.423 v15.5.0 XnAP IEs \r
935 -- **************************************************************\r
936 ENB-ID-Choice ::= CHOICE {\r
937         enb-ID-macro                    BIT STRING (SIZE(20)),\r
938         enb-ID-shortmacro               BIT STRING (SIZE(18)),\r
939         enb-ID-longmacro                BIT STRING (SIZE(21)),\r
940         ...\r
941 }\r
942 \r
943 -- **************************************************************\r
944 -- copied from 3GPP X2AP IEs v15.4.0\r
945 -- note: ie-Extensions removed\r
946 -- Note: to avoid duplicate names with XnAP, GNB-ID renamed ENGNB-ID, GlobalGNB-ID renamed GlobalenGNB-ID\r
947 -- **************************************************************\r
948 ENGNB-ID ::= CHOICE {\r
949         gNB-ID  BIT STRING (SIZE (22..32)),\r
950         ...\r
951 }\r
952 \r
953 -- F\r
954 -- G\r
955 GlobalE2node-ID ::= CHOICE{\r
956         gNB                                     GlobalE2node-gNB-ID,\r
957         en-gNB                          GlobalE2node-en-gNB-ID,\r
958         ng-eNB                          GlobalE2node-ng-eNB-ID,\r
959         eNB                                     GlobalE2node-eNB-ID,\r
960         ...\r
961 }\r
962 \r
963 GlobalE2node-en-gNB-ID ::= SEQUENCE{\r
964         global-gNB-ID           GlobalenGNB-ID,\r
965         ...\r
966 }\r
967 GlobalE2node-eNB-ID ::= SEQUENCE{\r
968         global-eNB-ID           GlobalENB-ID,\r
969         ...\r
970 }\r
971 GlobalE2node-gNB-ID ::= SEQUENCE{\r
972         global-gNB-ID           GlobalgNB-ID,\r
973         gNB-CU-UP-ID            GNB-CU-UP-ID    OPTIONAL,\r
974         gNB-DU-ID                       GNB-DU-IDE2             OPTIONAL,\r
975         ...\r
976 }\r
977 GlobalE2node-ng-eNB-ID ::= SEQUENCE{\r
978         global-ng-eNB-ID        GlobalngeNB-ID,\r
979         ...\r
980 }\r
981 -- **************************************************************\r
982 -- copied from 3GPP X2AP IEs v15.4.0\r
983 -- note: ie-Extensions removed\r
984 -- **************************************************************\r
985 \r
986 GlobalENB-ID ::= SEQUENCE {\r
987         pLMN-Identity           PLMN-IdentityE2,\r
988         eNB-ID                          ENB-ID,\r
989         ...\r
990 }\r
991 -- **************************************************************\r
992 -- copied from 3GPP X2AP IEs v15.4.0\r
993 -- Note: to avoid duplicate names with XnAP, GNB-ID renamed ENGNB-ID, GlobalGNB-ID renamed GlobalenGNB-ID\r
994 -- **************************************************************\r
995 GlobalenGNB-ID ::= SEQUENCE {\r
996         pLMN-Identity           PLMN-IdentityE2,\r
997         gNB-ID                          ENGNB-ID,\r
998         ...\r
999 }\r
1000 -- **************************************************************\r
1001 -- copied from 3GPP 38.423 v15.5.0 XnAP IEs \r
1002 -- **************************************************************\r
1003 GlobalgNB-ID    ::= SEQUENCE {\r
1004         plmn-id                         PLMN-IdentityE2,\r
1005         gnb-id                          GNB-ID-Choice,\r
1006         ...\r
1007 }\r
1008 \r
1009 \r
1010 -- **************************************************************\r
1011 -- copied from 3GPP 38.423 v15.5.0 XnAP IEs \r
1012 -- **************************************************************\r
1013 GlobalngeNB-ID  ::= SEQUENCE {\r
1014         plmn-id                 PLMN-IdentityE2,\r
1015         enb-id                  ENB-ID-Choice,\r
1016         ...\r
1017 }\r
1018 \r
1019 GlobalRIC-ID ::= SEQUENCE{\r
1020         pLMN-Identity                   PLMN-IdentityE2,\r
1021         ric-ID                                  BIT STRING (SIZE (20)),\r
1022         ...\r
1023 }\r
1024 \r
1025 -- **************************************************************\r
1026 -- copied from 3GPP 38.463 v15.5.0 E1AP IEs \r
1027 -- **************************************************************\r
1028 GNB-CU-UP-ID::=         INTEGER (0..68719476735)\r
1029 GNB-DU-IDE2::=          INTEGER (0..68719476735)\r
1030 \r
1031 -- **************************************************************\r
1032 -- copied from 3GPP 38.423 v15.5.0 XnAP IEs \r
1033 -- **************************************************************\r
1034 GNB-ID-Choice ::= CHOICE {\r
1035         gnb-ID                                  BIT STRING (SIZE(22..32)),\r
1036         ...\r
1037 }\r
1038 -- H\r
1039 -- I\r
1040 -- J\r
1041 -- K\r
1042 -- L\r
1043 -- M\r
1044 -- N\r
1045 -- O\r
1046 -- P\r
1047 -- **************************************************************\r
1048 -- copied from 3GPP X2AP IEs v15.4.0\r
1049 -- **************************************************************\r
1050 PLMN-IdentityE2 ::= OCTET STRING (SIZE(3))\r
1051 \r
1052 -- Q\r
1053 -- R\r
1054 -- **************************************************************\r
1055 -- Following IE defined in E2SM\r
1056 -- **************************************************************\r
1057 RANfunctionDefinition ::= OCTET STRING\r
1058 \r
1059 RANfunctionID ::= INTEGER (0..4095)\r
1060 \r
1061 RANfunctionRevision ::= INTEGER (0..4095)\r
1062 \r
1063 -- **************************************************************\r
1064 -- Following IE defined in E2SM\r
1065 -- **************************************************************\r
1066 RICactionDefinition ::= OCTET STRING\r
1067 \r
1068 RICactionID ::= INTEGER (0..255)\r
1069 \r
1070 RICactionType ::= ENUMERATED{\r
1071         report,\r
1072         insert,\r
1073         policy,\r
1074         ...\r
1075 }\r
1076 \r
1077 -- **************************************************************\r
1078 -- Following IE defined in E2SM\r
1079 -- **************************************************************\r
1080 RICcallProcessID ::= OCTET STRING\r
1081 \r
1082 RICcontrolAckRequest ::= ENUMERATED{\r
1083         noAck,\r
1084         ack,\r
1085         nAck,\r
1086         ...\r
1087 }\r
1088 \r
1089 -- **************************************************************\r
1090 -- Following IE defined in E2SM\r
1091 -- **************************************************************\r
1092 RICcontrolHeader ::= OCTET STRING\r
1093 \r
1094 -- **************************************************************\r
1095 -- Following IE defined in E2SM\r
1096 -- **************************************************************\r
1097 RICcontrolMessage ::= OCTET STRING\r
1098 \r
1099 -- **************************************************************\r
1100 -- Following IE defined in E2SM\r
1101 -- **************************************************************\r
1102 RICcontrolOutcome ::= OCTET STRING\r
1103 \r
1104 RICcontrolStatus ::= ENUMERATED{\r
1105         success,\r
1106         rejected,\r
1107         failed,\r
1108         ...\r
1109 }\r
1110 \r
1111 -- **************************************************************\r
1112 -- Following IE defined in E2SM\r
1113 -- **************************************************************\r
1114 RICeventTriggerDefinition ::= OCTET STRING\r
1115 \r
1116 -- **************************************************************\r
1117 -- Following IE defined in E2SM\r
1118 -- **************************************************************\r
1119 RICindicationHeader ::= OCTET STRING\r
1120 \r
1121 -- **************************************************************\r
1122 -- Following IE defined in E2SM\r
1123 -- **************************************************************\r
1124 RICindicationMessage ::= OCTET STRING\r
1125 \r
1126 RICindicationSN ::= INTEGER (0..65535)\r
1127 \r
1128 RICindicationType ::= ENUMERATED{\r
1129         report,\r
1130         insert,\r
1131         ...\r
1132 }\r
1133 \r
1134 RICrequestID ::= SEQUENCE {\r
1135         ricRequestorID                          INTEGER (0..65535),\r
1136         ricInstanceID   INTEGER (0..65535),\r
1137         ...\r
1138 }\r
1139 \r
1140 RICsubsequentAction ::=SEQUENCE{\r
1141         ricSubsequentActionType         RICsubsequentActionType,\r
1142         ricTimeToWait                           RICtimeToWait,\r
1143         ...\r
1144 }\r
1145 \r
1146 RICsubsequentActionType ::= ENUMERATED{\r
1147         continue,\r
1148         wait,\r
1149         ...\r
1150 }\r
1151 \r
1152 RICtimeToWait ::= ENUMERATED{\r
1153         zero,\r
1154         w1ms,\r
1155         w2ms,\r
1156         w5ms,\r
1157         w10ms,\r
1158         w20ms,\r
1159         w30ms,\r
1160         w40ms,\r
1161         w50ms,\r
1162         w100ms,\r
1163         w200ms,\r
1164         w500ms,\r
1165         w1s,\r
1166         w2s,\r
1167         w5s,\r
1168         w10s,\r
1169         w20s,\r
1170         w60s,\r
1171         ...\r
1172 }\r
1173 -- S\r
1174 -- T\r
1175 -- **************************************************************\r
1176 -- copied from 3GPP 38.413 NGAP IEs v15.5.0\r
1177 -- **************************************************************\r
1178 TimeToWaitE2 ::= ENUMERATED {v1s, v2s, v5s, v10s, v20s, v60s, ...}\r
1179 \r
1180 -- **************************************************************\r
1181 -- copied from 3GPP 38.413 NGAP IEs v15.5.0\r
1182 -- **************************************************************\r
1183 TypeOfErrorE2 ::= ENUMERATED {\r
1184         not-understood,\r
1185         missing,\r
1186         ...\r
1187 }\r
1188 \r
1189 -- U\r
1190 -- V\r
1191 -- W\r
1192 -- X\r
1193 -- Y\r
1194 -- Z\r
1195 \r
1196 END\r
1197 -- ASN1STOP\r
1198 \r
1199 -- ASN1START\r
1200 -- **************************************************************\r
1201 -- \r
1202 -- Common definitions\r
1203 -- Derived from 3GPP 38.413 v15.4.0\r
1204 --\r
1205 -- **************************************************************\r
1206 \r
1207 E2AP-CommonDataTypes {\r
1208 iso(1) identified-organization(3) dod(6) internet(1) private(4) enterprise(1) 53148 e2(1) version1 (1) e2ap(1) e2ap-CommonDataTypes (3) }\r
1209 \r
1210 DEFINITIONS AUTOMATIC TAGS ::= \r
1211 \r
1212 BEGIN\r
1213 \r
1214 CriticalityE2           ::= ENUMERATED { reject, ignore, notify }\r
1215 \r
1216 PresenceE2              ::= ENUMERATED { optional, conditional, mandatory }\r
1217 \r
1218 ProcedureCodeE2 ::= INTEGER (0..255)\r
1219 \r
1220 ProtocolIE-IDE2         ::= INTEGER (0..65535)\r
1221 \r
1222 TriggeringMessageE2     ::= ENUMERATED { initiating-message, successful-outcome, unsuccessfull-outcome }\r
1223 \r
1224 END\r
1225 -- ASN1STOP\r
1226 \r
1227 -- ASN1START\r
1228 -- **************************************************************\r
1229 --\r
1230 -- Constant definitions\r
1231 --\r
1232 -- **************************************************************\r
1233 \r
1234 E2AP-Constants {\r
1235 iso(1) identified-organization(3) dod(6) internet(1) private(4) enterprise(1) 53148 e2(1) version1 (1) e2ap(1) e2ap-Constants (4) }\r
1236 \r
1237 DEFINITIONS AUTOMATIC TAGS ::= \r
1238 \r
1239 BEGIN\r
1240 \r
1241 IMPORTS\r
1242         ProcedureCodeE2,\r
1243         ProtocolIE-IDE2\r
1244 FROM E2AP-CommonDataTypes;\r
1245 \r
1246 -- **************************************************************\r
1247 --\r
1248 -- Elementary Procedures\r
1249 -- \r
1250 -- **************************************************************\r
1251 id-E2setup                                                                      ProcedureCodeE2 ::= 1\r
1252 id-ErrorIndicationE2                                                    ProcedureCodeE2 ::= 2\r
1253 id-Reset                                                                        ProcedureCodeE2 ::= 3\r
1254 id-RICcontrol                                                           ProcedureCodeE2 ::= 4\r
1255 id-RICindication                                                        ProcedureCodeE2 ::= 5\r
1256 id-RICserviceQuery                                                      ProcedureCodeE2 ::= 6\r
1257 id-RICserviceUpdate                                                     ProcedureCodeE2 ::= 7\r
1258 id-RICsubscription                                                      ProcedureCodeE2 ::= 8\r
1259 id-RICsubscriptionDelete                                        ProcedureCodeE2 ::= 9\r
1260 \r
1261 -- **************************************************************\r
1262 --\r
1263 -- Extension constants\r
1264 --\r
1265 -- **************************************************************\r
1266 \r
1267 maxProtocolIEs                                                          INTEGER ::= 65535\r
1268 \r
1269 \r
1270 -- **************************************************************\r
1271 --\r
1272 -- Lists\r
1273 -- \r
1274 -- **************************************************************\r
1275 maxnoofErrors                                                           INTEGER ::= 256\r
1276 maxofRANfunctionID                                                      INTEGER ::= 256\r
1277 maxofRICactionID                                                        INTEGER ::= 16\r
1278 \r
1279 -- **************************************************************\r
1280 --\r
1281 -- IEs\r
1282 -- \r
1283 -- **************************************************************\r
1284 id-CauseE2                                                                      ProtocolIE-IDE2 ::= 1\r
1285 id-CriticalityDiagnosticsE2                                     ProtocolIE-IDE2 ::= 2\r
1286 id-GlobalE2node-ID                                                      ProtocolIE-IDE2 ::= 3\r
1287 id-GlobalRIC-ID                                                         ProtocolIE-IDE2 ::= 4\r
1288 id-RANfunctionID                                                        ProtocolIE-IDE2 ::= 5\r
1289 id-RANfunctionID-Item                                           ProtocolIE-IDE2 ::= 6\r
1290 id-RANfunctionIEcause-Item                                      ProtocolIE-IDE2 ::= 7\r
1291 id-RANfunction-Item                                                     ProtocolIE-IDE2 ::= 8\r
1292 id-RANfunctionsAccepted                                         ProtocolIE-IDE2 ::= 9\r
1293 id-RANfunctionsAdded                                            ProtocolIE-IDE2 ::= 10\r
1294 id-RANfunctionsDeleted                                          ProtocolIE-IDE2 ::= 11\r
1295 id-RANfunctionsModified                                         ProtocolIE-IDE2 ::= 12\r
1296 id-RANfunctionsRejected                                         ProtocolIE-IDE2 ::= 13\r
1297 id-RICaction-Admitted-Item                                      ProtocolIE-IDE2 ::= 14\r
1298 id-RICactionID                                                          ProtocolIE-IDE2 ::= 15\r
1299 id-RICaction-NotAdmitted-Item                           ProtocolIE-IDE2 ::= 16\r
1300 id-RICactions-Admitted                                          ProtocolIE-IDE2 ::= 17\r
1301 id-RICactions-NotAdmitted                                       ProtocolIE-IDE2 ::= 18\r
1302 id-RICaction-ToBeSetup-Item                                     ProtocolIE-IDE2 ::= 19\r
1303 id-RICcallProcessID                                                     ProtocolIE-IDE2 ::= 20\r
1304 id-RICcontrolAckRequest                                         ProtocolIE-IDE2 ::= 21\r
1305 id-RICcontrolHeader                                                     ProtocolIE-IDE2 ::= 22\r
1306 id-RICcontrolMessage                                            ProtocolIE-IDE2 ::= 23\r
1307 id-RICcontrolStatus                                                     ProtocolIE-IDE2 ::= 24\r
1308 id-RICindicationHeader                                          ProtocolIE-IDE2 ::= 25\r
1309 id-RICindicationMessage                                         ProtocolIE-IDE2 ::= 26\r
1310 id-RICindicationSN                                                      ProtocolIE-IDE2 ::= 27\r
1311 id-RICindicationType                                            ProtocolIE-IDE2 ::= 28\r
1312 id-RICrequestID                                                         ProtocolIE-IDE2 ::= 29\r
1313 id-RICsubscriptionDetails                                       ProtocolIE-IDE2 ::= 30\r
1314 id-TimeToWaitE2                                                         ProtocolIE-IDE2 ::= 31\r
1315 id-RICcontrolOutcome                                            ProtocolIE-IDE2 ::= 32\r
1316 \r
1317 \r
1318 END\r
1319 -- ASN1STOP\r
1320 \r
1321 -- ASN1START\r
1322 -- **************************************************************\r
1323 -- \r
1324 -- Container definitions\r
1325 --\r
1326 -- derived from 3GPP 38.413 v15.4.0\r
1327 -- **************************************************************\r
1328 \r
1329 E2AP-Containers {\r
1330 iso(1) identified-organization(3) dod(6) internet(1) private(4) enterprise(1) 53148 e2(1) version1 (1) e2ap(1) e2ap-Containers (5) }\r
1331 \r
1332 DEFINITIONS AUTOMATIC TAGS ::= \r
1333 \r
1334 BEGIN\r
1335 \r
1336 -- **************************************************************\r
1337 --\r
1338 -- IE parameter types from other modules.\r
1339 --\r
1340 -- **************************************************************\r
1341 \r
1342 IMPORTS\r
1343 \r
1344         CriticalityE2,\r
1345         PresenceE2,\r
1346         PrivateIE-ID,\r
1347         ProtocolExtensionID,\r
1348         ProtocolIE-IDE2\r
1349 FROM E2AP-CommonDataTypes\r
1350 \r
1351         maxProtocolIEs\r
1352 FROM E2AP-Constants;\r
1353 \r
1354 -- **************************************************************\r
1355 --\r
1356 -- Class Definition for Protocol IEs\r
1357 --\r
1358 -- **************************************************************\r
1359 \r
1360 E2AP-PROTOCOL-IES ::= CLASS {\r
1361         &id                             ProtocolIE-IDE2                                 UNIQUE,\r
1362         &criticality    CriticalityE2,\r
1363         &Value,\r
1364         &presence               PresenceE2\r
1365 }\r
1366 WITH SYNTAX {\r
1367         ID                              &id\r
1368         CRITICALITY             &criticality\r
1369         TYPE                    &Value\r
1370         PRESENCE                &presence\r
1371 }\r
1372 \r
1373 -- **************************************************************\r
1374 --\r
1375 -- Class Definition for Protocol IEs\r
1376 --\r
1377 -- **************************************************************\r
1378 \r
1379 E2AP-PROTOCOL-IES-PAIR ::= CLASS {\r
1380         &id                                     ProtocolIE-IDE2                         UNIQUE,\r
1381         &firstCriticality       CriticalityE2,\r
1382         &FirstValue,\r
1383         &secondCriticality      CriticalityE2,\r
1384         &SecondValue,\r
1385         &presence                       PresenceE2\r
1386 }\r
1387 WITH SYNTAX {\r
1388         ID                                              &id\r
1389         FIRST CRITICALITY               &firstCriticality\r
1390         FIRST TYPE                              &FirstValue\r
1391         SECOND CRITICALITY              &secondCriticality\r
1392         SECOND TYPE                             &SecondValue\r
1393         PRESENCE                                &presence\r
1394 }\r
1395 \r
1396 \r
1397 \r
1398 \r
1399 -- **************************************************************\r
1400 --\r
1401 -- Container for Protocol IEs\r
1402 --\r
1403 -- **************************************************************\r
1404 \r
1405 ProtocolIE-ContainerE2 {E2AP-PROTOCOL-IES : IEsSetParam} ::= \r
1406         SEQUENCE (SIZE (0..maxProtocolIEs)) OF\r
1407         ProtocolIE-FieldE2 {{IEsSetParam}}\r
1408 \r
1409 ProtocolIE-SingleContainerE2 {E2AP-PROTOCOL-IES : IEsSetParam} ::= \r
1410         ProtocolIE-FieldE2 {{IEsSetParam}}\r
1411 \r
1412 ProtocolIE-FieldE2 {E2AP-PROTOCOL-IES : IEsSetParam} ::= SEQUENCE {\r
1413         id                              E2AP-PROTOCOL-IES.&id                           ({IEsSetParam}),\r
1414         criticality             E2AP-PROTOCOL-IES.&criticality          ({IEsSetParam}{@id}),\r
1415         value                   E2AP-PROTOCOL-IES.&Value                        ({IEsSetParam}{@id})\r
1416 }\r
1417 \r
1418 -- **************************************************************\r
1419 --\r
1420 -- Container for Protocol IE Pairs\r
1421 --\r
1422 -- **************************************************************\r
1423 \r
1424 ProtocolIE-ContainerPairE2 {E2AP-PROTOCOL-IES-PAIR : IEsSetParam} ::= \r
1425         SEQUENCE (SIZE (0..maxProtocolIEs)) OF\r
1426         ProtocolIE-FieldPairE2 {{IEsSetParam}}\r
1427 \r
1428 ProtocolIE-FieldPairE2 {E2AP-PROTOCOL-IES-PAIR : IEsSetParam} ::= SEQUENCE {\r
1429         id                                      E2AP-PROTOCOL-IES-PAIR.&id                                      ({IEsSetParam}),\r
1430         firstCriticality        E2AP-PROTOCOL-IES-PAIR.&firstCriticality        ({IEsSetParam}{@id}),\r
1431         firstValue                      E2AP-PROTOCOL-IES-PAIR.&FirstValue                      ({IEsSetParam}{@id}),\r
1432         secondCriticality       E2AP-PROTOCOL-IES-PAIR.&secondCriticality       ({IEsSetParam}{@id}),\r
1433         secondValue                     E2AP-PROTOCOL-IES-PAIR.&SecondValue                     ({IEsSetParam}{@id})\r
1434 }\r
1435 \r
1436 -- **************************************************************\r
1437 --\r
1438 -- Container Lists for Protocol IE Containers\r
1439 --\r
1440 -- **************************************************************\r
1441 \r
1442 ProtocolIE-ContainerList {INTEGER : lowerBound, INTEGER : upperBound, E2AP-PROTOCOL-IES : IEsSetParam} ::=\r
1443         SEQUENCE (SIZE (lowerBound..upperBound)) OF\r
1444         ProtocolIE-SingleContainerE2 {{IEsSetParam}}\r
1445 \r
1446 ProtocolIE-ContainerPairList {INTEGER : lowerBound, INTEGER : upperBound, E2AP-PROTOCOL-IES-PAIR : IEsSetParam} ::=\r
1447         SEQUENCE (SIZE (lowerBound..upperBound)) OF\r
1448         ProtocolIE-ContainerPairE2 {{IEsSetParam}}\r
1449 \r
1450 \r
1451 END\r
1452 -- ASN1STOP\r