OVERVIEW   INDEX   DEPRECATED   HELP   CORRESPONDENCES  


Modulepars   Data Types   Component Types   Port Types   Constants   Templates   Signatures   Functions   Altsteps   Test cases  

Module RRLPV5Types


Import Declarations:


Data Types Summary
PrivateExtensionList
ExtensionSet
Ext_GeographicalInformation
VelocityEstimate
_0RRLP_PDU
Accuracy
MeasureResponseTime
BTSPosition
BCCHCarrier
BSIC
ModuloTimeSlot
SeqOfMsrAssistBTS
MultiFrameOffset
RoughRTD
SeqOfSystemInfoAssistBTS
FineRTD
RelDistance
RelativeAlt
_0MultipleSets0
_0MultipleSets
SeqOfReferenceIdentityType
RequestIndex
SystemInfoIndex
CellID
LAC
SeqOfOTD_MsrElementRest
_0OTD_MsrElementFirst0
_0OTD_MsrElementFirst
SeqOfOTD_FirstSetMsrs
_0OTD_MsrElementRest0
_0OTD_MsrElementRest
SeqOfOTD_MsrsOfOtherSets
RefQuality
NumOfMeasurements
StdResolution
OTD_FirstSetMsrs
_0EOTDQuality
_0EOTDQuality0
OTDValue
_0LocationInfo
_0LocationInfo0
FixType
SeqOfGPS_MsrSetElement
_0GPS_MsrSetElement
GPSTOW24b
SeqOfGPS_MsrElement
_0GPS_MsrElement0
_0GPS_MsrElement1
_0GPS_MsrElement2
_0GPS_MsrElement3
_0GPS_MsrElement
GPSAssistanceData
GPSTOW23b
GPSWeek
GPSTOWAssist
TLMWord
AntiSpoofFlag
AlertFlag
TLMReservedBits
FrameNumber
TimeSlot
BitNumber
_0DGPSCorrections
_0DGPSCorrections0
SeqOfSatElement
_0SatElement0
_0SatElement1
_0SatElement2
_0SatElement3
_0SatElement4
_0SatElement5
_0SatElement6
_0SatElement
SatelliteID
SeqOfNavModelElement
_0UncompressedEphemeris0
_0UncompressedEphemeris17
_0UncompressedEphemeris16
_0UncompressedEphemeris15
_0UncompressedEphemeris14
_0UncompressedEphemeris13
_0UncompressedEphemeris12
_0UncompressedEphemeris11
_0UncompressedEphemeris10
_0UncompressedEphemeris
_0UncompressedEphemeris19
_0UncompressedEphemeris18
_0UncompressedEphemeris20
_0UncompressedEphemeris26
_0UncompressedEphemeris9
_0UncompressedEphemeris25
_0UncompressedEphemeris22
_0UncompressedEphemeris21
_0UncompressedEphemeris24
_0UncompressedEphemeris23
_0UncompressedEphemeris1
_0UncompressedEphemeris2
_0UncompressedEphemeris3
_0UncompressedEphemeris4
_0UncompressedEphemeris5
_0UncompressedEphemeris6
_0UncompressedEphemeris7
_0UncompressedEphemeris8
_0EphemerisSubframe1Reserved
_0EphemerisSubframe1Reserved0
_0EphemerisSubframe1Reserved1
_0EphemerisSubframe1Reserved2
_0IonosphericModel4
_0IonosphericModel3
_0IonosphericModel6
_0IonosphericModel5
_0IonosphericModel0
_0IonosphericModel2
_0IonosphericModel1
_0IonosphericModel
_0UTCModel6
_0UTCModel0
_0UTCModel1
_0UTCModel2
_0UTCModel
_0UTCModel3
_0UTCModel4
_0UTCModel5
_0Almanac
SeqOfAlmanacElement
_0AlmanacElement8
_0AlmanacElement9
_0AlmanacElement
_0AlmanacElement6
_0AlmanacElement7
_0AlmanacElement4
_0AlmanacElement5
_0AlmanacElement2
_0AlmanacElement3
_0AlmanacElement0
_0AlmanacElement1
SeqOfAcquisElement
_0AcquisElement3
_0AcquisElement0
_0AcquisElement1
_0AcquisElement2
_0AcquisElement
_0AddionalDopplerFields0
_0AddionalDopplerFields
_0AddionalAngleFields0
_0AddionalAngleFields
SeqOf_BadSatelliteSet
SeqOfMsrAssistBTS_R98_ExpOTD
SeqOfSystemInfoAssistBTS_R98_ExpOTD
ExpectedOTD
ExpOTDUncertainty
GPSReferenceTimeUncertainty
_0GPSTimeAssistanceMeasurements
_0GPSTimeAssistanceMeasurements1
_0GPSTimeAssistanceMeasurements0
SeqOfOTD_FirstSetMsrs_R98_Ext
_0Extended_reference0
_0Extended_reference
OTD_MeasureInfo_5_Ext
PositionMethod
UseMultipleSets
EnvironmentCharacter
TimeSlotScheme
ReferenceRelation
MpathIndic
LocErrorReason
ErrorCodes
MoreAssDataToBeSent
UlPseudoSegInd
ExtensionContainer
PrivateExtension
PCS_Extensions
MAP_EXTENSION
RRLP_PDU
MsrPosition_Req
MsrPosition_Rsp
AssistanceData
ProtocolError
PositionInstruct
AccuracyOpt
ReferenceAssistData
MsrAssistData
MsrAssistBTS
SystemInfoAssistData
AssistBTSData
CalcAssistanceBTS
ReferenceWGS84
MultipleSets
ReferenceIdentity
BSICAndCarrier
CellIDAndLAC
OTD_MeasureInfo
OTD_MsrElementFirst
OTD_MsrElementRest
TOA_MeasurementsOfRef
OTD_Measurement
OTD_MeasurementWithID
EOTDQuality
MultiFrameCarrier
LocationInfo
GPS_MeasureInfo
GPS_MsrSetElement
GPS_MsrElement
LocationError
AdditionalAssistanceData
GPS_AssistData
ControlHeader
ReferenceTime
GPSTime
GPSTOWAssistElement
GSMTime
RefLocation
DGPSCorrections
SatElement
NavigationModel
NavModelElement
UncompressedEphemeris
EphemerisSubframe1Reserved
IonosphericModel
UTCModel
Almanac
AlmanacElement
AcquisAssist
TimeRelation
AcquisElement
AddionalDopplerFields
AddionalAngleFields
Rel98_MsrPosition_Req_Extension
Rel98_AssistanceData_Extension
Rel98_Ext_ExpOTD
MsrAssistData_R98_ExpOTD
MsrAssistBTS_R98_ExpOTD
SystemInfoAssistData_R98_ExpOTD
AssistBTSData_R98_ExpOTD
GPSTimeAssistanceMeasurements
Rel_98_MsrPosition_Rsp_Extension
_0Rel_98_MsrPosition_Rsp_Extension
OTD_MeasureInfo_R98_Ext
OTD_MsrElementFirst_R98_Ext
Rel_5_MsrPosition_Rsp_Extension
Extended_reference
Rel5_MsrPosition_Req_Extension
Rel5_AssistanceData_Extension
Rel_5_ProtocolError_Extension
RRLP_Component
MethodType
SystemInfoAssistBTS
ReferenceIdentityType
OTD_MsrsOfOtherSets
NeighborIdentity
SatStatus
SystemInfoAssistBTS_R98_ExpOTD
Constants Summary
maxNumOfPrivateExtensions
maxExt_GeographicalInformation
FixType_twoDFix_
FixType_threeDFix_
maxGPSAssistanceData

Details

PrivateExtensionList
PrivateExtensionList ::= SEQUENCE SIZE (1..maxNumOfPrivateExtensions) OF
                PrivateExtension
PrivateExtension

ExtensionSet
ExtensionSet        MAP-EXTENSION ::=
        {...
         -- ExtensionSet is the set of all defined private extensions
    }
    -- Unsupported private extensions shall be discarded if received.
PCS-Extensions

