17.7.8 Common data types
29.0023GPPMobile Application Part (MAP) specificationRelease 17TS
.$MAP-CommonDataTypes {
itu-t identified-organization (4) etsi (0) mobileDomain (0)
gsm-Network (1) modules (3) map-CommonDataTypes (18) version20 (20)}
DEFINITIONS
IMPLICIT TAGS
::=
BEGIN
EXPORTS
— general data types and values
AddressString,
ISDN-AddressString,
maxISDN-AddressLength,
FTN-AddressString,
ISDN-SubaddressString,
ExternalSignalInfo,
Ext-ExternalSignalInfo,
AccessNetworkSignalInfo,
SignalInfo,
maxSignalInfoLength,
AlertingPattern,
TBCD-STRING,
DiameterIdentity,
Time,
HLR-Id,
— data types for numbering and identification
IMSI,
TMSI,
Identity,
SubscriberId,
IMEI,
HLR-List,
LMSI,
GlobalCellId,
NetworkResource,
AdditionalNetworkResource,
NAEA-PreferredCI,
NAEA-CIC,
ASCI-CallReference,
SubscriberIdentity,
PLMN-Id,
E-UTRAN-CGI,
NR-CGI,
TA-Id,
NR-TA-Id,
RAIdentity,
NetworkNodeDiameterAddress,
— data types for CAMEL
CellGlobalIdOrServiceAreaIdOrLAI,
CellGlobalIdOrServiceAreaIdFixedLength,
LAIFixedLength,
— data types for subscriber management
BasicServiceCode,
Ext-BasicServiceCode,
EMLPP-Info,
EMLPP-Priority,
MC-SS-Info,
MaxMC-Bearers,
MC-Bearers,
Ext-SS-Status,
— data types for geographic location
AgeOfLocationInformation,
LCSClientExternalID,
LCSClientInternalID,
LCSServiceTypeID,
— gprs location registration types
GSN-Address
;
IMPORTS
TeleserviceCode,
Ext-TeleserviceCode
FROM MAP-TS-Code {
itu-t identified-organization (4) etsi (0) mobileDomain (0)
gsm-Network (1) modules (3) map-TS-Code (19) version20 (20)}
BearerServiceCode,
Ext-BearerServiceCode
FROM MAP-BS-Code {
itu-t identified-organization (4) etsi (0) mobileDomain (0)
gsm-Network (1) modules (3) map-BS-Code (20) version20 (20)}
SS-Code
FROM MAP-SS-Code {
itu-t identified-organization (4) etsi (0) mobileDomain (0)
gsm-Network (1) modules (3) map-SS-Code (15) version20 (20)}
ExtensionContainer
FROM MAP-ExtensionDataTypes {
itu-t identified-organization (4) etsi (0) mobileDomain (0)
gsm-Network (1) modules (3) map-ExtensionDataTypes (21) version20 (20)}
;
— 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
DiameterIdentity ::= OCTET STRING (SIZE(9..255))
— content of DiameterIdentity is defined in IETF RFC 3588 [139]
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 ITU-T E.164)
— 0010 spare
— 0011 data numbering plan (ITU-T Rec X.121)
— 0100 telex numbering plan (ITU-T Rec F.69)
— 0101 spare
— 0110 land mobile numbering plan (ITU-T 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
FTN-AddressString ::=
AddressString (SIZE (1..maxFTN-AddressLength))
— This type is used to represent forwarded-to numbers.
— If NAI = international the first digits represent the country code (CC)
— and the network destination code (NDC) as for E.164.
maxFTN-AddressLength INTEGER ::= 15
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 ITU-T 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
ExternalSignalInfo ::= SEQUENCE {
protocolId ProtocolId,
signalInfo SignalInfo,
— Information about the internal structure is given in
— clause 7.6.9.
extensionContainer ExtensionContainer OPTIONAL,
— extensionContainer must not be used in version 2
…}
SignalInfo ::= OCTET STRING (SIZE (1..maxSignalInfoLength))
maxSignalInfoLength INTEGER ::= 200
— This NamedValue represents the theoretical maximum number of octets which is
— available to carry a single instance of the SignalInfo data type,
— without requiring segmentation to cope with the network layer service.
— However, the actual maximum size available for an instance of the data
— type may be lower, especially when other information elements
— have to be included in the same component.
ProtocolId ::= ENUMERATED {
gsm-0408 (1),
gsm-0806 (2),
gsm-BSSMAP (3),
— Value 3 is reserved and must not be used
ets-300102-1 (4)}
Ext-ExternalSignalInfo ::= SEQUENCE {
ext-ProtocolId Ext-ProtocolId,
signalInfo SignalInfo,
— Information about the internal structure is given in
— clause 7.6.9.10
extensionContainer ExtensionContainer OPTIONAL,
…}
Ext-ProtocolId ::= ENUMERATED {
ets-300356 (1),
…
}
— exception handling:
— For Ext-ExternalSignalInfo sequences containing this parameter with any
— other value than the ones listed the receiver shall ignore the whole
— Ext-ExternalSignalInfo sequence.
AccessNetworkSignalInfo ::= SEQUENCE {
accessNetworkProtocolId AccessNetworkProtocolId,
signalInfo LongSignalInfo,
— Information about the internal structure is given in clause 7.6.9.1
extensionContainer ExtensionContainer OPTIONAL,
…}
LongSignalInfo ::= OCTET STRING (SIZE (1..maxLongSignalInfoLength))
maxLongSignalInfoLength INTEGER ::= 2560
— This Named Value represents the maximum number of octets which is available
— to carry a single instance of the LongSignalInfo data type using
— White Book SCCP with the maximum number of segments.
— It takes account of the octets used by the lower layers of the protocol, and
— other information elements which may be included in the same component.
AccessNetworkProtocolId ::= ENUMERATED {
ts3G-48006 (1),
ts3G-25413 (2),
…}
— exception handling:
— For AccessNetworkSignalInfo sequences containing this parameter with any
— other value than the ones listed the receiver shall ignore the whole
— AccessNetworkSignalInfo sequence.
AlertingPattern ::= OCTET STRING (SIZE (1) )
— This type is used to represent Alerting Pattern
— bits 8765 : 0000 (unused)
— bits 43 : type of Pattern
— 00 level
— 01 category
— 10 category
— all other values are reserved.
— bits 21 : type of alerting
alertingLevel-0 AlertingPattern ::= ‘00000000’B
alertingLevel-1 AlertingPattern ::= ‘00000001’B
alertingLevel-2 AlertingPattern ::= ‘00000010’B
— all other values of Alerting level are reserved
— Alerting Levels are defined in GSM 02.07
alertingCategory-1 AlertingPattern ::= ‘00000100’B
alertingCategory-2 AlertingPattern ::= ‘00000101’B
alertingCategory-3 AlertingPattern ::= ‘00000110’B
alertingCategory-4 AlertingPattern ::= ‘00000111’B
alertingCategory-5 AlertingPattern ::= ‘00001000’B
— all other values of Alerting Category are reserved
— Alerting categories are defined in GSM 02.07
GSN-Address ::= OCTET STRING (SIZE (5..17))
— Octets are coded according to TS 3GPP TS 23.003 [17]
Time ::= OCTET STRING (SIZE (4))
— Octets are coded according to IETF RFC 3588 [139]
— data types for numbering and identification
IMSI ::= TBCD-STRING (SIZE (3..8))
— digits of MCC, MNC, MSIN are concatenated in this order.
Identity ::= CHOICE {
imsi IMSI,
imsi-WithLMSI IMSI-WithLMSI}
IMSI-WithLMSI ::= SEQUENCE {
imsi IMSI,
lmsi LMSI,
— a special value 00000000 indicates that the LMSI is not in use
…}
ASCI-CallReference ::= TBCD-STRING (SIZE (1..8))
— digits of VGCS/VBS-area,Group-ID are concatenated in this order if there is a
— VGCS/VBS-area.
TMSI ::= OCTET STRING (SIZE (1..4))
SubscriberId ::= CHOICE {
imsi [0] IMSI,
tmsi [1] TMSI}
IMEI ::= TBCD-STRING (SIZE (8))
— Refers to International Mobile Station Equipment Identity
— and Software Version Number (SVN) defined in TS 3GPP TS 23.003 [17].
— If the SVN is not present the last octet shall contain the
— digit 0 and a filler.
— If present the SVN shall be included in the last octet.
HLR-Id ::= IMSI
— leading digits of IMSI, i.e. (MCC, MNC, leading digits of
— MSIN) forming HLR Id defined in TS 3GPP TS 23.003 [17].
HLR-List ::= SEQUENCE SIZE (1..maxNumOfHLR-Id) OF
HLR-Id
maxNumOfHLR-Id INTEGER ::= 50
LMSI ::= OCTET STRING (SIZE (4))
GlobalCellId ::= OCTET STRING (SIZE (5..7))
— Refers to Cell Global Identification defined in TS 3GPP TS 23.003 [17].
— The internal structure is defined as follows:
— octet 1 bits 4321 Mobile Country Code 1st digit
— bits 8765 Mobile Country Code 2nd digit
— octet 2 bits 4321 Mobile Country Code 3rd digit
— bits 8765 Mobile Network Code 3rd digit
— or filler (1111) for 2 digit MNCs
— octet 3 bits 4321 Mobile Network Code 1st digit
— bits 8765 Mobile Network Code 2nd digit
— octets 4 and 5 Location Area Code according to TS 3GPP TS 24.008 [35]
— octets 6 and 7 Cell Identity (CI) according to TS 3GPP TS 24.008 [35]
NetworkResource ::= ENUMERATED {
plmn (0),
hlr (1),
vlr (2),
pvlr (3),
controllingMSC (4),
vmsc (5),
eir (6),
rss (7)}
AdditionalNetworkResource ::= ENUMERATED {
sgsn (0),
ggsn (1),
gmlc (2),
gsmSCF (3),
nplr (4),
auc (5),
… ,
ue (6),
mme (7)}
— if unknown value is received in AdditionalNetworkResource
— it shall be ignored.
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.
SubscriberIdentity ::= CHOICE {
imsi [0] IMSI,
msisdn [1] ISDN-AddressString
}
LCSClientExternalID ::= SEQUENCE {
externalAddress [0] ISDN-AddressString OPTIONAL,
extensionContainer [1] ExtensionContainer OPTIONAL,
… }
LCSClientInternalID ::= ENUMERATED {
broadcastService (0),
o-andM-HPLMN (1),
o-andM-VPLMN (2),
anonymousLocation (3),
targetMSsubscribedService (4),
… }
— for a CAMEL phase 3 PLMN operator client, the value targetMSsubscribedService shall be used
LCSServiceTypeID ::= INTEGER (0..127)
— the integer values 0-63 are reserved for Standard LCS service types
— the integer values 64-127 are reserved for Non Standard LCS service types
— Standard LCS Service Types
emergencyServices LCSServiceTypeID ::= 0
emergencyAlertServices LCSServiceTypeID ::= 1
personTracking LCSServiceTypeID ::= 2
fleetManagement LCSServiceTypeID ::= 3
assetManagement LCSServiceTypeID ::= 4
trafficCongestionReporting LCSServiceTypeID ::= 5
roadsideAssistance LCSServiceTypeID ::= 6
routingToNearestCommercialEnterprise LCSServiceTypeID ::= 7
navigation LCSServiceTypeID ::= 8
–this service type is reserved for use in previous releases
citySightseeing LCSServiceTypeID ::= 9
localizedAdvertising LCSServiceTypeID ::= 10
mobileYellowPages LCSServiceTypeID ::= 11
trafficAndPublicTransportationInfo LCSServiceTypeID ::= 12
weather LCSServiceTypeID ::= 13
assetAndServiceFinding LCSServiceTypeID ::= 14
gaming LCSServiceTypeID ::= 15
findYourFriend LCSServiceTypeID ::= 16
dating LCSServiceTypeID ::= 17
chatting LCSServiceTypeID ::= 18
routeFinding LCSServiceTypeID ::= 19
whereAmI LCSServiceTypeID ::= 20
— The values of LCSServiceTypeID are defined according to 3GPP TS 22.071.
— Non Standard LCS Service Types
serv64 LCSServiceTypeID ::= 64
serv65 LCSServiceTypeID ::= 65
serv66 LCSServiceTypeID ::= 66
serv67 LCSServiceTypeID ::= 67
serv68 LCSServiceTypeID ::= 68
serv69 LCSServiceTypeID ::= 69
serv70 LCSServiceTypeID ::= 70
serv71 LCSServiceTypeID ::= 71
serv72 LCSServiceTypeID ::= 72
serv73 LCSServiceTypeID ::= 73
serv74 LCSServiceTypeID ::= 74
serv75 LCSServiceTypeID ::= 75
serv76 LCSServiceTypeID ::= 76
serv77 LCSServiceTypeID ::= 77
serv78 LCSServiceTypeID ::= 78
serv79 LCSServiceTypeID ::= 79
serv80 LCSServiceTypeID ::= 80
serv81 LCSServiceTypeID ::= 81
serv82 LCSServiceTypeID ::= 82
serv83 LCSServiceTypeID ::= 83
serv84 LCSServiceTypeID ::= 84
serv85 LCSServiceTypeID ::= 85
serv86 LCSServiceTypeID ::= 86
serv87 LCSServiceTypeID ::= 87
serv88 LCSServiceTypeID ::= 88
serv89 LCSServiceTypeID ::= 89
serv90 LCSServiceTypeID ::= 90
serv91 LCSServiceTypeID ::= 91
serv92 LCSServiceTypeID ::= 92
serv93 LCSServiceTypeID ::= 93
serv94 LCSServiceTypeID ::= 94
serv95 LCSServiceTypeID ::= 95
serv96 LCSServiceTypeID ::= 96
serv97 LCSServiceTypeID ::= 97
serv98 LCSServiceTypeID ::= 98
serv99 LCSServiceTypeID ::= 99
serv100 LCSServiceTypeID ::= 100
serv101 LCSServiceTypeID ::= 101
serv102 LCSServiceTypeID ::= 102
serv103 LCSServiceTypeID ::= 103
serv104 LCSServiceTypeID ::= 104
serv105 LCSServiceTypeID ::= 105
serv106 LCSServiceTypeID ::= 106
serv107 LCSServiceTypeID ::= 107
serv108 LCSServiceTypeID ::= 108
serv109 LCSServiceTypeID ::= 109
serv110 LCSServiceTypeID ::= 110
serv111 LCSServiceTypeID ::= 111
serv112 LCSServiceTypeID ::= 112
serv113 LCSServiceTypeID ::= 113
serv114 LCSServiceTypeID ::= 114
serv115 LCSServiceTypeID ::= 115
serv116 LCSServiceTypeID ::= 116
serv117 LCSServiceTypeID ::= 117
serv118 LCSServiceTypeID ::= 118
serv119 LCSServiceTypeID ::= 119
serv120 LCSServiceTypeID ::= 120
serv121 LCSServiceTypeID ::= 121
serv122 LCSServiceTypeID ::= 122
serv123 LCSServiceTypeID ::= 123
serv124 LCSServiceTypeID ::= 124
serv125 LCSServiceTypeID ::= 125
serv126 LCSServiceTypeID ::= 126
serv127 LCSServiceTypeID ::= 127
PLMN-Id ::= OCTET STRING (SIZE (3))
— The internal structure is defined as follows:
— octet 1 bits 4321 Mobile Country Code 1st digit
— bits 8765 Mobile Country Code 2nd digit
— octet 2 bits 4321 Mobile Country Code 3rd digit
— bits 8765 Mobile Network Code 3rd digit
— or filler (1111) for 2 digit MNCs
— octet 3 bits 4321 Mobile Network Code 1st digit
— bits 8765 Mobile Network Code 2nd digit
E-UTRAN-CGI ::= OCTET STRING (SIZE (7))
— Octets are coded as described in 3GPP TS 29.118 [152].
NR-CGI ::= OCTET STRING (SIZE (8))
— Octets are coded as described in 3GPP TS 38.413 [153].
TA-Id ::= OCTET STRING (SIZE (5))
— Octets are coded as described in 3GPP TS 29.118 [152].
NR-TA-Id ::= OCTET STRING (SIZE (6))
— Octets are coded as described in 3GPP TS 38.413 [153].
RAIdentity ::= OCTET STRING (SIZE (6))
— Routing Area Identity is coded in accordance with 3GPP TS 29.060 [105].
— It shall contain the value part defined in 3GPP TS 29.060 only. I.e. the 3GPP TS 29.060
— type identifier octet shall not be included.
NetworkNodeDiameterAddress::= SEQUENCE {
diameter-Name [0] DiameterIdentity,
diameter-Realm [1] DiameterIdentity }
— data types for CAMEL
CellGlobalIdOrServiceAreaIdOrLAI ::= CHOICE {
cellGlobalIdOrServiceAreaIdFixedLength [0] CellGlobalIdOrServiceAreaIdFixedLength,
laiFixedLength [1] LAIFixedLength}
CellGlobalIdOrServiceAreaIdFixedLength ::= OCTET STRING (SIZE (7))
— Refers to Cell Global Identification or Service Are Identification
— defined in 3GPP TS 23.003.
— The internal structure is defined as follows:
— octet 1 bits 4321 Mobile Country Code 1st digit
— bits 8765 Mobile Country Code 2nd digit
— octet 2 bits 4321 Mobile Country Code 3rd digit
— bits 8765 Mobile Network Code 3rd digit
— or filler (1111) for 2 digit MNCs
— octet 3 bits 4321 Mobile Network Code 1st digit
— bits 8765 Mobile Network Code 2nd digit
— octets 4 and 5 Location Area Code according to 3GPP TS 24.008
— octets 6 and 7 Cell Identity (CI) value or
— Service Area Code (SAC) value
— according to 3GPP TS 23.003
LAIFixedLength ::= OCTET STRING (SIZE (5))
— Refers to Location Area Identification defined in 3GPP TS 23.003 [17].
— The internal structure is defined as follows:
— octet 1 bits 4321 Mobile Country Code 1st digit
— bits 8765 Mobile Country Code 2nd digit
— octet 2 bits 4321 Mobile Country Code 3rd digit
— bits 8765 Mobile Network Code 3rd digit
— or filler (1111) for 2 digit MNCs
— octet 3 bits 4321 Mobile Network Code 1st digit
— bits 8765 Mobile Network Code 2nd digit
— octets 4 and 5 Location Area Code according to 3GPP TS 24.008 [35]
— data types for subscriber management
BasicServiceCode ::= CHOICE {
bearerService [2] BearerServiceCode,
teleservice [3] TeleserviceCode}
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
priorityLevelA EMLPP-Priority ::= 6
priorityLevelB EMLPP-Priority ::= 5
priorityLevel0 EMLPP-Priority ::= 0
priorityLevel1 EMLPP-Priority ::= 1
priorityLevel2 EMLPP-Priority ::= 2
priorityLevel3 EMLPP-Priority ::= 3
priorityLevel4 EMLPP-Priority ::= 4
MC-SS-Info ::= SEQUENCE {
ss-Code [0] SS-Code,
ss-Status [1] Ext-SS-Status,
nbrSB [2] MaxMC-Bearers,
nbrUser [3] MC-Bearers,
extensionContainer [4] ExtensionContainer OPTIONAL,
…}
MaxMC-Bearers ::= INTEGER (2..maxNumOfMC-Bearers)
MC-Bearers ::= INTEGER (1..maxNumOfMC-Bearers)
maxNumOfMC-Bearers INTEGER ::= 7
Ext-SS-Status ::= OCTET STRING (SIZE (1..5))
— OCTET 1:
—
— bits 8765: 0000 (unused)
— bits 4321: Used to convey the "P bit","R bit","A bit" and "Q bit",
— representing supplementary service state information
— as defined in TS 3GPP TS 23.011 [22]
— bit 4: "Q bit"
— bit 3: "P bit"
— bit 2: "R bit"
— bit 1: "A bit"
— OCTETS 2-5: reserved for future use. They shall be discarded if
— received and not understood.
— data types for geographic location
AgeOfLocationInformation ::= INTEGER (0..32767)
— the value represents the elapsed time in minutes since the last
— network contact of the mobile station (i.e. the actuality of the
— location information).
— value "0" indicates that the MS is currently in contact with the
— network
— value "32767" indicates that the location information is at least
— 32767 minutes old
.#END