1
-- module(Mvrasn-DataTypes-1).
2
-- vsn('%CCaseRev: %').
3
-- date('%CCaseDate: %').
5
-- =============================================================================
7
-- =============================================================================
9
-- Title : "MAP Data Types".
11
-- ASN.1 module: "MAP-DataTypes".
13
-- =============================================================================
15
-- =============================================================================
19
-- In GSM 09.02 v. 6.1.0 all ASN.1 modules have 'Object Identifier' included
20
-- to indicate these modules uniquely. To have a same kind of definite naming
21
-- convention, parts of the these 'Object Identifier' have been included in
22
-- the file names that store the respective ASN.1 modules.
24
-- Therefore, the file name "Mvrasn-20-4.asn" indicates moduls '20' in
25
-- version '4' (PHASE 3).
27
-- As there is no such 'Object Identifier' in GSM 09.02 v. 3.11.0,
28
-- the names for the ASN.1 files of the ASN.1 modules from
29
-- this standard version are selected by the author. They are chosen the way
30
-- that they are indicating the relation to those modules
31
-- from GSM 09.02 v. 3.11.0.
33
-- =============================================================================
35
-- ==============================================================
37
-- ==============================================================
39
-- .... ....... ....... ........................................
40
-- PA1 981014 eedkbu First draft, based on GSM 09.02 v. 3.11.0.
41
-- ..............................................................
42
-- PA2 990114 etord Included Reset operation
43
-- ..............................................................
54
-- imports upper boundaries for data types
56
maxNumberOfTeleServices,
57
maxNumberOfBearerServices,
58
maxNumberOfSupplServices,
60
maxNumberOfForwardingFeatures,
61
maxNumberOfCallBarringFeatures,
64
maxNumberOfSentParameters
65
FROM Mvrasn-Constants-1
70
-- =========================================================
74
-- The data type "SendParameterArg" and "ResetArg" are not given in the
75
-- original GSM 09.02 v. 3.11.0 standard, but have been
76
-- introduced here for two reasons:
78
-- 1. In the OPERATION MACRO "SendParameters" is a PARAMETER (=ARGument) and
79
-- a RESULT defined. The ASN.1 en/decoder is not able to handle
80
-- the MACRO definition. Therefore, the new data type has been
83
-- 2. To align the documentation of the ASN.1 data types in
84
-- GSM 09.02 v. 3.11.0 with those of GSM 09.02 v. 6.1.0.
86
-- =========================================================
88
SendParametersArg ::= SEQUENCE {
89
subscriberId SubscriberId,
90
requestParameters RequestParameters
93
ResetArg ::= SEQUENCE {
94
networkResource NetworkResource,
95
originatingEntityNumber IsdnAddressString,
96
hlrId HlrList OPTIONAL
102
SentParameters ::= SEQUENCE
103
SIZE(1..maxNumberOfSentParameters)
107
TBCD-STRING ::= OCTET STRING
108
-- digits 0 through 9, two digits per octet,
109
-- each digit encoded 0000 to 1001,
110
-- 1111 used as filler when there is an odd number of digit.
113
AddressString ::= OCTET STRING (SIZE (1..maxAddressLength))
114
-- see internal description in section 6.4.1
116
IsdnAddressString ::= AddressString (SIZE (1..10))
118
IMSI ::= TBCD-STRING (SIZE (2..8))
119
-- MCC, MNC, MSIN concatenated in this order
121
TMSI ::= OCTET STRING (SIZE (1..4))
124
SubscriberId ::= CHOICE {
125
imsi [0] IMPLICIT IMSI,
126
tmsi [1] IMPLICIT TMSI}
129
-- data types for numbering and identification
132
-- leading digits of IMSI
135
SIZE(1.. maxNumberOfHlrId)
139
-- data types for subscriber management
142
Category ::= OCTET STRING (SIZE (1))
143
-- internal structure defined in CCITT Rec Q.763
145
BearerServiceCode ::= OCTET STRING (SIZE (1))
146
-- Internal structure according to table 6.4/1
147
-- BIT 8 Transparency indicator (if applicable)
151
-- BIT 7654 Bearer service group
152
-- 0001 3.1 kHz ex PLMN
153
-- 0010 Circuit data asynchronous
154
-- 0011 Circuit data synchronous
155
-- 0100 PAD access c.d.a
156
-- 0101 Packet data synchrounous
157
-- 0110 Alternate speech/c.d.a
158
-- 0111 Alternate speech c.d.s
159
-- 1000 Speech followed by data c.d.a
160
-- 1001 Speech followed by data c.d.s
161
-- 1111 12.6 kb/s unrestricted digital
163
-- BIT 321 Rate (when applicable)
173
-- Bits 321 = 000 can be used to refer to all
174
-- the bearer services of the corresponding group.
175
-- Value "00000000" can be used to refer to all the defined
177
-- For the codes referring to a group or all bearer services
178
-- the Transparency Indicator is not applicable and has to be set to "0"
181
BearerServiceList ::= SEQUENCE
182
SIZE(1 .. maxNumberOfBearerServices)
186
TeleserviceCode ::= OCTET STRING (SIZE (1))
187
-- Internal structure according to table 6.4/2
188
-- Bit 8-5 encode the teleservice group
190
-- Bit 4-1 = 0000 can be used to refer to all the
191
-- teleservices of the corresponding group.
192
-- Value "00000000" can be used to refer to all the defined
195
TeleserviceList ::= SEQUENCE
196
SIZE(1 .. maxNumberOfTeleServices)
200
BasicServiceCode ::= CHOICE {
201
bearerService [2] IMPLICIT BearerServiceCode,
202
teleservice [3] IMPLICIT TeleserviceCode}
205
SubscriberStatus ::= ENUMERATED{
207
operatorOGCallBarring (1)}
209
-- Data types for supplementary services
211
SS-Code ::= OCTET STRING (SIZE(1))
212
-- Internal structure according to
215
-- 0001 Number Identification services
216
-- 0010 Forwarding services
217
-- 0011 Call offering services
218
-- 0100 Call completion services
219
-- 0101 Multi-party services
220
-- 0110 Community of interest services
221
-- 0111 Charging services
222
-- 1000 Additional information transfer services
223
-- 1001 Call restriction services
224
-- Bit 4-1 = 0000 can be use to refer to
225
-- a group of supplementary services
226
-- eg, "00100000" can be used to refer to all
227
-- forwarding services
228
-- "00101000" can be used to refer to all
229
-- conditional forwarding services
230
-- "00000000" can be used to refer to all
231
-- supplementary services
233
SS-Status ::= OCTET STRING (SIZE (1))
235
-- Bit 3 Provision indicator
236
-- 0 : Not provisioned
238
-- Bit 2 Registration indicator (if applicable)
239
-- 0 : Not Registered
241
-- Bit 1 Activation indicator (If applicable)
245
SS-Information ::= CHOICE{
246
forwardingInfo [0] IMPLICIT ForwardingInfo,
247
callBarringInfo [1] IMPLICIT CallBarringInfo,
248
cug-Information [2] IMPLICIT CUG-Information,
249
ss-Data [3] IMPLICIT SS-Data}
251
SS-InfoList ::= SEQUENCE
252
SIZE(1 .. maxNumberOfSupplServices)
257
SS-Data ::= SEQUENCE{
259
ss-Status [4] IMPLICIT SS-Status OPTIONAL,
260
ss-SubscriptionOption SS-SubscriptionOption OPTIONAL}
262
SS-SubscriptionOption ::= CHOICE{
263
perCallBasis [5] IMPLICIT BOOLEAN,
264
notificationToHeldRetrievedParty [6] IMPLICIT BOOLEAN,
265
userToUserServiceIndicator [7] IMPLICIT UserToUserServiceIndicator,
266
maximumConfereesNumber [8] IMPLICIT MaximumConfereesNumber,
267
huntGroupAccessSelectionOrder [9] IMPLICIT HuntGroupAccessSelectionOrder}
271
ForwardingOptions ::= OCTET STRING (SIZE(1))
272
-- Bit 8-7 Notification to forwarding party
273
-- 00 No notification
274
-- 01 notification with calling number identity
275
-- 10 notification without calling number identity
276
-- Bit 6-5 Notification to calling party
277
-- 00 No notification
278
-- 01 Notification with forwarded-to number
279
-- 10 Notification without forwarded-to number
282
UserToUserServiceIndicator ::= OCTET STRING (SIZE(1))
286
-- Bit 5-1 : Reserved
287
-- Bit 8 to 6 coded "1" if the service
288
-- is available to the subscriber
291
MaximumConfereesNumber ::= INTEGER (1..10)
295
HuntGroupAccessSelectionOrder ::= ENUMERATED{
300
NoReplyConditionTime ::= INTEGER (5..30)
303
CUG-Facilities ::= OCTET STRING (SIZE (1))
304
-- Bit 8-3 000000 (Unused)
306
-- 00 CUG only facilities
307
-- 01 CUG with outgoing access
308
-- 10 CUG with incoming access
309
-- 11 CUG with both outgoing and incoming access
311
CUG-Interlock ::= OCTET STRING (SIZE (4))
312
-- Internal structure defined in Rec CCITT Q.763
314
CUG-Index ::= OCTET STRING (SIZE (1))
315
-- Internal structure defined in Rec CCITT Q.763
317
CUG-Options ::= OCTET STRING (SIZE (1))
318
-- BIT 8-4 00000 (Unused)
319
-- BIT 3 preferential CUG indicator
321
-- 1 preferential CUG
322
-- BIT 2 barring of incoming calls within the CUG
325
-- BIT 1 barring of outgoing calls within the CUG
329
CUG-Feature ::= SEQUENCE {
330
cug-interlock CUG-Interlock,
332
cug-Options CUG-Options,
336
CUG-FeatureList ::= SEQUENCE SIZE (
337
1..maxNumberOfCUG) OF CUG-Feature
340
-- =========================================================
344
-- The original CUG-Information data type has been:
346
-- ------------------
348
-- CUG-Information ::= SEQUENCE{
349
-- cug-Facilities CUG-Facilities,
351
-- cug-Feature [0] IMPLICIT CUG-Feature,
352
-- cug-FeatureList [1] IMPLICIT CUG-FeatureList}}
353
-- the first alternative of the choice should be used
354
-- for the preferred CUG.
356
-- ------------------
358
-- This is incorrect ASN.1 notation! The CHOICE has also to be a named
359
-- type. Therefore, the definition was changed and can be seen below:
361
-- =========================================================
364
CUG-Information ::= SEQUENCE{
365
cug-Facilities CUG-Facilities,
366
cug-FeatureChoice CHOICE{
367
cug-Feature [0] IMPLICIT CUG-Feature,
368
cug-FeatureList [1] IMPLICIT CUG-FeatureList}}
369
-- the first alternative of the choice should be used
370
-- for the preferred CUG.
373
ForwardingInfo ::= SEQUENCE{
374
ss-Code SS-Code OPTIONAL,
375
forwardingFeatureList ForwardingFeatureList}
377
ForwardingFeature ::= SEQUENCE {
378
basicService BasicServiceCode OPTIONAL,
379
ss-Status [4] IMPLICIT SS-Status,
380
forwardedToNumber [5] IMPLICIT IsdnAddressString OPTIONAL,
381
forwardingOptions [6] IMPLICIT ForwardingOptions OPTIONAL,
382
noReplyConditionTime [7] IMPLICIT NoReplyConditionTime OPTIONAL}
384
ForwardingFeatureList ::= SEQUENCE SIZE (1.. maxNumberOfForwardingFeatures)
387
CallBarringInfo ::= SEQUENCE {
389
callBarringFeatureList CallBarringFeatureList}
391
CallBarringFeature ::= SEQUENCE{
392
basicServiceCode BasicServiceCode OPTIONAL,
393
ss-Status [4] IMPLICIT SS-Status }
395
CallBarringFeatureList ::= SEQUENCE SIZE (1.. maxNumberOfCallBarringFeatures)
396
OF CallBarringFeature
398
SubscriberData ::= SEQUENCE{
399
msIsdn [1] IMPLICIT IsdnAddressString OPTIONAL,
400
category [2] IMPLICIT Category OPTIONAL,
401
subscriberStatus [3] IMPLICIT SubscriberStatus OPTIONAL,
402
bearerServiceList [4] IMPLICIT BearerServiceList OPTIONAL,
403
teleserviceList [6] IMPLICIT TeleserviceList OPTIONAL,
404
provisonedSupplServices [7] IMPLICIT SS-InfoList OPTIONAL}
406
-- Data types for security procedures
408
AuthenticationSet ::= SEQUENCE {
414
Rand ::= OCTET STRING (SIZE (16))
416
Sres ::= OCTET STRING (SIZE (4))
418
Kc ::= OCTET STRING (SIZE (8))
420
Ki ::= OCTET STRING (SIZE (16))
423
-- Data types for fault recovery, call tracing
425
NetworkResource ::= ENUMERATED {
438
RequestParameter ::= ENUMERATED{
440
request-AuthenticationSet (1),
441
request-SubscriberData (2),
442
request-CUG-Information (3),
445
RequestParameters ::= SEQUENCE SIZE (1..2) OF RequestParameter
447
SentParameter ::= CHOICE{
448
imsi [0] IMPLICIT IMSI,
449
authenticationSet [1] IMPLICIT AuthenticationSet,
450
subscriberData [2] IMPLICIT SubscriberData,
451
cug-information [3] IMPLICIT CUG-Information,