Ext_GeographicalInformation
Ext-GeographicalInformation ::= OCTET STRING (SIZE (1..maxExt-GeographicalInformation))
-- Refers to geographical Information defined in GSM 03.32.
-- This is composed of 1 or more octets with an internal structure according to GSM 03.32
-- Octet 1: Type of shape, only the following shapes in GSM 03.32 are allowed:
--        (a) Ellipsoid point with uncertainty circle
--        (b) Ellipsoid point with uncertainty ellipse
-- Any other value in octet 1 shall be treated as invalid
-- Octets 2 to 8 for case (a) – Ellipsoid point with uncertainty circle
--        Degrees of Latitude                3 octets
--        Degrees of Longitude                3 octets
--        Uncertainty code                1 octet
-- Octets 2 to 10 for case (b) – Ellipsoid point with uncertainty ellipse:
--        Degrees of Latitude                3 octets
--        Degrees of Longitude                3 octets
--        Uncertainty semi-major axis                1 octet
--        Uncertainty semi-minor axis                1 octet
--        Angle of major axis                1 octet
--
-- An Ext-GeogrpahicalInformation parameter containing any other shape or an incorrect number
-- of octets or coding according to GSM 03.32 shall be treated as invalid data by a receiver
maxExt-GeographicalInformation

VelocityEstimate
VelocityEstimate ::= OCTET STRING (SIZE (4..7))
    -- Refers to Velocity description defined in 3GPP TS 23.032.
    -- This is composed of 4 or more octets with an internal structure according to
    -- 3GPP TS 23.032
    -- Octet 1: Type of velocity, only the following types in 3GPP TS 23.032 are allowed:
    --        (a) Horizontal Velocity
    --        (b) Horizontal with Vertical Velocity
    --        (c) Horizontal Velocity with Uncertainty
    --        (d) Horizontal with Vertical Velocity and Uncertainty
    -- For types Horizontal with Vertical Velocity and Horizontal with Vertical Velocity
    -- and Uncertainty, the direction of the Vertical Speed is also included in Octet 1
    -- Any other value in octet 1 shall be treated as invalid
    -- Octets 2 to 4 for case (a) Horizontal velocity:
    --        Bearing                1 octet
    --        Horizontal Speed                2 octets
    -- Octets 2 to 5 for case (b) – Horizontal with Vertical Velocity:
    --        Bearing                1 octet
    --        Horizontal Speed                2 octets
    --        Vertical Speed                1 octet
    -- Octets 2 to 5 for case (c) – Horizontal velocity with Uncertainty:
    --        Bearing                1 octet
    --        Horizontal Speed                2 octets
    --        Uncertainty Speed                1 octet
    -- Octets 2 to 7 for case (d) – Horizontal with Vertical Velocity and Uncertainty:
    --        Bearing                1 octet
    --        Horizontal Speed                2 octets
    --        Vertical Speed                1 octet
    --        Horizontal Uncertainty Speed            1 octet
    --        Vertical Uncertainty Speed                1 octet
-- Information Elements copied from TS 44.031 v5.c.0
RRLP-PDU

_0RRLP_PDU
INTEGER (0..7)

Accuracy
Accuracy ::= INTEGER (0..127)
-- Position Method
PositionMethod

MeasureResponseTime
MeasureResponseTime ::= INTEGER (0..7)
-- useMultiple Sets, FFS!
UseMultipleSets

BTSPosition
Ext-GeographicalInformation
-- RF channel number of BCCH
BCCHCarrier

BCCHCarrier
BCCHCarrier ::= INTEGER (0..1023)
-- Base station Identity Code
BSIC

BSIC
BSIC ::= INTEGER (0..63)
-- Timeslot scheme
TimeSlotScheme

ModuloTimeSlot
ModuloTimeSlot ::= INTEGER (0..3)
-- E-OTD measurement assistance data IE
-- The total number of neighbors in this element (MsrAssistData)
-- and in SystemInfoAssistData element (presented neighbors
-- can be at a maximum 15!)
MsrAssistData

SeqOfMsrAssistBTS
SeqOfMsrAssistBTS ::= SEQUENCE (SIZE(1..15)) OF MsrAssistBTS
MsrAssistBTS

MultiFrameOffset
MultiFrameOffset ::= INTEGER (0..51)
-- The Multiframe Offset value 51 shall not be encoded by the transmitting entity and
-- shall be treated by the receiving entity as 0.
-- Rough RTD value between one base station and reference BTS
RoughRTD

RoughRTD
RoughRTD ::= INTEGER (0..1250)
-- The RoughRTD value 1250 shall not be encoded by the transmitting entity and shall
-- be treated by the receiving entity as 0.
-- E-OTD Measurement assistance data for system information List IE
-- The total number of base stations in this element (SystemInfoAssistData
-- presented neighbors) and in MsrAssistData element can be at a maximum 15.
SystemInfoAssistData

SeqOfSystemInfoAssistBTS
SeqOfSystemInfoAssistBTS::= SEQUENCE (SIZE(1..32)) OF SystemInfoAssistBTS
-- whether n.th is present or not ?
SystemInfoAssistBTS

FineRTD
FineRTD ::= INTEGER (0..255)
-- Relative north/east distance
RelDistance

RelDistance
RelDistance ::= INTEGER (-200000..200000)
-- Relative altitude
RelativeAlt

RelativeAlt
RelativeAlt ::= INTEGER (-4000..4000)
-- Measure position response IEs
-- Reference Identity
-- Multiple sets
MultipleSets

_0MultipleSets0
INTEGER (1..3)

_0MultipleSets
INTEGER (2..3)

SeqOfReferenceIdentityType
SeqOfReferenceIdentityType ::= SEQUENCE (SIZE(1..3)) OF ReferenceIdentityType
-- Cell identity
ReferenceIdentityType

RequestIndex
RequestIndex ::= INTEGER (1..16)
SystemInfoIndex

SystemInfoIndex
SystemInfoIndex ::= INTEGER (1..32)
CellIDAndLAC

CellID
CellID ::= INTEGER (0..65535)
LAC

LAC
LAC ::= INTEGER (0..65535)
-- OTD-MeasureInfo
OTD-MeasureInfo

SeqOfOTD_MsrElementRest
SeqOfOTD-MsrElementRest ::= SEQUENCE (SIZE(1..2)) OF OTD-MsrElementRest
-- OTD measurent information for 1 set
OTD-MsrElementFirst

_0OTD_MsrElementFirst0
INTEGER (0..960)        OPTIONAL

_0OTD_MsrElementFirst
INTEGER (0..42431)

SeqOfOTD_FirstSetMsrs
SeqOfOTD-FirstSetMsrs ::= SEQUENCE (SIZE(1..10)) OF OTD-FirstSetMsrs
-- OTD measurent information 2 and 3 sets if exist
OTD-MsrElementRest

_0OTD_MsrElementRest0
INTEGER (0..960)            OPTIONAL

_0OTD_MsrElementRest
INTEGER (0..42431)

SeqOfOTD_MsrsOfOtherSets
SeqOfOTD-MsrsOfOtherSets ::= SEQUENCE (SIZE(1..10)) OF OTD-MsrsOfOtherSets
-- Standard deviation of the TOA measurements from the reference BTS
TOA-MeasurementsOfRef

RefQuality
RefQuality ::= INTEGER (0..31)            -- St Dev of TOA of reference as defined in annex
NumOfMeasurements

NumOfMeasurements
NumOfMeasurements ::= INTEGER (0..7)    -- No. of measurements for RefQuality as defined in annex
StdResolution

StdResolution
StdResolution ::= INTEGER (0..3)        -- Values of resolution are defined in annex
OTD-FirstSetMsrs

OTD_FirstSetMsrs
OTD-MeasurementWithID
-- Neighbour info in OTD measurements 0-10 times in TD measurement info
OTD-MsrsOfOtherSets

_0EOTDQuality
INTEGER    (0..7)

_0EOTDQuality0
INTEGER (0..31)

OTDValue
OTDValue ::= INTEGER (0..39999)
-- Location information IE
LocationInfo

_0LocationInfo
INTEGER (0..65535)

_0LocationInfo0
INTEGER (0..14399999)    OPTIONAL

FixType
FixType ::= INTEGER {
    twoDFix (0),
    threeDFix (1)
} (0..1)
-- GPS-Measurement information
GPS-MeasureInfo

SeqOfGPS_MsrSetElement
SeqOfGPS-MsrSetElement ::= SEQUENCE (SIZE(1..3)) OF GPS-MsrSetElement
-- OTD measurent information 1-3 times in message
GPS-MsrSetElement

_0GPS_MsrSetElement
INTEGER (0..65535)    OPTIONAL

GPSTOW24b
GPSTOW24b ::= INTEGER (0..14399999)
-- measured elements in measurement parameters field
SeqOfGPS-MsrElement

SeqOfGPS_MsrElement
SeqOfGPS-MsrElement ::= SEQUENCE (SIZE(1..16)) OF GPS-MsrElement
GPS-MsrElement

_0GPS_MsrElement0
INTEGER (-32768..32767)

_0GPS_MsrElement1
INTEGER (0..1022)

