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
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
|
-- module(Mvrasn-18-4).
-- vsn('%CCaseRev: %').
-- date('%CCaseDate: %').
-- author('eedkbu').
-- =============================================================================
-- =============================================================================
--
-- Title : "Common data types".
--
-- ASN.1 module: "MAP-CommonDataTypes".
--
-- =============================================================================
-- ==============================================================
-- #1. REVISION LOG
-- ==============================================================
-- Rev Date Name What
-- .... ....... ....... ........................................
-- PA1 981014 eedkbu First draft, based on GSM 09.02 v. 6.1.0.
-- ..............................................................
Mvrasn-18-4
DEFINITIONS
IMPLICIT TAGS
::=
BEGIN
EXPORTS
-- general data types and values
AddressString,
ISDN-AddressString,
maxISDN-AddressLength,
ISDN-SubaddressString,
-- ExternalSignalInfo,
LMSI,
-- data types for numbering and identification
IMSI,
NetworkResource,
NAEA-PreferredCI,
-- data types for subscriber management
Ext-BasicServiceCode,
EMLPP-Info
;
IMPORTS
ExtensionContainer
FROM Mvrasn-21-4
Ext-BearerServiceCode
FROM Mvrasn-20-4
Ext-TeleserviceCode
FROM Mvrasn-19-4
;
-- general data types
TBCD-STRING ::= OCTET STRING
-- This type (Telephony Binary Coded Decimal String) is used to
-- represent several digits from 0 through 9, *, #, a, b, c, two
-- digits per octet, each digit encoded 0000 to 1001 (0 to 9),
-- 1010 (*), 1011 (#), 1100 (a), 1101 (b) or 1110 (c); 1111 used
-- as filler when there is an odd number of digits.
-- bits 8765 of octet n encoding digit 2n
-- bits 4321 of octet n encoding digit 2(n-1) +1
AddressString ::= OCTET STRING (SIZE (1..maxAddressLength))
-- This type is used to represent a number for addressing
-- purposes. It is composed of
-- a) one octet for nature of address, and numbering plan
-- indicator.
-- b) digits of an address encoded as TBCD-String.
-- a) The first octet includes a one bit extension indicator, a
-- 3 bits nature of address indicator and a 4 bits numbering
-- plan indicator, encoded as follows:
-- bit 8: 1 (no extension)
-- bits 765: nature of address indicator
-- 000 unknown
-- 001 international number
-- 010 national significant number
-- 011 network specific number
-- 100 subscriber number
-- 101 reserved
-- 110 abbreviated number
-- 111 reserved for extension
-- bits 4321: numbering plan indicator
-- 0000 unknown
-- 0001 ISDN/Telephony Numbering Plan (Rec CCITT E.164)
-- 0010 spare
-- 0011 data numbering plan (CCITT Rec X.121)
-- 0100 telex numbering plan (CCITT Rec F.69)
-- 0101 spare
-- 0110 land mobile numbering plan (CCITT Rec E.212)
-- 0111 spare
-- 1000 national numbering plan
-- 1001 private numbering plan
-- 1111 reserved for extension
-- all other values are reserved.
-- b) The following octets representing digits of an address
-- encoded as a TBCD-STRING.
maxAddressLength INTEGER ::= 20
ISDN-AddressString ::=
AddressString (SIZE (1..maxISDN-AddressLength))
-- This type is used to represent ISDN numbers.
maxISDN-AddressLength INTEGER ::= 9
ISDN-SubaddressString ::=
OCTET STRING (SIZE (1..maxISDN-SubaddressLength))
-- This type is used to represent ISDN subaddresses.
-- It is composed of
-- a) one octet for type of subaddress and odd/even indicator.
-- b) 20 octets for subaddress information.
-- a) The first octet includes a one bit extension indicator, a
-- 3 bits type of subaddress and a one bit odd/even indicator,
-- encoded as follows:
-- bit 8: 1 (no extension)
-- bits 765: type of subaddress
-- 000 NSAP (X.213/ISO 8348 AD2)
-- 010 User Specified
-- All other values are reserved
-- bit 4: odd/even indicator
-- 0 even number of address signals
-- 1 odd number of address signals
-- The odd/even indicator is used when the type of subaddress
-- is "user specified" and the coding is BCD.
-- bits 321: 000 (unused)
-- b) Subaddress information.
-- The NSAP X.213/ISO8348AD2 address shall be formatted as specified
-- by octet 4 which contains the Authority and Format Identifier
-- (AFI). The encoding is made according to the "preferred binary
-- encoding" as defined in X.213/ISO834AD2. For the definition
-- of this type of subaddress, see CCITT Rec I.334.
-- For User-specific subaddress, this field is encoded according
-- to the user specification, subject to a maximum length of 20
-- octets. When interworking with X.25 networks BCD coding should
-- be applied.
maxISDN-SubaddressLength INTEGER ::= 21
-- data types for numbering and identification
IMSI ::= TBCD-STRING (SIZE (3..8))
-- digits of MCC, MNC, MSIN are concatenated in this order.
LMSI ::= OCTET STRING (SIZE (4))
NetworkResource ::= ENUMERATED {
plmn (0),
hlr (1),
vlr (2),
pvlr (3),
controllingMSC (4),
vmsc (5),
eir (6),
rss (7)}
NAEA-PreferredCI ::= SEQUENCE {
naea-PreferredCIC [0] NAEA-CIC,
extensionContainer [1] ExtensionContainer OPTIONAL,
...}
NAEA-CIC ::= OCTET STRING (SIZE (3))
-- The internal structure is defined by the Carrier Identification
-- parameter in ANSI T1.113.3. Carrier codes between "000" and "999" may
-- be encoded as 3 digits using "000" to "999" or as 4 digits using
-- "0000" to "0999". Carrier codes between "1000" and "9999" are encoded
-- using 4 digits.
-- data types for subscriber management
Ext-BasicServiceCode ::= CHOICE {
ext-BearerService [2] Ext-BearerServiceCode,
ext-Teleservice [3] Ext-TeleserviceCode}
EMLPP-Info ::= SEQUENCE {
maximumentitledPriority EMLPP-Priority,
defaultPriority EMLPP-Priority,
extensionContainer ExtensionContainer OPTIONAL,
...}
EMLPP-Priority ::= INTEGER (0..15)
-- The mapping from the values A,B,0,1,2,3,4 to the integer-value is
-- specified as follows where A is the highest and 4 is the lowest
-- priority level
-- the integer values 7-15 are spare and shall be mapped to value 4
END
|