aboutsummaryrefslogtreecommitdiffstats
path: root/asn1/hnbap/HNBAP-PDU-Descriptions.asn
blob: 43d739875f1bba7d708867472d0c4b850e08dc9c (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
-- HNBAP-PDU-Descriptions.asn
--
-- 3GPP TS 25.469 V8.4.0 (2009-12)
-- http://www.3gpp.org/ftp/Specs/html-info/25469.htm
--
-- 9.3.2	Elementary Procedure definitions
--
-- $Id$
--

-- **************************************************************
--
-- Elementary Procedure definitions
--
-- **************************************************************
HNBAP-PDU-Descriptions  { 
itu-t (0) identified-organization (4) etsi (0) mobileDomain (0) 
umts-Access (20) modules (3) hnbap(6) version1 (1) hnbap-PDU-Descriptions (0)}

DEFINITIONS AUTOMATIC TAGS ::= 

BEGIN

-- **************************************************************
--
-- IE parameter types from other modules.
--
-- **************************************************************

IMPORTS
	Criticality,
	ProcedureCode
FROM HNBAP-CommonDataTypes

	HNBRegisterRequest,
	HNBRegisterAccept,
	HNBRegisterReject,
	HNBDe-Register,
	UERegisterRequest,
	UERegisterAccept,
	UERegisterReject,
	UEDe-Register,
	ErrorIndication,
	PrivateMessage

FROM HNBAP-PDU-Contents
	id-HNBRegister,
	id-UERegister,
	id-UEDe-Register,
	id-HNBDe-Register,
	id-ErrorIndication,
	id-privateMessage
FROM HNBAP-Constants;

-- **************************************************************
--
-- Interface Elementary Procedure Class
--
-- **************************************************************

HNBAP-ELEMENTARY-PROCEDURE ::= CLASS {
	&InitiatingMessage			,
	&SuccessfulOutcome			OPTIONAL,
	&UnsuccessfulOutcome		OPTIONAL,
	&procedureCode				ProcedureCode 	UNIQUE,
	&criticality				Criticality 	DEFAULT ignore
}

WITH SYNTAX {
	INITIATING MESSAGE			&InitiatingMessage
	[SUCCESSFUL OUTCOME			&SuccessfulOutcome]
	[UNSUCCESSFUL OUTCOME		&UnsuccessfulOutcome]
	PROCEDURE CODE				&procedureCode
	[CRITICALITY				&criticality]
}

-- **************************************************************
--
-- Interface PDU definitions
--
-- **************************************************************

HNBAP-PDU ::= CHOICE {
	initiatingMessage		InitiatingMessage,
	successfulOutcome		SuccessfulOutcome,
	unsuccessfulOutcome		UnsuccessfulOutcome,
	...
}


InitiatingMessage ::= SEQUENCE {
	procedureCode	HNBAP-ELEMENTARY-PROCEDURE.&procedureCode		({HNBAP-ELEMENTARY-PROCEDURES}),
	criticality		HNBAP-ELEMENTARY-PROCEDURE.&criticality			({HNBAP-ELEMENTARY-PROCEDURES}{@procedureCode}),
	value			HNBAP-ELEMENTARY-PROCEDURE.&InitiatingMessage	({HNBAP-ELEMENTARY-PROCEDURES}{@procedureCode})
}

SuccessfulOutcome ::= SEQUENCE {
	procedureCode	HNBAP-ELEMENTARY-PROCEDURE.&procedureCode		({HNBAP-ELEMENTARY-PROCEDURES}),
	criticality		HNBAP-ELEMENTARY-PROCEDURE.&criticality			({HNBAP-ELEMENTARY-PROCEDURES}{@procedureCode}),
	value			HNBAP-ELEMENTARY-PROCEDURE.&SuccessfulOutcome	({HNBAP-ELEMENTARY-PROCEDURES}{@procedureCode})
}

UnsuccessfulOutcome ::= SEQUENCE {
	procedureCode	HNBAP-ELEMENTARY-PROCEDURE.&procedureCode		({HNBAP-ELEMENTARY-PROCEDURES}),
	criticality		HNBAP-ELEMENTARY-PROCEDURE.&criticality			({HNBAP-ELEMENTARY-PROCEDURES}{@procedureCode}),
	value			HNBAP-ELEMENTARY-PROCEDURE.&UnsuccessfulOutcome	({HNBAP-ELEMENTARY-PROCEDURES}{@procedureCode})
}

-- **************************************************************
--
-- Interface Elementary Procedure List
--
-- **************************************************************

HNBAP-ELEMENTARY-PROCEDURES HNBAP-ELEMENTARY-PROCEDURE ::= {
	HNBAP-ELEMENTARY-PROCEDURES-CLASS-1	|
	HNBAP-ELEMENTARY-PROCEDURES-CLASS-2	,
	...
}

HNBAP-ELEMENTARY-PROCEDURES-CLASS-1 HNBAP-ELEMENTARY-PROCEDURE ::= {
	hNBRegister|
	uERegister,
	...
}


HNBAP-ELEMENTARY-PROCEDURES-CLASS-2 HNBAP-ELEMENTARY-PROCEDURE ::= {
	uEDe-Register |
	hNBDe-Register |
	errorIndication	|
	privateMessage,
	...
}

-- **************************************************************
--
-- Interface Elementary Procedures
--
-- **************************************************************


hNBRegister HNBAP-ELEMENTARY-PROCEDURE ::= {
	INITIATING MESSAGE		HNBRegisterRequest
	SUCCESSFUL OUTCOME		HNBRegisterAccept
	UNSUCCESSFUL OUTCOME	HNBRegisterReject
	PROCEDURE CODE			id-HNBRegister
	CRITICALITY				reject
}

uERegister HNBAP-ELEMENTARY-PROCEDURE ::= {
	INITIATING MESSAGE		UERegisterRequest
	SUCCESSFUL OUTCOME		UERegisterAccept
	UNSUCCESSFUL OUTCOME	UERegisterReject
	PROCEDURE CODE			id-UERegister
	CRITICALITY				reject
}

uEDe-Register HNBAP-ELEMENTARY-PROCEDURE ::= {
	INITIATING MESSAGE		UEDe-Register
	PROCEDURE CODE			id-UEDe-Register
	CRITICALITY				ignore
}

hNBDe-Register HNBAP-ELEMENTARY-PROCEDURE ::= {
	INITIATING MESSAGE		HNBDe-Register
	PROCEDURE CODE			id-HNBDe-Register
	CRITICALITY				ignore
}

errorIndication HNBAP-ELEMENTARY-PROCEDURE ::= {
	INITIATING MESSAGE		ErrorIndication
	PROCEDURE CODE			id-ErrorIndication
	CRITICALITY				ignore
}

privateMessage HNBAP-ELEMENTARY-PROCEDURE ::= {
	INITIATING MESSAGE		PrivateMessage
	PROCEDURE CODE			id-privateMessage
	CRITICALITY				ignore
}

END