_0GPS_MsrElement2
INTEGER (0..1024)

_0GPS_MsrElement3
INTEGER (0..63)

_0GPS_MsrElement
INTEGER (0..63)

GPSAssistanceData
GPSAssistanceData ::= OCTET STRING (SIZE (1..maxGPSAssistanceData))
-- GPSAssistanceData has identical structure and encoding to octets 3 to n of the
-- GPS Assistance Data IE in 3GPP TS 49.031
maxGPSAssistanceData

GPSTOW23b
GPSTOW23b ::= INTEGER (0..7559999)
-- GPS week number
GPSWeek

GPSWeek
GPSWeek ::= INTEGER (0..1023)
-- GPSTOWAssist consists of TLM message, Anti-spoof flag, Alert flag, and 2 reserved bits in TLM Word
-- for each visible satellite.
-- N_SAT can be read from number of elements in GPSTOWAssist
GPSTOWAssist

GPSTOWAssist
GPSTOWAssist ::= SEQUENCE (SIZE(1..12)) OF GPSTOWAssistElement
GPSTOWAssistElement

TLMWord
TLMWord ::= INTEGER (0..16383)
-- Anti-Spoof flag
AntiSpoofFlag

AntiSpoofFlag
AntiSpoofFlag ::= INTEGER (0..1)
-- Alert flag
AlertFlag

AlertFlag
AlertFlag ::= INTEGER (0..1)
-- Reserved bits in TLM word, MSB occurs earlier in TLM Word transmitted by satellite
TLMReservedBits

TLMReservedBits
TLMReservedBits ::= INTEGER (0..3)
GSMTime

FrameNumber
FrameNumber ::= INTEGER (0..2097151)
-- Time slot number
TimeSlot

TimeSlot
TimeSlot ::= INTEGER (0..7)
-- Bit number
BitNumber

BitNumber
BitNumber ::= INTEGER (0..156)
-- Reference Location IE
RefLocation

_0DGPSCorrections
INTEGER (0..604799)

_0DGPSCorrections0
INTEGER (0..7)

SeqOfSatElement
SeqOfSatElement ::= SEQUENCE (SIZE (1..16)) OF SatElement
-- number of correction for satellites
SatElement

_0SatElement0
INTEGER (0..3)

_0SatElement1
INTEGER (-2047..2047)

_0SatElement2
INTEGER (-127..127)

_0SatElement3
INTEGER (-127..127)

_0SatElement4
INTEGER (-7..7)

_0SatElement5
INTEGER (-127..127)

_0SatElement6
INTEGER (-7..7)

_0SatElement
INTEGER (0..239)

SatelliteID
SatelliteID ::= INTEGER (0..63)    -- identifies satellite
-- Navigation Model IE
NavigationModel

SeqOfNavModelElement
SeqOfNavModelElement ::= SEQUENCE (SIZE(1..16)) OF NavModelElement
NavModelElement

_0UncompressedEphemeris0
INTEGER (0..15)

_0UncompressedEphemeris17
INTEGER (0..1)

_0UncompressedEphemeris16
INTEGER (0..37799)

_0UncompressedEphemeris15
INTEGER (0..4294967295)

_0UncompressedEphemeris14
INTEGER (-32768..32767)

_0UncompressedEphemeris13
INTEGER (0..4294967295)

_0UncompressedEphemeris12
INTEGER (-32768..32767)

_0UncompressedEphemeris11
INTEGER (-2147483648..2147483647)

_0UncompressedEphemeris10
INTEGER (-32768..32767)

_0UncompressedEphemeris
INTEGER (0..3)

_0UncompressedEphemeris19
INTEGER (-32768..32767)

_0UncompressedEphemeris18
INTEGER (0..31)

_0UncompressedEphemeris20
INTEGER (-2147483648..2147483647)

_0UncompressedEphemeris26
INTEGER (-8192..8191)

_0UncompressedEphemeris9
INTEGER (-32768..32767)

_0UncompressedEphemeris25
INTEGER (-8388608..8388607)

_0UncompressedEphemeris22
INTEGER (-2147483648..2147483647)

_0UncompressedEphemeris21
INTEGER (-32768..32767)

_0UncompressedEphemeris24
INTEGER (-2147483648..2147483647)

_0UncompressedEphemeris23
INTEGER (-32768..32767)

_0UncompressedEphemeris1
INTEGER (0..63)

_0UncompressedEphemeris2
INTEGER    (0..1023)

_0UncompressedEphemeris3
INTEGER (0..1)

_0UncompressedEphemeris4
INTEGER (-128..127)

_0UncompressedEphemeris5
INTEGER (0..37799)

_0UncompressedEphemeris6
INTEGER (-128..127)

_0UncompressedEphemeris7
INTEGER (-32768..32767)

_0UncompressedEphemeris8
INTEGER (-2097152..2097151)

_0EphemerisSubframe1Reserved
INTEGER (0..8388607)

_0EphemerisSubframe1Reserved0
INTEGER (0..16777215)

_0EphemerisSubframe1Reserved1
INTEGER (0..16777215)

_0EphemerisSubframe1Reserved2
INTEGER (0..65535)

_0IonosphericModel4
INTEGER (-128..127)

_0IonosphericModel3
INTEGER (-128..127)

_0IonosphericModel6
INTEGER (-128..127)

_0IonosphericModel5
INTEGER (-128..127)

_0IonosphericModel0
INTEGER (-128..127)

_0IonosphericModel2
INTEGER (-128..127)

_0IonosphericModel1
INTEGER (-128..127)

_0IonosphericModel
INTEGER (-128..127)

_0UTCModel6
INTEGER (-128..127)

_0UTCModel0
INTEGER (-2147483648..2147483647)

_0UTCModel1
INTEGER (0..255)

_0UTCModel2
INTEGER (0..255)

_0UTCModel
INTEGER (-8388608..8388607)

_0UTCModel3
INTEGER (-128..127)

_0UTCModel4
INTEGER (0..255)

_0UTCModel5
INTEGER (-128..127)

_0Almanac
INTEGER (0..255)

SeqOfAlmanacElement
SeqOfAlmanacElement ::= SEQUENCE (SIZE(1..64)) OF AlmanacElement
-- Almanac info once per satellite
AlmanacElement

_0AlmanacElement8
INTEGER (-1024..1023)

_0AlmanacElement9
INTEGER (-1024..1023)

_0AlmanacElement
INTEGER (0..65535)

_0AlmanacElement6
INTEGER (-8388608..8388607)

_0AlmanacElement7
INTEGER (-8388608..8388607)

_0AlmanacElement4
INTEGER (0..16777215)

_0AlmanacElement5
INTEGER (-8388608..8388607)

_0AlmanacElement2
INTEGER (-32768..32767)

_0AlmanacElement3
INTEGER (0..255)

_0AlmanacElement0
INTEGER (0..255)

_0AlmanacElement1
INTEGER (-32768..32767)

SeqOfAcquisElement
SeqOfAcquisElement ::= SEQUENCE (SIZE(1..16)) OF AcquisElement
-- the relationship between GPS time and air-interface timing
TimeRelation

_0AcquisElement3
INTEGER (0..15)

_0AcquisElement0
INTEGER (0..1022)

_0AcquisElement1
INTEGER (0..19)

_0AcquisElement2
INTEGER (0..3)

_0AcquisElement
INTEGER (-2048..2047)

_0AddionalDopplerFields0
INTEGER (0..7)

_0AddionalDopplerFields
INTEGER (0..63)

_0AddionalAngleFields0
INTEGER (0..7)

_0AddionalAngleFields
INTEGER (0..31)

SeqOf_BadSatelliteSet
SeqOf-BadSatelliteSet ::= SEQUENCE (SIZE(1..16)) OF SatelliteID
-- Extension Elements
-- Release 98 Extensions here
Rel98-MsrPosition-Req-Extension

SeqOfMsrAssistBTS_R98_ExpOTD
SeqOfMsrAssistBTS-R98-ExpOTD ::= SEQUENCE (SIZE(1..15)) OF MsrAssistBTS-R98-ExpOTD
-- This element completes MsrAssistBTS IE
MsrAssistBTS-R98-ExpOTD

SeqOfSystemInfoAssistBTS_R98_ExpOTD
SeqOfSystemInfoAssistBTS-R98-ExpOTD ::= SEQUENCE (SIZE(1..32)) OF SystemInfoAssistBTS-R98-ExpOTD
-- whether n.th is present or not ?
SystemInfoAssistBTS-R98-ExpOTD

