2 -- Taken from OMA UserPlane Location Protocol
3 -- http://member.openmobilealliance.org/ftp/Public_documents/LOC/Permanent_documents/OMA-TS-ULP-V2_0_5-20191028-A.zip
6 -- 11.5 Common elements (SUPL Version 1)
8 ULP-Components DEFINITIONS AUTOMATIC TAGS ::=
11 EXPORTS Version, SessionID, IPAddress, SLPAddress, LocationId, Position, StatusCode, Velocity, QoP, PosMethod, Ver, SETId, PrimaryCPICH-Info, CellParametersID, FQDN;
14 Ver2-CellInfo-extension
15 FROM Ver2-ULP-Components;
17 -- protocol version expressed as x.y.z (e.g., 5.1.0)
18 Version ::= SEQUENCE {
21 servind INTEGER(0..255)}
23 SessionID ::= SEQUENCE {
24 setSessionID SetSessionID OPTIONAL, -- the semantics of OPTIONAL applies to the encoding only. The parameter itself is MANDATORY. This is introduced only to minimize bandwidth for the SUPL INIT message. Since the setSessionID is allocated by the SET, there is no setSessionID to be transmitted in the SUPL INIT message.
25 slpSessionID SlpSessionID OPTIONAL -- the semantics of OPTIONAL applies to the encoding only. The parameter itself is MANDATORY. This is introduced only to minimize bandwidth for the SUPL START, SUPL TRIGGERED START and SUPL SET INIT messages. Since the slpSessionID is allocated by the SLP, there is no slpSessionID to be transmitted in these messages (with the exception described in section 10.14).
28 SetSessionID ::= SEQUENCE {sessionId INTEGER(0..65535),
32 msisdn OCTET STRING(SIZE (8)),
33 mdn OCTET STRING(SIZE (8)),
34 min BIT STRING(SIZE (34)), -- coded according to TIA-553
35 imsi OCTET STRING(SIZE (8)),
36 nai IA5String(SIZE (1..1000)),
39 ver2-imei OCTET STRING(SIZE(8))}
40 -- msisdn, mnd, imsi and imei are a BCD (Binary Coded Decimal) string
41 -- represent digits from 0 through 9,
42 -- two digits per octet, each digit encoded 0000 to 1001 (0 to 9)
43 -- bits 8765 of octet n encoding digit 2n
44 -- bits 4321 of octet n encoding digit 2(n-1) +1
45 -- not used digits in the string shall be filled with 1111
46 -- imei SHALL NOT be used unless the SLP indicates support for SUPL ver 2.0.3
49 SlpSessionID ::= SEQUENCE {
50 sessionID OCTET STRING(SIZE (4)),
53 IPAddress ::= CHOICE {
54 ipv4Address OCTET STRING(SIZE (4)),
55 ipv6Address OCTET STRING(SIZE (16))}
57 SLPAddress ::= CHOICE {iPAddress IPAddress,
62 VisibleString(FROM ("a".."z" | "A".."Z" | "0".."9" |".-"))(SIZE (1..255))
64 Ver ::= BIT STRING(SIZE (64))
66 LocationId ::= SEQUENCE {cellInfo CellInfo,
70 Status ::= ENUMERATED {stale(0), current(1), unknown(2), ...}
73 gsmCell GsmCellInformation,
74 wcdmaCell WcdmaCellInformation, --WCDMA Cell Information/TD-SCDMA Cell Information
75 cdmaCell CdmaCellInformation,
77 ver2-CellInfo-extension Ver2-CellInfo-extension}
79 Position ::= SEQUENCE {
80 timestamp UTCTime, -- shall include seconds and shall use UTC time.
81 positionEstimate PositionEstimate,
82 velocity Velocity OPTIONAL,
85 PositionEstimate ::= SEQUENCE {
86 latitudeSign ENUMERATED {north, south},
87 latitude INTEGER(0..8388607),
88 longitude INTEGER(-8388608..8388607),
90 SEQUENCE {uncertaintySemiMajor INTEGER(0..127),
91 uncertaintySemiMinor INTEGER(0..127),
92 orientationMajorAxis INTEGER(0..180)} OPTIONAL, -- angle in degree between major axis and North
93 confidence INTEGER(0..100) OPTIONAL,
94 altitudeInfo AltitudeInfo OPTIONAL,
95 ...} -- Coding as in [3GPP GAD]
97 AltitudeInfo ::= SEQUENCE {
98 altitudeDirection ENUMERATED {height, depth},
99 altitude INTEGER(0..32767),
100 altUncertainty INTEGER(0..127),
101 ... } -- based on [3GPP GAD]
103 CdmaCellInformation ::= SEQUENCE {
104 refNID INTEGER(0..65535), -- Network Id
105 refSID INTEGER(0..32767), -- System Id
106 refBASEID INTEGER(0..65535), -- Base Station Id
107 refBASELAT INTEGER(0..4194303), -- Base Station Latitude
108 reBASELONG INTEGER(0..8388607), -- Base Station Longitude
109 refREFPN INTEGER(0..511), -- Base Station PN Code
110 refWeekNumber INTEGER(0..65535), -- GPS Week Number
111 refSeconds INTEGER(0..4194303), -- GPS Seconds
114 GsmCellInformation ::= SEQUENCE {
115 refMCC INTEGER(0..999), -- Mobile Country Code
116 refMNC INTEGER(0..999), -- Mobile Network Code
117 refLAC INTEGER(0..65535), -- Location area code
118 refCI INTEGER(0..65535), -- Cell identity
120 ta INTEGER(0..255) OPTIONAL, --Timing Advance
123 WcdmaCellInformation ::= SEQUENCE {
124 refMCC INTEGER(0..999), -- Mobile Country Code
125 refMNC INTEGER(0..999), -- Mobile Network Code
126 refUC INTEGER(0..268435455), -- Cell identity
127 frequencyInfo FrequencyInfo OPTIONAL,
128 primaryScramblingCode INTEGER(0..511) OPTIONAL, -- Not applicable for TDD
129 measuredResultsList MeasuredResultsList OPTIONAL,
131 cellParametersId INTEGER(0..127) OPTIONAL, -- Not applicable for FDD
132 timingAdvance TimingAdvance OPTIONAL -- Not applicable for FDD
135 TimingAdvance ::= SEQUENCE {
136 ta INTEGER (0..8191),
137 tAResolution TAResolution OPTIONAL, --If missing, resolution is 0.125 chips
138 chipRate ChipRate OPTIONAL, --If missing, chip rate is 1.28 Mchip/s
141 TAResolution ::= ENUMERATED {res10chip(0),res05chip(1),res0125chip(2), ...} -- Corresponding to 1.0-chip, 0.5-chip and 0.125-chip resolutions, respectively
143 ChipRate ::= ENUMERATED {tdd128(0),tdd384(1), tdd768(2), ...} --Corresponding to 1.28-Mchips/s, 3.84-Mchips/s and 7.68-Mchips/s chip rates, respectively
146 FrequencyInfo ::= SEQUENCE {
147 modeSpecificInfo CHOICE {fdd FrequencyInfoFDD,
148 tdd FrequencyInfoTDD,
152 FrequencyInfoFDD ::= SEQUENCE {
153 uarfcn-UL UARFCN OPTIONAL,
157 FrequencyInfoTDD ::= SEQUENCE {uarfcn-Nt UARFCN,
160 UARFCN ::= INTEGER(0..16383)
162 NMR ::= SEQUENCE (SIZE (1..15)) OF NMRelement
164 NMRelement ::= SEQUENCE {
165 arfcn INTEGER(0..1023),
167 rxLev INTEGER(0..63),
170 MeasuredResultsList ::= SEQUENCE (SIZE (1..maxFreq)) OF MeasuredResults
172 MeasuredResults ::= SEQUENCE {
173 frequencyInfo FrequencyInfo OPTIONAL,
174 utra-CarrierRSSI UTRA-CarrierRSSI OPTIONAL,
175 cellMeasuredResultsList CellMeasuredResultsList OPTIONAL}
177 CellMeasuredResultsList ::=
178 SEQUENCE (SIZE (1..maxCellMeas)) OF CellMeasuredResults
180 -- SPARE: UTRA-CarrierRSSI, Max = 76
181 -- Values above Max are spare
182 UTRA-CarrierRSSI ::= INTEGER(0..127)
184 CellMeasuredResults ::= SEQUENCE {
185 cellIdentity INTEGER(0..268435455) OPTIONAL,
188 SEQUENCE {primaryCPICH-Info PrimaryCPICH-Info,
189 cpich-Ec-N0 CPICH-Ec-N0 OPTIONAL,
190 cpich-RSCP CPICH-RSCP OPTIONAL,
191 pathloss Pathloss OPTIONAL},
193 SEQUENCE {cellParametersID CellParametersID,
194 proposedTGSN TGSN OPTIONAL,
195 primaryCCPCH-RSCP PrimaryCCPCH-RSCP OPTIONAL,
196 pathloss Pathloss OPTIONAL,
197 timeslotISCP-List TimeslotISCP-List OPTIONAL --NOTE: TimeSlotISCP measurement list cannot be interpreted without the knowledge of Cell Info as defined in [3GPP RRC]
200 CellParametersID ::= INTEGER(0..127)
202 TGSN ::= INTEGER(0..14)
204 PrimaryCCPCH-RSCP ::= INTEGER(0..127)
206 -- SPARE: TimeslotISCP, Max = 91
207 -- Values above Max are spare
208 TimeslotISCP ::= INTEGER(0..127)
210 TimeslotISCP-List ::= SEQUENCE (SIZE (1..maxTS)) OF TimeslotISCP
212 PrimaryCPICH-Info ::= SEQUENCE {primaryScramblingCode INTEGER(0..511)}
214 -- SPARE: CPICH-Ec-No, Max = 49
215 -- Values above Max are spare
216 CPICH-Ec-N0 ::= INTEGER(0..63)
218 -- SPARE: CPICH- RSCP, data range from 0 to 91 and from 123 to 127.
219 -- Values from 92 to 122 are spare
220 -- the encoding of cpich-RSCP is (as per [3GPP RRC] V5.11.0)
222 -- cpich-RSCP = 123 CPICH RSCP <-120 dBm
223 -- cpich-RSCP = 124 -120 ? CPICH RSCP < -119 dBm
224 -- cpich-RSCP = 125 -119 ? CPICH RSCP < -118 dBm
225 -- cpich-RSCP = 126 -118 ? CPICH RSCP < -117 dBm
226 -- cpich-RSCP = 127 -117 ? CPICH RSCP < -116 dBm
227 -- cpich-RSCP = 0 -116 ? CPICH RSCP < -115 dBm
228 -- cpich-RSCP = 1 -115 ? CPICH RSCP < -114 dBm
230 -- cpich-RSCP = 89 -27 ? CPICH RSCP < -26 dBm
231 -- cpich-RSCP = 90 -26 ? CPICH RSCP < -25 dBm
232 -- cpich-RSCP = 91 -25 ? CPICH RSCP dBm
234 CPICH-RSCP ::= INTEGER(0..127)
236 -- SPARE: Pathloss, Max = 158
237 -- Values above Max are spare
238 Pathloss ::= INTEGER(46..173)
240 maxCellMeas INTEGER ::= 32
242 maxFreq INTEGER ::= 8
246 StatusCode ::= ENUMERATED {
247 unspecified(0), systemFailure(1), unexpectedMessage(2), protocolError(3),
248 dataMissing(4), unexpectedDataValue(5), posMethodFailure(6),
249 posMethodMismatch(7), posProtocolMismatch(8), targetSETnotReachable(9),
250 versionNotSupported(10), resourceShortage(11), invalidSessionId(12),
251 nonProxyModeNotSupported(13), proxyModeNotSupported(14),
252 positioningNotPermitted(15), authNetFailure(16), authSuplinitFailure(17), consentDeniedByUser(100), consentGrantedByUser(101), ..., ver2-incompatibleProtectionLevel(18), ver2-serviceNotSupported(19), ver2-insufficientInterval(20), ver2-noSUPLCoverage(21), ver2-sessionStopped(102), ver2-appIdDenied(103)}
255 horacc INTEGER(0..127),
256 veracc INTEGER(0..127) OPTIONAL, -- as defined in [3GPP GAD] "uncertainty altitude"
257 maxLocAge INTEGER(0..65535) OPTIONAL,
258 delay INTEGER(0..7) OPTIONAL, -- as defined in [3GPP RRLP]
260 ver2-responseTime INTEGER (1..128) OPTIONAL}
262 Velocity ::= CHOICE { -- velocity definition as per [3GPP GAD]
264 horandvervel Horandvervel,
265 horveluncert Horveluncert,
266 horandveruncert Horandveruncert,
269 Horvel ::= SEQUENCE {
270 bearing BIT STRING(SIZE (9)),
271 horspeed BIT STRING(SIZE (16)),
274 Horandvervel ::= SEQUENCE {
275 verdirect BIT STRING(SIZE (1)),
276 bearing BIT STRING(SIZE (9)),
277 horspeed BIT STRING(SIZE (16)),
278 verspeed BIT STRING(SIZE (8)),
281 Horveluncert ::= SEQUENCE {
282 bearing BIT STRING(SIZE (9)),
283 horspeed BIT STRING(SIZE (16)),
284 uncertspeed BIT STRING(SIZE (8)),
287 Horandveruncert ::= SEQUENCE {
288 verdirect BIT STRING(SIZE (1)),
289 bearing BIT STRING(SIZE (9)),
290 horspeed BIT STRING(SIZE (16)),
291 verspeed BIT STRING(SIZE (8)),
292 horuncertspeed BIT STRING(SIZE (8)),
293 veruncertspeed BIT STRING(SIZE (8)),
296 PosMethod ::= ENUMERATED {
297 agpsSETassisted(0), agpsSETbased(1), agpsSETassistedpref(2), agpsSETbasedpref(3), autonomousGPS(4), aflt(5), ecid(6), eotd(7), otdoa(8), noPosition(9), ..., ver2-historicalDataRetrieval(10), ver2-agnssSETassisted(11), ver2-agnssSETbased(12), ver2-agnssSETassistedpref(13), ver2-agnssSETbasedpref(14), ver2-autonomousGNSS(15), ver2-sessioninfoquery(16), ver2-mbs(17)}
302 -- 11.6 Common elements (SUPL Version 2)
304 Ver2-ULP-Components DEFINITIONS AUTOMATIC TAGS ::=
307 EXPORTS Ver2-CellInfo-extension, MultipleLocationIds, SupportedNetworkInformation, CauseCode, UTRAN-GPSReferenceTimeAssistance, UTRAN-GPSReferenceTimeResult, SPCSETKey, SPCTID, SPCSETKeylifetime, UTRAN-GANSSReferenceTimeAssistance, UTRAN-GANSSReferenceTimeResult, GNSSPosTechnology, GANSSSignals, ThirdParty, ApplicationID, ReportingCap, Coordinate, CircularArea, EllipticalArea, PolygonArea, Ver2-HighAccuracyPosition;
310 LocationId, PrimaryCPICH-Info, CellParametersID, FQDN, Velocity
313 MultipleLocationIds ::= SEQUENCE SIZE (1..maxLidSize) OF LocationIdData
315 LocationIdData ::= SEQUENCE {
316 locationId LocationId,
317 relativetimestamp RelativeTime OPTIONAL, -- if relativetimestamp is present, then data represents historical measurement, if absent, data represents current measurements
318 servingFlag BOOLEAN, -- if "true" measurements represent serving cell
321 RelativeTime ::= INTEGER (0..65535) -- relative time to "current" Location Id in multiples of 0.01sec
323 maxLidSize INTEGER ::= 64
325 SupportedNetworkInformation ::= SEQUENCE {
327 supportedWLANInfo SupportedWLANInfo OPTIONAL,
328 supportedWLANApsList SupportedWLANApsList OPTIONAL,
331 supportedWCDMAInfo SupportedWCDMAInfo OPTIONAL,
339 uTRANGPSReferenceTime BOOLEAN,
340 uTRANGANSSReferenceTime BOOLEAN,
344 SupportedWLANInfo ::= SEQUENCE {
345 apTP BOOLEAN, -- AP transmit power
346 apAG BOOLEAN, -- AP antenna gain
347 apSN BOOLEAN, -- AP S/N received at SET
348 apDevType BOOLEAN, -- Device type
349 apRSSI BOOLEAN, -- AP signal strength at SET
350 apChanFreq BOOLEAN, -- AP channel/frequency of Tx/Rx
351 apRTD BOOLEAN, -- Round Trip Delay between SET and AP
352 setTP BOOLEAN, -- SET transmit power
353 setAG BOOLEAN, -- SET antenna gain
354 setSN BOOLEAN, -- SET S/N received at AP
355 setRSSI BOOLEAN, -- SET signal strength at AP
356 apRepLoc BOOLEAN, -- AP Location as reported by AP (legacy encoding)
358 apRL BOOLEAN OPTIONAL, -- AP Location as reported by AP (as per IEEE802.11)
359 opClass BOOLEAN OPTIONAL, -- operating class as defined in IEEE 802.11
360 apSSID BOOLEAN OPTIONAL, -- SSID of the wireless network served by AP
361 apPHYType BOOLEAN OPTIONAL, -- AP PHY Type as defined in IEEE 802.11
362 setMACAddress BOOLEAN OPTIONAL -- SET MAC Address as known to the WLAN AP
365 maxWLANApDataSize INTEGER ::= 128
367 SupportedWLANApsList ::= SEQUENCE {
368 supportedWLANApDataList SEQUENCE (SIZE (1..maxWLANApDataSize)) OF SupportedWLANApData,
369 supportedWLANapsChannel11a SupportedWLANApsChannel11a OPTIONAL,
370 supportedWLANapsChannel11bg SupportedWLANApsChannel11bg OPTIONAL,
374 SupportedWLANApsChannel11a ::= SEQUENCE {
393 SupportedWLANApsChannel11bg ::= SEQUENCE {
410 SupportedWLANApData ::= SEQUENCE {
411 apMACAddress BIT STRING (SIZE (48)),
412 apDevType ENUMERATED {wlan802-11a(0), wlan802-11b(1), wlan802-11g(2), ...},
415 SupportedWCDMAInfo ::= SEQUENCE {
416 mrl BOOLEAN, -- Measured Results List
419 Ver2-CellInfo-extension ::= CHOICE {
420 hrpdCell HrpdCellInformation,
421 umbCell UmbCellInformation,
422 lteCell LteCellInformation,
423 wlanAP WlanAPInformation,
424 wimaxBS WimaxBSInformation,
426 nrCell NRCellInformation}
428 HrpdCellInformation ::= SEQUENCE {
429 refSECTORID BIT STRING(SIZE (128)) OPTIONAL, -- HRPD Sector Id
430 refBASELAT INTEGER(0..4194303), -- Base Station Latitude
431 reBASELONG INTEGER(0..8388607), -- Base Station Longitude
432 refWeekNumber INTEGER(0..65535), -- GPS Week Number
433 refSeconds INTEGER(0..4194303), -- GPS Seconds
436 UmbCellInformation ::= SEQUENCE {
437 refSECTORID BIT STRING(SIZE (128)), -- UMB Sector Id
438 refMCC INTEGER(0..999), -- Mobile Country Code
439 refMNC INTEGER(0..999), -- Mobile Network Code
440 refBASELAT INTEGER(0..4194303), -- Base Station Latitude
441 reBASELONG INTEGER(0..8388607), -- Base Station Longitude
442 refWeekNumber INTEGER(0..65535), -- GPS Week Number
443 refSeconds INTEGER(0..4194303), -- GPS Seconds
446 -- LTE Cell info per 3GPP TS 36.331.
447 -- If not otherwise stated info is related to serving cell
449 LteCellInformation ::= SEQUENCE {
450 cellGlobalIdEUTRA CellGlobalIdEUTRA,
451 physCellId PhysCellId,
452 trackingAreaCode TrackingAreaCode,
453 rsrpResult RSRP-Range OPTIONAL,
454 rsrqResult RSRQ-Range OPTIONAL,
455 ta INTEGER(0..1282) OPTIONAL, -- Currently used Timing Advance value (N_TA/16 as per [3GPP 36.213])
456 measResultListEUTRA MeasResultListEUTRA OPTIONAL, --Neighbour measurements
458 earfcn INTEGER(0..65535) OPTIONAL, -- see Table 37
459 earfcn-ext INTEGER (65536..262143) OPTIONAL, -- see Table 37
460 rsrpResult-ext RSRP-Range-Ext OPTIONAL,
461 rsrqResult-ext RSRQ-Range-Ext OPTIONAL,
462 rs-sinrResult RS-SINR-Range OPTIONAL,
463 servingInformation5G ServingInformation5G OPTIONAL
465 -- If rsrpResult-ext is included, rsrpResult shall be excluded or set to 0
466 -- If rsrqResult-ext is included and in the range 0 to 34, rsrqResult shall
467 -- be included and set equal to rsrqResult-ext
468 -- If rsrqResult-ext is included and outside the range 0 to 34, rsrqResult shall
469 -- be excluded or set to 0 when rsrqResult-ext is negative or to 34 when
470 -- rsrqResult-ext is positive
471 -- servingInformation5G shall be included for a serving cell connected to 5GCN
473 -- Measured results of neighbours cells per 3GPP TS 36.331
475 MeasResultListEUTRA ::= SEQUENCE (SIZE (1..maxCellReport)) OF MeasResultEUTRA
477 MeasResultEUTRA ::= SEQUENCE {
478 physCellId PhysCellId,
480 cellGlobalId CellGlobalIdEUTRA,
481 trackingAreaCode TrackingAreaCode
483 measResult SEQUENCE {
484 rsrpResult RSRP-Range OPTIONAL, -- Mapping to measured values
485 rsrqResult RSRQ-Range OPTIONAL, -- in 3GPP TS 36.133
487 earfcn INTEGER(0..65535) OPTIONAL, -- see Table 37
488 earfcn-ext INTEGER (65536..262143) OPTIONAL, -- see Table 37
489 rsrpResult-ext RSRP-Range-Ext OPTIONAL,
490 rsrqResult-ext RSRQ-Range-Ext OPTIONAL,
491 rs-sinrResult RS-SINR-Range OPTIONAL,
492 neighbourInformation5G NeighbourInformation5G OPTIONAL
495 -- If rsrpResult-ext is included, rsrpResult shall be excluded or set to 0
496 -- If rsrqResult-ext is included and in the range 0 to 34, rsrqResult shall
497 -- be included and set equal to rsrqResult-ext
498 -- If rsrqResult-ext is included and outside the range 0 to 34, rsrqResult shall
499 -- be excluded or set to 0 when rsrqResult-ext is negative or to 34 when
500 -- rsrqResult-ext is positive
501 -- neighbourInformation5G may only be included for a cell connected to 5GCN
503 PhysCellId ::= INTEGER (0..503)
505 TrackingAreaCode ::= BIT STRING (SIZE (16))
507 CellGlobalIdEUTRA ::= SEQUENCE {
508 plmn-Identity PLMN-Identity,
509 cellIdentity CellIdentity,
513 PLMN-Identity ::= SEQUENCE {
518 CellIdentity ::= BIT STRING (SIZE (28))
520 MCC ::= SEQUENCE (SIZE (3)) OF MCC-MNC-Digit
522 MNC ::= SEQUENCE (SIZE (2..3)) OF MCC-MNC-Digit
524 MCC-MNC-Digit ::= INTEGER (0..9)
526 RSRP-Range ::= INTEGER(0..97)
527 RSRQ-Range ::= INTEGER(0..34)
528 RSRP-Range-Ext ::= INTEGER(-17..-1)
529 RSRQ-Range-Ext ::= INTEGER(-30..46)
530 RS-SINR-Range ::= INTEGER(0..127)
532 ServingInformation5G ::= SEQUENCE {
533 trackingAreaCode TrackingAreaCodeNR,
537 NeighbourInformation5G ::= SEQUENCE {
538 trackingAreaCode TrackingAreaCodeNR OPTIONAL,
542 maxCellReport INTEGER ::= 8
544 WlanAPInformation ::= SEQUENCE { -- as per [IEEE 802.11]
545 apMACAddress BIT STRING(SIZE (48)), -- AP MAC Address
546 apTransmitPower INTEGER(-127..128) OPTIONAL, -- AP transmit power in dbm
547 apAntennaGain INTEGER(-127..128) OPTIONAL, -- AP antenna gain in dBi
548 apSignaltoNoise INTEGER(-127..128) OPTIONAL, -- AP S/N received at SET
549 apDeviceType ENUMERATED {wlan802-11a(0), wlan802-11b(1), wlan802-11g(2), ..., wlan802-11n(3), wlan802-11ac(4), wlan802-11ad(5)} OPTIONAL,
550 apSignalStrength INTEGER(-127..128) OPTIONAL, -- AP signal strength at SET
551 apChannelFrequency INTEGER(0..256) OPTIONAL, -- AP channel/frequency of Tx/Rx
552 apRoundTripDelay RTD OPTIONAL, -- Round Trip Delay between SET and AP
553 setTransmitPower INTEGER(-127..128) OPTIONAL, -- SET transmit power in dBm
554 setAntennaGain INTEGER (-127..128) OPTIONAL, -- SET antenna gain in dBi
555 setSignaltoNoise INTEGER (-127..128) OPTIONAL, -- SET S/N received at AP
556 setSignalStrength INTEGER(-127..128) OPTIONAL, -- SET signal strength at AP
557 apReportedLocation ReportedLocation OPTIONAL, -- AP Location reported by AP (legacy encoding)
559 apRepLocation RepLocation OPTIONAL, -- AP Location reported by AP
560 apSignalStrengthDelta INTEGER (0..1) OPTIONAL, -- see Table 41
561 apSignaltoNoiseDelta INTEGER (0..1) OPTIONAL, -- see Table 41
562 setSignalStrengthDelta INTEGER (0..1) OPTIONAL, -- see Table 41
563 setSignaltoNoiseDelta INTEGER (0..1) OPTIONAL, -- see Table 41
564 operatingClass INTEGER (0..255) OPTIONAL,
565 apSSID OCTET STRING (SIZE (1..32)) OPTIONAL,
566 apPHYType ENUMERATED {unknown(0), any(1), fhss(2), dsss(3), irbaseband(4), ofdm(5), hrdsss(6), erp(7), ht(8), ihv(9), ...} OPTIONAL,
567 setMACAddress BIT STRING(SIZE (48)) OPTIONAL -- MAC Address used by SET to connect to AP
570 RTD ::= SEQUENCE { -- as per [IEEE 802.11]
571 rTDValue INTEGER(0..16777216), -- measured RTD value corresponding to
572 -- about 500km in units of 1/10 of nanoseconds
573 rTDUnits RTDUnits, -- units of RTD
574 rTDAccuracy INTEGER(0..255) OPTIONAL, -- RTD accuracy
577 RTDUnits ::= ENUMERATED {
578 microseconds(0), hundredsofnanoseconds(1), tensofnanoseconds(2), nanoseconds(3), tenthsofnanoseconds(4), ...}
580 ReportedLocation ::= SEQUENCE { -- as per [IEEE 802.11v]
581 locationEncodingDescriptor LocationEncodingDescriptor,
582 locationData LocationData, -- location data field
585 LocationEncodingDescriptor ::= ENUMERATED {
586 lci(0), asn1(1), ...}
588 LocationData ::= SEQUENCE {
589 locationAccuracy INTEGER(0..4294967295) OPTIONAL,
590 locationValue OCTET STRING (SIZE(1..128)),
593 RepLocation ::= CHOICE {
594 lciLocData LciLocData, -- location data field as per [IEEE 802.11] and [RFC 3825]
595 ... -- future formats may be added here
598 LciLocData ::= SEQUENCE {
599 locationDataLCI LocationDataLCI OPTIONAL,
602 LocationDataLCI ::= SEQUENCE {
603 latitudeResolution BIT STRING (SIZE (6)),
604 latitude BIT STRING (SIZE (34)),
605 longitudeResolution BIT STRING (SIZE (6)),
606 longitude BIT STRING (SIZE (34)),
607 altitudeType BIT STRING (SIZE (4)),
608 altitudeResolution BIT STRING (SIZE (6)),
609 altitude BIT STRING (SIZE (30)),
610 datum BIT STRING (SIZE (8)),
613 WimaxBSInformation ::= SEQUENCE {
614 wimaxBsID WimaxBsID, -- WiMax serving base station ID
615 wimaxRTD WimaxRTD OPTIONAL, -- Round Trip Delay measurements
616 wimaxNMRList WimaxNMRList OPTIONAL, -- Network measurements
619 WimaxBsID ::= SEQUENCE {
620 bsID-MSB BIT STRING (SIZE(24)) OPTIONAL,
621 bsID-LSB BIT STRING (SIZE(24)),
623 -- if only LSB is present, MSB is assumed to be identical to the current serving BS or clamped on network value
625 WimaxRTD ::= SEQUENCE {
626 rtd INTEGER (0..65535), -- Round trip delay of serving BS in units of 10 ns
627 rTDstd INTEGER (0..1023) OPTIONAL, -- Standard deviation of round trip delay in units of 10 ns
630 WimaxNMRList ::= SEQUENCE (SIZE (1..maxWimaxBSMeas)) OF WimaxNMR
632 WimaxNMR ::= SEQUENCE {
633 wimaxBsID WimaxBsID, -- WiMax BS ID for the measurement
634 relDelay INTEGER (-32768..32767) OPTIONAL, -- Relative delay for this neighbouring BSs to the serving cell in units of 10 ns
635 relDelaystd INTEGER (0..1023) OPTIONAL, -- Standard deviation of Relative delay in units of 10 ns
636 rssi INTEGER (0..255) OPTIONAL, -- RSSI in 0.25 dBm steps, starting from -103.75 dBm
637 rSSIstd INTEGER (0..63) OPTIONAL, -- Standard deviation of RSSI in dB
638 bSTxPower INTEGER (0..255) OPTIONAL, -- BS transmit power in 0.25 dBm steps, starting from -103.75 dBm
639 cinr INTEGER (0..255) OPTIONAL, -- in dB
640 cINRstd INTEGER (0..63) OPTIONAL, -- Standard deviation of CINR in dB
641 bSLocation ReportedLocation OPTIONAL, -- Reported location of the BS
644 maxWimaxBSMeas INTEGER ::= 32
646 NRCellInformation ::= SEQUENCE {
647 servingCellInformation ServingCellInformationNR, --Serving cell information
648 measuredResultsListNR MeasResultListNR OPTIONAL, --Neighbour measurements
652 -- Information for serving cells per 3GPP TS 38.331
654 ServingCellInformationNR ::= SEQUENCE (SIZE (1..maxNRServingCell)) OF ServCellNR
655 -- The first listed serving cell shall be the primary cell
657 ServCellNR ::= SEQUENCE {
658 physCellId PhysCellIdNR,
660 cellGlobalId CellGlobalIdNR,
661 trackingAreaCode TrackingAreaCodeNR,
662 ssb-Measurements NR-Measurements OPTIONAL,
663 csi-rs-Measurements NR-Measurements OPTIONAL,
664 ta INTEGER(0..3846) OPTIONAL, --Timing Advance value
668 -- Measured results of neighbours cells per 3GPP TS 38.331
670 MeasResultListNR ::= SEQUENCE (SIZE (1..maxCellReportNR)) OF MeasResultNR
672 MeasResultNR ::= SEQUENCE {
673 physCellId PhysCellIdNR,
675 cellGlobalId CellGlobalIdNR OPTIONAL,
676 trackingAreaCode TrackingAreaCodeNR OPTIONAL,
677 ssb-Measurements NR-Measurements OPTIONAL,
678 csi-rs-Measurements NR-Measurements OPTIONAL,
682 PhysCellIdNR ::= INTEGER (0..1007)
684 ARFCN-NR ::= INTEGER (0.. 3279165)
686 TrackingAreaCodeNR ::= BIT STRING (SIZE (24))
688 CellGlobalIdNR ::= SEQUENCE {
689 plmn-Identity PLMN-Identity,
690 cellIdentityNR CellIdentityNR,
694 CellIdentityNR ::= BIT STRING (SIZE (36))
696 NR-Measurements ::= SEQUENCE {
697 rsrp-Range INTEGER (0..127) OPTIONAL,
698 rsrq-Range INTEGER (0..127) OPTIONAL,
699 sinr-Range INTEGER (0..127) OPTIONAL,
703 maxNRServingCell INTEGER ::= 32
704 maxCellReportNR INTEGER ::= 32
705 UTRAN-GPSReferenceTimeAssistance ::= SEQUENCE {
706 utran-GPSReferenceTime UTRAN-GPSReferenceTime,
707 gpsReferenceTimeUncertainty INTEGER (0..127) OPTIONAL,
708 utranGPSDriftRate UTRANGPSDriftRate OPTIONAL}
710 UTRAN-GPSReferenceTime ::= SEQUENCE {
711 -- For utran-GPSTimingOfCell values above 2322431999999 are not used in this version of the specification. Actual value utran-GPSTimingOfCell = (ms-part * 4294967296) + ls-part used on the downlink i.e. sent from the SLP to the SET
712 utran-GPSTimingOfCell SEQUENCE {
713 ms-part INTEGER (0..1023),
714 ls-part INTEGER (0..4294967295)},
715 modeSpecificInfo CHOICE {
717 referenceIdentity PrimaryCPICH-Info},
719 referenceIdentity CellParametersID}} OPTIONAL,
720 sfn INTEGER (0..4095)}
722 UTRANGPSDriftRate ::= ENUMERATED {
723 utran-GPSDrift0, utran-GPSDrift1, utran-GPSDrift2,
724 utran-GPSDrift5, utran-GPSDrift10, utran-GPSDrift15,
725 utran-GPSDrift25, utran-GPSDrift50, utran-GPSDrift-1,
726 utran-GPSDrift-2, utran-GPSDrift-5, utran-GPSDrift-10,
727 utran-GPSDrift-15, utran-GPSDrift-25, utran-GPSDrift-50}
729 UTRAN-GPSReferenceTimeResult ::= SEQUENCE {
730 -- For ue-GPSTimingOfCell values above 37158911999999 are not used in this version of the specification. Actual value utran-GPSTimingOfCell = (ms-part * 4294967296) + ls-part used on the uplink i.e. reported by the SET to the SLP
731 set-GPSTimingOfCell SEQUENCE {
732 ms-part INTEGER (0.. 16383),
733 ls-part INTEGER (0..4294967295)},
734 modeSpecificInfo CHOICE {
736 referenceIdentity PrimaryCPICH-Info},
738 referenceIdentity CellParametersID}} OPTIONAL,
739 sfn INTEGER (0..4095),
740 gpsReferenceTimeUncertainty INTEGER (0..127) OPTIONAL,
743 UTRAN-GANSSReferenceTimeAssistance ::= SEQUENCE {
744 ganssDay INTEGER (0..8191) OPTIONAL,
745 ganssTimeID INTEGER (0..15),
746 utran-GANSSReferenceTime UTRAN-GANSSReferenceTime,
747 utranGANSSDriftRate UTRANGANSSDriftRate OPTIONAL}
749 UTRAN-GANSSReferenceTime ::= SEQUENCE {
751 ganssTOD INTEGER (0..86399),
752 utran-GANSSTimingOfCell INTEGER (0..3999999)OPTIONAL,
753 modeSpecificInfo CHOICE {
755 referenceIdentity PrimaryCPICH-Info},
757 referenceIdentity CellParametersID}} OPTIONAL,
758 sfn INTEGER (0..4095),
759 ganss-TODUncertainty INTEGER (0..127) OPTIONAL,
762 UTRANGANSSDriftRate ::= ENUMERATED {
763 utran-GANSSDrift0, utran-GANSSDrift1, utran-GANSSDrift2,
764 utran-GANSSDrift5, utran-GANSSDrift10, utran-GANSSDrift15,
765 utran-GANSSDrift25, utran-GANSSDrift50, utran-GANSSDrift-1,
766 utran-GANSSDrift-2, utran-GANSSDrift-5, utran-GANSSDrift-10,
767 utran-GANSSDrift-15, utran-GANSSDrift-25, utran-GANSSDrift-50}
769 UTRAN-GANSSReferenceTimeResult ::= SEQUENCE {
770 ganssTimeID INTEGER (0..15),
771 set-GANSSReferenceTime SET-GANSSReferenceTime,
774 SET-GANSSReferenceTime ::= SEQUENCE {
775 -- Actual value [ns] = (ms-Part * 4294967296 + ls-Part) * 250
776 -- Actual values [ns] > 86399999999750 are reserved and are considered a
778 set-GANSSTimingOfCell SEQUENCE {
779 ms-part INTEGER (0..80),
780 ls-part INTEGER (0..4294967295)} OPTIONAL,
781 modeSpecificInfo CHOICE {
783 referenceIdentity PrimaryCPICH-Info},
785 referenceIdentity CellParametersID}} OPTIONAL,
786 sfn INTEGER (0..4095),
787 ganss-TODUncertainty INTEGER (0..127) OPTIONAL,
790 GNSSPosTechnology ::= SEQUENCE {
794 modernized-gps BOOLEAN,
798 bds BOOLEAN OPTIONAL,
799 rtk-osr BOOLEAN OPTIONAL}
801 -- indicates MS support for particular GANSS signals and frequencies coding according to parameter definition in section 10.9
803 GANSSSignals ::= BIT STRING {
811 signal8 (7)} (SIZE (1..8))
813 SPCSETKey ::= BIT STRING(SIZE (128))
815 SPCTID ::= SEQUENCE {
816 rand BIT STRING(SIZE (128)),
820 SPCSETKeylifetime ::= INTEGER (1..24) -- units in hours
822 CauseCode ::= ENUMERATED {
823 servingNetWorkNotInAreaIdList(0), sETCapabilitiesChanged(1), noSUPLCoverage(2), ...}
825 ThirdParty ::= SEQUENCE (SIZE (1..64)) OF ThirdPartyID
827 ThirdPartyID ::= CHOICE {
828 logicalName IA5String(SIZE (1..1000)),
829 msisdn OCTET STRING(SIZE (8)),
830 emailaddr IA5String(SIZE (1..1000)),
831 -- sip-uri VisibleString(FROM ("a".."z" | "A".."Z" | "0".."9" | ":./-_~%#@?")) (SIZE (1..255)),
832 -- ims-public-identity VisibleString(FROM ("a".."z" | "A".."Z" | "0".."9" | ":./-_~%#@?")) (SIZE (1..255)),
833 -- # asn2wrs does not handle '%' in the restricted string
834 sip-uri VisibleString(FROM ("a".."z" | "A".."Z" | "0".."9" | ":./-_~#@?")) (SIZE (1..255)),
835 ims-public-identity VisibleString(FROM ("a".."z" | "A".."Z" | "0".."9" | ":./-_~#@?")) (SIZE (1..255)),
836 min BIT STRING(SIZE (34)), -- coded according to TIA-553
837 mdn OCTET STRING(SIZE (8)),
838 -- uri VisibleString(FROM ("a".."z" | "A".."Z" | "0".."9" | "./-_~%#")) (SIZE (1..255)),
839 uri VisibleString(FROM ("a".."z" | "A".."Z" | "0".."9" | "./-_~#")) (SIZE (1..255)),
842 ApplicationID ::= SEQUENCE {
843 appProvider IA5String(SIZE (1..24)), -- The application provider
844 appName IA5String(SIZE (1..32)), -- The application name
845 appVersion IA5String(SIZE (1..8)) OPTIONAL, -- The application version
848 ReportingCap ::= SEQUENCE {
849 minInt INTEGER (1..3600), -- units in seconds
850 maxInt INTEGER (1..1440) OPTIONAL, -- units in minutes
852 batchRepCap BatchRepCap OPTIONAL, -- only used for batch and quasi real time reporting
855 RepMode ::= SEQUENCE {
857 quasirealtime BOOLEAN,
861 BatchRepCap ::= SEQUENCE {
862 report-position BOOLEAN, -- set to "true" if reporting of position is supported
863 report-measurements BOOLEAN, -- set to "true" if reporting of measurements is supported
864 max-num-positions INTEGER (1..1024) OPTIONAL,
865 max-num-measurements INTEGER (1..1024) OPTIONAL,
868 Coordinate::= SEQUENCE {
869 latitudeSign ENUMERATED {north(0), south(1)},
870 latitude INTEGER(0..8388607),
871 longitude INTEGER(-8388608..8388607)} -- Coding as in [3GPP GAD]
873 CircularArea ::= SEQUENCE {
874 coordinate Coordinate,
875 radius INTEGER(1..1000000), -- radius in meters
876 radius-min INTEGER(1..1000000) OPTIONAL, -- hysteresis minimum radius
877 radius-max INTEGER(1..1500000) OPTIONAL} -- hysteresis maximum radius
879 EllipticalArea ::= SEQUENCE {
880 coordinate Coordinate,
881 semiMajor INTEGER(1..1000000), -- units in meters
882 semiMajor-min INTEGER(1..1000000) OPTIONAL, -- hysteresis minimum semiMajor
883 semiMajor-max INTEGER(1..1500000) OPTIONAL, -- hysteresis maximum semiMajor
884 semiMinor INTEGER(1..1000000), -- units in meters
885 semiMinor-min INTEGER(1..1000000) OPTIONAL, -- hysteresis minimum semiMinor
886 semiMinor-max INTEGER(1..1500000) OPTIONAL, -- hysteresis maximum semiMinor
887 angle INTEGER(0.. 179)} -- units in degrees. The angle is defined as the angle between the semi-major axis and North, increasing in a clockwise direction. An angle of 0 represents an ellipse with the semi-major axis pointing North/South while an angle of 90 represents an ellipse with the semi-major axis pointing East/West.
889 PolygonArea ::= SEQUENCE {
890 polygonDescription PolygonDescription,
891 polygonHysteresis INTEGER(1..100000) OPTIONAL} --units in meters
893 PolygonDescription ::= SEQUENCE (SIZE (3..15)) OF Coordinate
895 Ver2-HighAccuracyPosition ::= SEQUENCE {
896 timestamp UTCTime, -- shall include seconds and shall use UTC time.
897 highAccuracyPositionEstimate HighAccuracyPositionEstimate,
898 velocity Velocity OPTIONAL,
901 HighAccuracyPositionEstimate ::= SEQUENCE {
902 degreesLatitude INTEGER(-2147483648..2147483647),
903 degreesLongitude INTEGER(-2147483648..2147483647),
904 uncertaintySemiMajor INTEGER (0..255),
905 uncertaintySemiMinor INTEGER (0..255),
906 orientationMajorAxis INTEGER (0..179),
907 horizontalConfidence INTEGER (0..100),
908 highAccuracyAltitudeInfo HighAccuracyAltitudeInfo OPTIONAL,
909 ...} -- Coding as in [3GPP GAD]
911 HighAccuracyAltitudeInfo ::= SEQUENCE {
912 altitude INTEGER(64000..1280000),
913 uncertaintyAltitude INTEGER (0..255),
914 verticalConfidence INTEGER (0..100),
915 ...} -- Coding as in [3GPP GAD]