ExpectedOTD
ExpectedOTD ::= INTEGER (0..1250)
-- The ExpectedOTD value 1250 shall not be encoded by the transmitting entity and
-- shall be treated by the receiving entity as 0.
-- Uncertainty of Exptected OTD in bits
ExpOTDUncertainty

ExpOTDUncertainty
ExpOTDUncertainty ::= INTEGER(0..7)
-- Release 98 extensions
GPSReferenceTimeUncertainty

GPSReferenceTimeUncertainty
GPSReferenceTimeUncertainty ::= INTEGER (0 .. 127)   -- Coding according to Annex
GPSTimeAssistanceMeasurements

_0GPSTimeAssistanceMeasurements
INTEGER (0 .. 63)

_0GPSTimeAssistanceMeasurements1
INTEGER (0 .. 127)   OPTIONAL

_0GPSTimeAssistanceMeasurements0
INTEGER (0 .. 9999)   OPTIONAL

SeqOfOTD_FirstSetMsrs_R98_Ext
SeqOfOTD-FirstSetMsrs-R98-Ext ::= SEQUENCE (SIZE(1..5)) OF OTD-FirstSetMsrs
Rel-5-MsrPosition-Rsp-Extension

_0Extended_reference0
INTEGER (0..262143)

_0Extended_reference
INTEGER (0..63)

OTD_MeasureInfo_5_Ext
SeqOfOTD-MsrElementRest
-- if more than one measurement sets are present this element is repeated
-- NumberOfSets - 1 (-1 = first set) combined in OTD-MeasureInfo-5-Ext and
-- OTD-MeasureInfo (e.g. if NumberOfSets is 3, then one otdMsrRestSets may
-- be sent in OTD-MeasureInfo-5-Ext and one in OTD-MeasureInfo)
-- First part of Uplink RRLP Pseudo-segmentation indication, possibly more may be defined
-- in the future for segmentation with more than two segments.
UlPseudoSegInd

PositionMethod
ENUMERATED {
eotd (0),
gps (1),
gpsOrEOTD (2)
}
-- Measurement request response time
MeasureResponseTime

UseMultipleSets
ENUMERATED {
multipleSets (0),        -- multiple sets are allowed
oneSet (1)                -- sending of multiple is not allowed
}
-- Environment characterization
EnvironmentCharacter

EnvironmentCharacter
ENUMERATED {
badArea (0),        -- bad urban or suburban, heavy multipath and NLOS
notBadArea (1),        -- light multipath and NLOS
mixedArea (2),        -- not defined or mixed environment
...
}
-- E-OTD reference BTS for Assitance data IE
ReferenceAssistData

TimeSlotScheme
ENUMERATED {
equalLength (0),
variousLength (1)
}
-- Time slot (modulo)
ModuloTimeSlot

ReferenceRelation
ENUMERATED {
secondBTSThirdSet (0),    -- 1st BTS related to 1st and 2nd sets
secondBTSSecondSet (1),    -- 1st BTS related to 1st and 3rd sets
firstBTSFirstSet (2)    -- 1st BTS related to 1st set
}
-- Reference BTS Identity, this element contains number of
-- BTSs told nbrOfReferenceBTSs field in Multiple sets element)
ReferenceIdentity

MpathIndic
ENUMERATED {
notMeasured (0),
low (1),
medium (2),
high (3)
}
-- Location error IE
LocationError

LocErrorReason
ENUMERATED {
unDefined (0),    
notEnoughBTSs (1),
notEnoughSats (2),
eotdLocCalAssDataMissing (3),
eotdAssDataMissing (4),
gpsLocCalAssDataMissing (5),
gpsAssDataMissing (6),
methodNotSupported (7),
notProcessed (8),
refBTSForGPSNotServingBTS (9),
refBTSForEOTDNotServingBTS (10),
...
}
-- exception handling:
-- an unrecognized value shall be treated the same as value 0
-- defines additional assistance data needed for any new location attempt
-- MS shall retain any assistance data already received
AdditionalAssistanceData

ErrorCodes
ENUMERATED {
unDefined (0),
missingComponet (1),            
incorrectData (2),            
missingIEorComponentElement (3),        
messageTooShort (4),            
unknowReferenceNumber (5),        
...
}
-- exception handling:
-- an unrecognized value shall be treated the same as value 0
-- GPS assistance data IE
GPS-AssistData

MoreAssDataToBeSent
ENUMERATED {
noMoreMessages (0),            -- This is the only or last Assistance Data message used to deliver
-- the entire set of assistance data.
moreMessagesOnTheWay (1)    -- The SMLC will send more Assistance Data messages or a final RRLP
-- Measure Position Request message to deliver the
-- the entire set of assistance data.
}
-- Control header of the GPS assistance data
ControlHeader

UlPseudoSegInd
ENUMERATED {
firstOfMany (0),
secondOfMany(1)
}
Rel5-MsrPosition-Req-Extension

ExtensionContainer
ExtensionContainer ::= SEQUENCE {
    privateExtensionList    [0]PrivateExtensionList    OPTIONAL, 
    pcs-Extensions    [1]PCS-Extensions    OPTIONAL,
    ...}
PrivateExtensionList

PrivateExtension
PrivateExtension ::= SEQUENCE {
    extId        MAP-EXTENSION.&extensionId
                ({ExtensionSet}),
    extType        MAP-EXTENSION.&ExtensionType
                ({ExtensionSet}{@extId})    OPTIONAL}
maxNumOfPrivateExtensions

PCS_Extensions
PCS-Extensions ::= SEQUENCE {
    ...}
MAP-EXTENSION

MAP_EXTENSION
MAP-EXTENSION  ::= CLASS {
&ExtensionType                OPTIONAL,
&extensionId     OBJECT IDENTIFIER }
-- The length of the Object Identifier shall not exceed 16 octets and the
-- number of components of the Object Identifier shall not exceed 16
-- Information Elements copied from TS 29002-310 and TS 29002-750
-- Note: Ext-GeographicalInformation is defined in TS 29002-310 MAP-LCS-DataTypes version5
-- VelocityEstimate is defined in TS 29002-750 MAP-LCS-DataTypes version10
Ext-GeographicalInformation

RRLP_PDU
RRLP-PDU ::= SEQUENCE {
    referenceNumber            INTEGER (0..7),
    component                RRLP-Component
}
RRLP-Component

MsrPosition_Req
MsrPosition-Req ::= SEQUENCE {
    positionInstruct        PositionInstruct,
    referenceAssistData        ReferenceAssistData        OPTIONAL,
    msrAssistData            MsrAssistData            OPTIONAL,
    systemInfoAssistData    SystemInfoAssistData    OPTIONAL,
    gps-AssistData            GPS-AssistData            OPTIONAL,
    extensionContainer        ExtensionContainer        OPTIONAL,
    ...,
    -- Release 98 extension element
rel98-MsrPosition-Req-extension            Rel98-MsrPosition-Req-Extension            OPTIONAL,    
    -- Release 5 extension element
rel5-MsrPosition-Req-extension            Rel5-MsrPosition-Req-Extension            OPTIONAL    
}
-- add this defintion to RRLP-Components module
-- Measurement Position response component
MsrPosition-Rsp

MsrPosition_Rsp
MsrPosition-Rsp ::= SEQUENCE {
    multipleSets            MultipleSets            OPTIONAL,
    referenceIdentity        ReferenceIdentity        OPTIONAL,
    otd-MeasureInfo            OTD-MeasureInfo            OPTIONAL,
    locationInfo            LocationInfo            OPTIONAL,
    gps-MeasureInfo            GPS-MeasureInfo            OPTIONAL,
    locationError            LocationError            OPTIONAL,
    extensionContainer        ExtensionContainer        OPTIONAL,
    ...,    
    -- Release extension here
    rel-98-MsrPosition-Rsp-Extension        
                            Rel-98-MsrPosition-Rsp-Extension        OPTIONAL,
    rel-5-MsrPosition-Rsp-Extension
                            Rel-5-MsrPosition-Rsp-Extension        OPTIONAL
    -- rel-5-MsrPosition-Rsp-Extension and other possible future extensions
    -- are the only information elements that may be included in the 2nd
    -- MsrPosition-Rsp component when RRLP pseudo-segmentation is used
}
-- add this defintion to RRLP-Components module
-- Assistance Data component
AssistanceData

AssistanceData
AssistanceData ::= SEQUENCE {
    referenceAssistData    ReferenceAssistData            OPTIONAL,
    msrAssistData            MsrAssistData            OPTIONAL,
    systemInfoAssistData    SystemInfoAssistData    OPTIONAL,
    gps-AssistData            GPS-AssistData            OPTIONAL,    
    moreAssDataToBeSent        MoreAssDataToBeSent        OPTIONAL,    -- If not present, interpret as only
                                                                -- Assistance Data component used to
                                                                -- deliver entire set of assistance
                                                                -- data.
    extensionContainer        ExtensionContainer        OPTIONAL,
    ...,
    -- Release extension here
    rel98-AssistanceData-Extension    Rel98-AssistanceData-Extension    OPTIONAL,
    rel5-AssistanceData-Extension    Rel5-AssistanceData-Extension    OPTIONAL    
}
-- add this defintion to RRLP-Components module
-- Protocol Error component
ProtocolError

ProtocolError
ProtocolError ::= SEQUENCE {
    errorCause                ErrorCodes,    
    extensionContainer        ExtensionContainer        OPTIONAL,
    ...,
    -- Release extensions here
    rel-5-ProtocolError-Extension Rel-5-ProtocolError-Extension        OPTIONAL
}
-- add these defintions to RRLP-Components module
-- Position instructions
PositionInstruct

PositionInstruct
PositionInstruct ::= SEQUENCE {
    -- Method type
    methodType                MethodType,    
    positionMethod            PositionMethod,
    measureResponseTime        MeasureResponseTime,        
    useMultipleSets            UseMultipleSets,        
    environmentCharacter    EnvironmentCharacter    OPTIONAL    
}
--
MethodType

AccuracyOpt
AccuracyOpt ::= SEQUENCE {
    accuracy        Accuracy    OPTIONAL
}
-- The values of this field are defined in 3GPP TS 23.032 (Uncertainty code)
Accuracy

ReferenceAssistData
ReferenceAssistData ::= SEQUENCE {
    bcchCarrier        BCCHCarrier,                        -- BCCH carrier
    bsic            BSIC,                                -- BSIC
    timeSlotScheme    TimeSlotScheme,                     -- Timeslot scheme
    btsPosition        BTSPosition            OPTIONAL
}
-- ellipsoid point and
-- ellipsoid point with altitude and uncertainty ellipsoid shapes are supported
BTSPosition

MsrAssistData
MsrAssistData ::= SEQUENCE {
     msrAssistList SeqOfMsrAssistBTS
}
SeqOfMsrAssistBTS

MsrAssistBTS
MsrAssistBTS ::= SEQUENCE {
    bcchCarrier            BCCHCarrier,        -- BCCH carrier
    bsic                BSIC,                -- BSIC
    multiFrameOffset    MultiFrameOffset,     -- multiframe offset
    timeSlotScheme        TimeSlotScheme,        -- Timeslot scheme
    roughRTD            RoughRTD,            -- rough RTD value
    -- Location Calculation Assistance data is moved here
    calcAssistanceBTS    CalcAssistanceBTS    OPTIONAL
}
-- Multiframe offset
MultiFrameOffset

SystemInfoAssistData
SystemInfoAssistData ::= SEQUENCE {
    systemInfoAssistList     SeqOfSystemInfoAssistBTS
}
SeqOfSystemInfoAssistBTS

AssistBTSData
AssistBTSData ::= SEQUENCE {
    bsic                BSIC,                -- BSIC
    multiFrameOffset    MultiFrameOffset,    -- multiframe offset
    timeSlotScheme        TimeSlotScheme,        -- Timeslot scheme
    roughRTD            RoughRTD,            -- rough RTD value
    -- Location Calculation Assistance data
    calcAssistanceBTS    CalcAssistanceBTS    OPTIONAL
}
-- E-OTD Location calculation assistance data,
-- CalcAssistanceBTS element is optional not subfields
CalcAssistanceBTS

CalcAssistanceBTS
CalcAssistanceBTS ::= SEQUENCE {
    fineRTD                FineRTD,        -- fine RTD value between base stations
    referenceWGS84        ReferenceWGS84    -- reference coordinates
}
-- Coordinates of neighbour BTS, WGS-84 ellipsoid
ReferenceWGS84

ReferenceWGS84
ReferenceWGS84 ::= SEQUENCE {
    relativeNorth    RelDistance,                -- relative distance (south negative)
    relativeEast    RelDistance,                -- relative distance (west negative)
    -- Relative Altitude is not always known
    relativeAlt        RelativeAlt        OPTIONAL    -- relative altitude
}
-- Fine RTD value between this BTS and the reference BTS    
FineRTD

MultipleSets
MultipleSets ::= SEQUENCE {
    -- number of reference sets
    nbrOfSets            INTEGER (2..3),        
    -- This field actually tells the number of reference BTSs
    nbrOfReferenceBTSs    INTEGER (1..3),
    -- This field is conditional and included optionally only if
    -- nbrOfSets is 3 and number of reference BTSs is 2.
    referenceRelation        ReferenceRelation        OPTIONAL
}
-- Relation between refence BTSs and sets
ReferenceRelation

ReferenceIdentity
ReferenceIdentity ::= SEQUENCE {
    -- Reference BTS list
    refBTSList        SeqOfReferenceIdentityType
}
SeqOfReferenceIdentityType

BSICAndCarrier
BSICAndCarrier ::= SEQUENCE {
    carrier    BCCHCarrier,
    bsic        BSIC
}
RequestIndex

CellIDAndLAC
CellIDAndLAC ::= SEQUENCE {
    referenceLAC    LAC,                -- Location area code
    referenceCI        CellID                -- Cell identity
}
CellID

OTD_MeasureInfo
OTD-MeasureInfo ::= SEQUENCE {
    -- Measurement info elements, OTD-MsrElement is repeated number of times
    -- told in nbrOfReferenceBTSs in MultipleSets, default value is 1
    otdMsrFirstSets        OTD-MsrElementFirst,
    -- if more than one sets are present this element is repeated
    -- NumberOfSets - 1 (-1 = first set)
    otdMsrRestSets        SeqOfOTD-MsrElementRest        OPTIONAL
}
SeqOfOTD-MsrElementRest

OTD_MsrElementFirst
OTD-MsrElementFirst ::= SEQUENCE {
    refFrameNumber            INTEGER (0..42431),                 -- Frame number modulo 42432
    referenceTimeSlot        ModuloTimeSlot,
    toaMeasurementsOfRef    TOA-MeasurementsOfRef    OPTIONAL,
    stdResolution            StdResolution,
    taCorrection            INTEGER (0..960)        OPTIONAL,    -- TA correction
    -- measured neighbors in OTD measurements
    otd-FirstSetMsrs         SeqOfOTD-FirstSetMsrs     OPTIONAL
}
SeqOfOTD-FirstSetMsrs

OTD_MsrElementRest
OTD-MsrElementRest ::= SEQUENCE {
    refFrameNumber            INTEGER (0..42431),                     -- Frame number modulo 42432
    referenceTimeSlot        ModuloTimeSlot,
    toaMeasurementsOfRef    TOA-MeasurementsOfRef        OPTIONAL,
    stdResolution            StdResolution,
    taCorrection            INTEGER (0..960)            OPTIONAL,    -- TA correction
    -- measured neighbors in OTD measurements
    otd-MsrsOfOtherSets     SeqOfOTD-MsrsOfOtherSets    OPTIONAL
}
SeqOfOTD-MsrsOfOtherSets

TOA_MeasurementsOfRef
TOA-MeasurementsOfRef ::= SEQUENCE {
    refQuality            RefQuality,
    numOfMeasurements    NumOfMeasurements
}
RefQuality

OTD_Measurement
OTD-Measurement ::= SEQUENCE {
    nborTimeSlot    ModuloTimeSlot,
    eotdQuality        EOTDQuality,
    otdValue        OTDValue
}
-- This measurement contains the BTS identity and measurement
OTD-MeasurementWithID

OTD_MeasurementWithID
OTD-MeasurementWithID ::=SEQUENCE {
    neighborIdentity    NeighborIdentity,
    nborTimeSlot        ModuloTimeSlot,
    eotdQuality            EOTDQuality,
    otdValue            OTDValue
}
EOTDQuality

EOTDQuality
EOTDQuality ::= SEQUENCE {
    nbrOfMeasurements    INTEGER    (0..7),
    stdOfEOTD            INTEGER (0..31)
}
NeighborIdentity

MultiFrameCarrier
MultiFrameCarrier ::= SEQUENCE {
    bcchCarrier            BCCHCarrier,
    multiFrameOffset    MultiFrameOffset
}            
-- OTD measurement value for neighbour
OTDValue

LocationInfo
LocationInfo ::= SEQUENCE {
    refFrame        INTEGER (0..65535),            -- Reference Frame number
    -- If refFrame is within (42432..65535), it shall be ignored by the receiver
    -- in that case the MS should provide GPS TOW if available
    gpsTOW            INTEGER (0..14399999)    OPTIONAL,    -- GPS TOW
    fixType            FixType,
    -- Note that applicable range for refFrame is 0 - 42431
    -- Possible shapes carried in posEstimate are
    -- ellipsoid point,
    -- ellipsoid point with uncertainty circle
    -- ellipsoid point with uncertainty ellipse
    -- ellipsoid point with altitude and uncertainty ellipsoid
    posEstimate        Ext-GeographicalInformation
}
FixType

GPS_MeasureInfo
GPS-MeasureInfo ::= SEQUENCE {
    -- Measurement info elements
    -- user has to make sure that in this element is number of elements
    -- defined in reference BTS identity
    gpsMsrSetList    SeqOfGPS-MsrSetElement    
}
SeqOfGPS-MsrSetElement

GPS_MsrSetElement
GPS-MsrSetElement ::= SEQUENCE {
    refFrame        INTEGER (0..65535)    OPTIONAL,     -- Reference Frame number
    gpsTOW            GPSTOW24b,                        -- GPS TOW
    -- Note that applicable range for refFrame is 0 - 42431
--N_SAT can be read from number of elements of gps-msrList
    gps-msrList        SeqOfGPS-MsrElement
}
-- 24 bit presentation for GPSTOW
GPSTOW24b

GPS_MsrElement
GPS-MsrElement ::= SEQUENCE {
    satelliteID        SatelliteID,                -- Satellite identifier
    cNo                INTEGER (0..63),            -- carrier noise ratio
    doppler            INTEGER (-32768..32767),     -- doppler, mulltiply by 0.2
    wholeChips        INTEGER (0..1022),            -- whole value of the code phase measurement
    fracChips        INTEGER (0..1024),            -- fractional value of the code phase measurement
                                            -- a value of 1024 shall not be encoded by the sender
                                            -- the receiver shall consider a value of 1024 to be
                                            -- invalid data
    mpathIndic        MpathIndic,                    -- multipath indicator
    pseuRangeRMSErr    INTEGER (0..63)                -- index        
}
-- Multipath indicator
MpathIndic

LocationError
LocationError ::= SEQUENCE {
    locErrorReason                LocErrorReason,
    additionalAssistanceData    AdditionalAssistanceData    OPTIONAL,
    ...
}
LocErrorReason

AdditionalAssistanceData
AdditionalAssistanceData ::= SEQUENCE {
    gpsAssistanceData        GPSAssistanceData        OPTIONAL,
    extensionContainer        ExtensionContainer        OPTIONAL,
    ...
}
GPSAssistanceData

GPS_AssistData
GPS-AssistData ::= SEQUENCE {
    controlHeader        ControlHeader
}
-- More Assistance Data To Be Sent IE
-- More Assistance Data Components On the Way indication for delivery of an entire set of assistance
-- data in multiple Assistance Data components.
MoreAssDataToBeSent

ControlHeader
ControlHeader ::= SEQUENCE {
    -- Field type Present information
    referenceTime        ReferenceTime        OPTIONAL,
    refLocation            RefLocation            OPTIONAL,
    dgpsCorrections        DGPSCorrections        OPTIONAL,
    navigationModel        NavigationModel        OPTIONAL,
    ionosphericModel        IonosphericModel        OPTIONAL,
    utcModel            UTCModel            OPTIONAL,
    almanac            Almanac            OPTIONAL,
    acquisAssist        AcquisAssist        OPTIONAL,
    realTimeIntegrity SeqOf-BadSatelliteSet OPTIONAL
}
ReferenceTime

ReferenceTime
ReferenceTime ::= SEQUENCE {
    gpsTime                GPSTime,
    gsmTime                GSMTime                OPTIONAL,
    gpsTowAssist        GPSTOWAssist        OPTIONAL
}
-- GPS Time includes week number and time-of-week (TOW)
GPSTime

GPSTime
GPSTime ::= SEQUENCE {
    gpsTOW23b            GPSTOW23b,
    gpsWeek                GPSWeek
}
-- GPSTOW, range 0-604799.92, resolution 0.08 sec, 23-bit presentation
GPSTOW23b

GPSTOWAssistElement
GPSTOWAssistElement ::= SEQUENCE {
    satelliteID            SatelliteID,
    tlmWord                TLMWord,
    antiSpoof            AntiSpoofFlag,
    alert                AlertFlag,
    tlmRsvdBits            TLMReservedBits
}
-- TLM Word, 14 bits
TLMWord

GSMTime
GSMTime ::= SEQUENCE {
    bcchCarrier        BCCHCarrier,    -- BCCH carrier
    bsic            BSIC,            -- BSIC
    frameNumber        FrameNumber,
    timeSlot        TimeSlot,
    bitNumber        BitNumber
}
-- Frame number
FrameNumber

RefLocation
RefLocation ::= SEQUENCE {
    threeDLocation            Ext-GeographicalInformation
}
-- DGPS Corrections IE
DGPSCorrections

DGPSCorrections
DGPSCorrections ::= SEQUENCE {
    gpsTOW        INTEGER (0..604799),    -- DGPS reference time
    status        INTEGER (0..7),
    -- N_SAT can be read from number of elements of satList
    satList        SeqOfSatElement     
}
SeqOfSatElement

SatElement
SatElement ::= SEQUENCE {
    satelliteID        SatelliteID,
--- Sequence number for ephemeris
    iode             INTEGER (0..239),
    -- User Differential Range Error
    udre            INTEGER (0..3),        
    -- Pseudo Range Correction, range is
    -- -655.04 - +655.04,
    pseudoRangeCor    INTEGER (-2047..2047),     
    -- Pseudo Range Rate Correction, range is
    -- -4.064 - +4.064,
    rangeRateCor    INTEGER (-127..127),
-- Delta Pseudo Range Correction 2     
    deltaPseudoRangeCor2     INTEGER (-127..127),    -- This IE shall be ignored by the receiver and
                                                    -- set to zero by the sender
    -- Delta Pseudo Range Correction 2    
    deltaRangeRateCor2        INTEGER (-7..7),        -- This IE shall be ignored by the receiver and
                                                    -- set to zero by the sender
    -- Delta Pseudo Range Correction 3
    deltaPseudoRangeCor3     INTEGER (-127..127),    -- This IE shall be ignored by the receiver and
                                                    -- set to zero by the sender
    -- Delta Pseudo Range Correction 3
    deltaRangeRateCor3        INTEGER (-7..7)            -- This IE shall be ignored by the receiver and
                                                    -- set to zero by the sender
}
SatelliteID

NavigationModel
NavigationModel ::= SEQUENCE {
    navModelList    SeqOfNavModelElement    
}
-- navigation model satellite list
SeqOfNavModelElement

NavModelElement
NavModelElement ::= SEQUENCE {
    satelliteID        SatelliteID,            
    satStatus        SatStatus        -- satellite status
}
-- the Status of the navigation model
SatStatus

UncompressedEphemeris
UncompressedEphemeris ::= SEQUENCE {
    ephemCodeOnL2    INTEGER (0..3),
    ephemURA        INTEGER (0..15),
    ephemSVhealth    INTEGER (0..63),
    ephemIODC        INTEGER    (0..1023),
    ephemL2Pflag    INTEGER (0..1),
    ephemSF1Rsvd    EphemerisSubframe1Reserved,
    ephemTgd        INTEGER (-128..127),
    ephemToc        INTEGER (0..37799),
    ephemAF2        INTEGER (-128..127),
    ephemAF1        INTEGER (-32768..32767),
    ephemAF0        INTEGER (-2097152..2097151),
    ephemCrs        INTEGER (-32768..32767),
    ephemDeltaN        INTEGER (-32768..32767),
    ephemM0            INTEGER (-2147483648..2147483647),
    ephemCuc        INTEGER (-32768..32767),
    ephemE            INTEGER (0..4294967295),
    ephemCus        INTEGER (-32768..32767),
    ephemAPowerHalf    INTEGER (0..4294967295),
    ephemToe        INTEGER (0..37799),
    ephemFitFlag    INTEGER (0..1),
    ephemAODA        INTEGER (0..31),
    ephemCic        INTEGER (-32768..32767),
    ephemOmegaA0    INTEGER (-2147483648..2147483647),
    ephemCis        INTEGER (-32768..32767),
    ephemI0            INTEGER (-2147483648..2147483647),
    ephemCrc        INTEGER (-32768..32767),
    ephemW            INTEGER (-2147483648..2147483647),
    ephemOmegaADot    INTEGER (-8388608..8388607),
    ephemIDot        INTEGER (-8192..8191)
}
-- Reserved bits in subframe 1 of navigation message
EphemerisSubframe1Reserved

EphemerisSubframe1Reserved
EphemerisSubframe1Reserved ::= SEQUENCE {
    reserved1        INTEGER (0..8388607),    -- 23-bit field
    reserved2        INTEGER (0..16777215),    -- 24-bit field
    reserved3        INTEGER (0..16777215),    -- 24-bit field
    reserved4        INTEGER (0..65535)        -- 16-bit field
}
-- Ionospheric Model IE
IonosphericModel

IonosphericModel
IonosphericModel ::= SEQUENCE {
    alfa0            INTEGER (-128..127),
    alfa1            INTEGER (-128..127),
    alfa2            INTEGER (-128..127),
    alfa3            INTEGER (-128..127),
    beta0            INTEGER (-128..127),
    beta1            INTEGER (-128..127),
    beta2            INTEGER (-128..127),
    beta3            INTEGER (-128..127)
}            
-- Universal Time Coordinate Model
UTCModel

UTCModel
UTCModel ::= SEQUENCE {
    utcA1            INTEGER (-8388608..8388607),
    utcA0            INTEGER (-2147483648..2147483647),
    utcTot            INTEGER (0..255),
    utcWNt            INTEGER (0..255),
    utcDeltaTls        INTEGER (-128..127),
    utcWNlsf        INTEGER (0..255),
    utcDN            INTEGER (-128..127),
    utcDeltaTlsf    INTEGER (-128..127)
}
-- Almanac, Long term model
-- NOTE: These are parameters are subset of the ephemeris
-- NOTE: But with reduced resolution and accuracy
Almanac

Almanac
Almanac ::= SEQUENCE {
    alamanacWNa        INTEGER (0..255),    -- Once per message
    -- navigation model satellite list.
    -- The size of almanacList is actually Nums_Sats_Total field
    almanacList        SeqOfAlmanacElement        
}
SeqOfAlmanacElement

AlmanacElement
AlmanacElement ::= SEQUENCE {
    satelliteID            SatelliteID,
    almanacE            INTEGER (0..65535),
    alamanacToa            INTEGER (0..255),
    almanacKsii            INTEGER (-32768..32767),
    almanacOmegaDot        INTEGER (-32768..32767),
    almanacSVhealth        INTEGER (0..255),
    almanacAPowerHalf    INTEGER (0..16777215),
    almanacOmega0        INTEGER (-8388608..8388607),
    almanacW            INTEGER (-8388608..8388607),
    almanacM0            INTEGER (-8388608..8388607),
    almanacAF0            INTEGER (-1024..1023),
    almanacAF1            INTEGER (-1024..1023)
}
-- Acquisition Assistance
AcquisAssist

AcquisAssist
AcquisAssist ::= SEQUENCE {
    -- Number of Satellites can be read from acquistList
    timeRelation    TimeRelation,
    -- Acquisition assistance list
    -- The size of Number of Satellites is actually Number of Satellites field
    acquisList        SeqOfAcquisElement        
}
SeqOfAcquisElement

TimeRelation
TimeRelation ::= SEQUENCE {
    --
    gpsTOW        GPSTOW23b,        -- 23b presentation
    gsmTime        GSMTime        OPTIONAL
}
-- data occuring per number of satellites
AcquisElement

AcquisElement
AcquisElement ::= SEQUENCE {
    svid                    SatelliteID,
    -- Doppler 0th order term,
    -- -5120.0 - 5117.5 Hz (= -2048 - 2047 with 2.5 Hz resolution)
    doppler0                INTEGER (-2048..2047),    
    addionalDoppler            AddionalDopplerFields    OPTIONAL,
    codePhase                INTEGER (0..1022),    -- Code Phase
    intCodePhase            INTEGER (0..19),    -- Integer Code Phase
    gpsBitNumber            INTEGER (0..3),     -- GPS bit number
    codePhaseSearchWindow    INTEGER (0..15),    -- Code Phase Search Window
    addionalAngle            AddionalAngleFields        OPTIONAL
}
AddionalDopplerFields

AddionalDopplerFields
AddionalDopplerFields ::= SEQUENCE {
    -- Doppler 1st order term, -1.0 - +0.5 Hz/sec
    -- (= -42 + (0 to 63) with 1/42 Hz/sec. resolution)
    doppler1                INTEGER (0..63),
    dopplerUncertainty        INTEGER (0..7)
}
AddionalAngleFields

AddionalAngleFields
AddionalAngleFields    ::= SEQUENCE {
    -- azimuth angle, 0 - 348.75 deg (= 0 - 31 with 11.25 deg resolution)
    azimuth                    INTEGER (0..31),
    -- elevation angle, 0 - 78.75 deg (= 0 - 7 with 11.25 deg resolution)
    elevation                INTEGER (0..7)
}
-- Real-Time Integrity
-- number of bad satellites can be read from this element
SeqOf-BadSatelliteSet

Rel98_MsrPosition_Req_Extension
Rel98-MsrPosition-Req-Extension ::= SEQUENCE {
    rel98-Ext-ExpOTD            Rel98-Ext-ExpOTD        OPTIONAL,    -- ExpectedOTD extension
    ..., 
    gpsTimeAssistanceMeasurementRequest   NULL   OPTIONAL, 
    gpsReferenceTimeUncertainty        GPSReferenceTimeUncertainty   OPTIONAL 
-- Further R98 extensions here
}
Rel98-AssistanceData-Extension

Rel98_AssistanceData_Extension
Rel98-AssistanceData-Extension ::= SEQUENCE {
    rel98-Ext-ExpOTD            Rel98-Ext-ExpOTD        OPTIONAL,    -- ExpectedOTD extension
    ..., 
    gpsTimeAssistanceMeasurementRequest   NULL   OPTIONAL,
    gpsReferenceTimeUncertainty    GPSReferenceTimeUncertainty       OPTIONAL
-- Further R98 extensions here
}
-- Release 98 ExpOTD extension
Rel98-Ext-ExpOTD

Rel98_Ext_ExpOTD
Rel98-Ext-ExpOTD ::= SEQUENCE {
-- If MsrAssistBTS is included in message, msrAssistData-R98-ExpOTD shall be included.
    msrAssistData-R98-ExpOTD            MsrAssistData-R98-ExpOTD            OPTIONAL,
-- If SystemInfoAssistaData is included in message, systemInfoAssistData-R98-ExpOTD shall be
-- included.
    systemInfoAssistData-R98-ExpOTD    SystemInfoAssistData-R98-ExpOTD    OPTIONAL
}
-- MsrAssistData R98 extension
MsrAssistData-R98-ExpOTD

MsrAssistData_R98_ExpOTD
MsrAssistData-R98-ExpOTD ::= SEQUENCE {
     msrAssistList-R98-ExpOTD             SeqOfMsrAssistBTS-R98-ExpOTD
}
-- Indexes in SeqOfMsrAssistBTS-R98-ExpOTD refer to SeqOfMsrAssistBTS
-- If the index exceeds the SegOfMsrAssistBTS range or if there is other
-- inconsistencies between the BTS indices, the MS shall apply protocol
-- error cause incorrectData
SeqOfMsrAssistBTS-R98-ExpOTD

MsrAssistBTS_R98_ExpOTD
MsrAssistBTS-R98-ExpOTD ::= SEQUENCE {
    expectedOTD                ExpectedOTD,
    expOTDUncertainty        ExpOTDUncertainty
}
-- SystemInfoAssistData R98 extension
SystemInfoAssistData-R98-ExpOTD

SystemInfoAssistData_R98_ExpOTD
SystemInfoAssistData-R98-ExpOTD ::= SEQUENCE {
    systemInfoAssistListR98-ExpOTD     SeqOfSystemInfoAssistBTS-R98-ExpOTD
}
-- SeqOfSystemInfoAssistBTS-R98-ExpOTD index refer to SeqOfSystemInfoAssistBTS
-- If the index exceeds the SegOfSystemInfoAssistBTS range or if there is other
-- inconsistencies between the BTS indices, the MS shall apply protocol
-- error cause incorrectData
SeqOfSystemInfoAssistBTS-R98-ExpOTD

AssistBTSData_R98_ExpOTD
AssistBTSData-R98-ExpOTD ::= SEQUENCE {
    expectedOTD                ExpectedOTD,
    expOTDuncertainty        ExpOTDUncertainty    -- Uncertainty of expected OTD
}
-- Expected OTD value between nbor base station and reference BTS
-- at MS's current estimated location.
ExpectedOTD

GPSTimeAssistanceMeasurements
GPSTimeAssistanceMeasurements ::= SEQUENCE {
    referenceFrameMSB  INTEGER (0 .. 63),                 -- MSB of frame number
    gpsTowSubms        INTEGER (0 .. 9999)   OPTIONAL,     -- in units of 100ns, for MS based AGPS
    deltaTow           INTEGER (0 .. 127)   OPTIONAL,      -- for MS assisted AGPS
    gpsReferenceTimeUncertainty        GPSReferenceTimeUncertainty   OPTIONAL
}
Rel-98-MsrPosition-Rsp-Extension

Rel_98_MsrPosition_Rsp_Extension
Rel-98-MsrPosition-Rsp-Extension ::= SEQUENCE {
    -- First extension to Release 98
    rel-98-Ext-MeasureInfo    SEQUENCE {
        otd-MeasureInfo-R98-Ext    OTD-MeasureInfo-R98-Ext        OPTIONAL
    },
    ..., 
    timeAssistanceMeasurements    GPSTimeAssistanceMeasurements   OPTIONAL 
    -- Further R98 extensions here
}
-- This is an addition to OTD-MeasureInfo element defined in original message,
-- If OTD-MeasureInfo is absent, or if one or more OTD-MsrElementRest are present
-- OTD-MeasureInfo-R98-Ext shall be absent.
-- OTD-MeasureInfo-R98-Ext
OTD-MeasureInfo-R98-Ext

_0Rel_98_MsrPosition_Rsp_Extension
SEQUENCE {
otd-MeasureInfo-R98-Ext    OTD-MeasureInfo-R98-Ext        OPTIONAL
}

OTD_MeasureInfo_R98_Ext
OTD-MeasureInfo-R98-Ext ::= SEQUENCE {
    -- Measurement info elements
    otdMsrFirstSets-R98-Ext        OTD-MsrElementFirst-R98-Ext
}
-- OTD measurement information Ext for the first set only
OTD-MsrElementFirst-R98-Ext

OTD_MsrElementFirst_R98_Ext
OTD-MsrElementFirst-R98-Ext ::= SEQUENCE {
    -- additional measured neighbors in OTD measurements
    otd-FirstSetMsrs-R98-Ext     SeqOfOTD-FirstSetMsrs-R98-Ext     OPTIONAL
}
SeqOfOTD-FirstSetMsrs-R98-Ext

Rel_5_MsrPosition_Rsp_Extension
Rel-5-MsrPosition-Rsp-Extension ::= SEQUENCE {
    extended-reference    Extended-reference     OPTIONAL,
    -- The extended-reference shall be included by the MS if and only if previously
    -- received from the SMLC in a Measure Position Request. When included, the value sent
    -- by the MS shall equal the value received from the SMLC.
    -- extension to Release 5, for RRLP pseudo-segmentation here
    otd-MeasureInfo-5-Ext    OTD-MeasureInfo-5-Ext    OPTIONAL,
    ulPseudoSegInd            UlPseudoSegInd            OPTIONAL,    -- Included when uplink RRLP
    -- Pseudo-segmentation is used, not included when no uplink pseudo-segmentation is used
    ...
                    -- Possibly more extensions for Release 5 here later
}
Extended-reference

Extended_reference
Extended-reference ::= SEQUENCE {
    smlc-code            INTEGER (0..63),
    transaction-ID        INTEGER (0..262143)
}
OTD-MeasureInfo-5-Ext

Rel5_MsrPosition_Req_Extension
Rel5-MsrPosition-Req-Extension ::= SEQUENCE {
    extended-reference            Extended-reference,
    ...
    -- Possibly more extensions for Release 5 here later
}
Rel5-AssistanceData-Extension

Rel5_AssistanceData_Extension
Rel5-AssistanceData-Extension ::= SEQUENCE {
    extended-reference            Extended-reference,
    ...
-- Possibly more extensions for Release 5 here later
}
Rel-5-ProtocolError-Extension

Rel_5_ProtocolError_Extension
Rel-5-ProtocolError-Extension::= SEQUENCE {
    extended-reference            Extended-reference     OPTIONAL,
    -- The extended-reference shall be included by the MS if and only if previously
    -- received from the SMLC.
    -- When included, the value sent by the MS shall equal the value received from the SMLC.
    ...
    -- Possibly more extensions for Release 5 here later
}
END

RRLP_Component
RRLP-Component ::= CHOICE {
    msrPositionReq            MsrPosition-Req,
    msrPositionRsp            MsrPosition-Rsp,
    assistanceData            AssistanceData,
    assistanceDataAck        NULL,
    protocolError            ProtocolError,
    ...
}
-- add this definition to RRLP-Components module
-- Measurement Position request component
MsrPosition-Req

MethodType
MethodType ::= CHOICE {
    msAssisted        AccuracyOpt,    -- accuracy is optional
    msBased            Accuracy,        -- accuracy is mandatory
    msBasedPref        Accuracy,        -- accuracy is mandatory
    msAssistedPref    Accuracy         -- accuracy is mandatory
}
-- Accuracy of the location estimation
AccuracyOpt

SystemInfoAssistBTS
SystemInfoAssistBTS ::= CHOICE {
    notPresent        NULL,
    present            AssistBTSData
}
-- Actual assistance data for system information base station
AssistBTSData

ReferenceIdentityType
ReferenceIdentityType ::= CHOICE {
    bsicAndCarrier    BSICAndCarrier,        -- BSIC and Carrier
    ci                CellID,                -- Cell ID, LAC not needed
    requestIndex    RequestIndex,        -- Index to Requested Neighbor List
    systemInfoIndex    SystemInfoIndex,    -- Index to System info list, this type of ref. identity
                                        -- shall not be used by the MS unless it has received
                                        -- the SystemInfoAssistData from the SMLC for this cell.
    ciAndLAC        CellIDAndLAC        -- CI and LAC
}
BSICAndCarrier

OTD_MsrsOfOtherSets
OTD-MsrsOfOtherSets ::= CHOICE {
    identityNotPresent    OTD-Measurement,    
    identityPresent        OTD-MeasurementWithID
}
-- For this OTD measurement identity is same as the identity of BTS
-- in the first set with same sequence number
OTD-Measurement

NeighborIdentity
NeighborIdentity ::= CHOICE {
    bsicAndCarrier        BSICAndCarrier,        -- BSIC and Carrier
    ci                    CellID,                -- Cell ID, LAC not needed
    multiFrameCarrier    MultiFrameCarrier,     -- MultiFrameOffest and BSIC
    requestIndex        RequestIndex,        -- Index to Requested Neighbor List
    systemInfoIndex        SystemInfoIndex,    -- Index to System info list, this type of neighbour
                                            -- identity shall not be used by the MS unless it has
                                            -- received the SystemInfoAssistData from the SMLC for
                                            -- this cell.
    ciAndLAC            CellIDAndLAC        -- CI and LAC
}
-- Multiframe and carrier
MultiFrameCarrier

SatStatus
SatStatus ::= CHOICE {
    -- New satellite, new Navigation Model
    newSatelliteAndModelUC    UncompressedEphemeris,
    -- Existing satellite, Existing Navigation Model
    oldSatelliteAndModel    NULL,
    -- Existing satellite, new Navigation Model
    newNaviModelUC            UncompressedEphemeris,
    ...
}
-- Uncompressed satellite emhemeris and clock corrections
UncompressedEphemeris

SystemInfoAssistBTS_R98_ExpOTD
SystemInfoAssistBTS-R98-ExpOTD ::= CHOICE {
    notPresent        NULL,
    present            AssistBTSData-R98-ExpOTD
}
-- This element completes AssistBTSData IE
AssistBTSData-R98-ExpOTD

maxNumOfPrivateExtensions
const integer maxNumOfPrivateExtensions  INTEGER ::= 10
ExtensionSet

maxExt_GeographicalInformation
const integer maxExt-GeographicalInformation  INTEGER ::= 20
-- the maximum length allows for further shapes in GSM 03.32 to be included in later versions
-- of GSM 09.02
-- Information Elements copied from TS 29002-750
-- MAP-LCS-DataTypes {
--    itu-t identified-organization (4) etsi (0) mobileDomain (0)
--    gsm-Network (1) modules (3) map-LCS-DataTypes (25) version10 (10)}
VelocityEstimate

FixType_twoDFix_
const FixType twoDFix (0)

FixType_threeDFix_
const FixType threeDFix (1)

maxGPSAssistanceData
const integer maxGPSAssistanceData    INTEGER ::= 40
-- Protocol Error Causes
ErrorCodes