-- SUPL.asn -- Taken from OMA UserPlane Location Protocol -- http://member.openmobilealliance.org/ftp/Public_documents/LOC/Permanent_documents/OMA-TS-ULP-V2_0_5-20191028-A.zip -- -- 11.2 Message Specific Part -- -- -- 11.2.1 SUPL INIT -- SUPL-INIT DEFINITIONS AUTOMATIC TAGS ::= BEGIN EXPORTS SUPLINIT, Notification; IMPORTS SLPAddress, QoP, PosMethod FROM ULP-Components Ver2-SUPL-INIT-extension FROM ULP-Version-2-message-extensions Ver2-Notification-extension FROM ULP-Version-2-parameter-extensions; SUPLINIT ::= SEQUENCE { posMethod PosMethod, notification Notification OPTIONAL, sLPAddress SLPAddress OPTIONAL, qoP QoP OPTIONAL, sLPMode SLPMode, mac MAC OPTIONAL, -- included for backwards compatibility keyIdentity KeyIdentity OPTIONAL, -- included for backwards compatibility ..., -- version 2 extension element ver2-SUPL-INIT-extension Ver2-SUPL-INIT-extension OPTIONAL} Notification ::= SEQUENCE { notificationType NotificationType, encodingType EncodingType OPTIONAL, requestorId OCTET STRING(SIZE (1..maxReqLength)) OPTIONAL, requestorIdType FormatIndicator OPTIONAL, clientName OCTET STRING(SIZE (1..maxClientLength)) OPTIONAL, clientNameType FormatIndicator OPTIONAL, ..., ver2-Notification-extension Ver2-Notification-extension OPTIONAL} NotificationType ::= ENUMERATED { noNotificationNoVerification(0), notificationOnly(1), notificationAndVerficationAllowedNA(2), notificationAndVerficationDeniedNA(3), privacyOverride(4), ...} EncodingType ::= ENUMERATED {ucs2(0), gsmDefault(1), utf8(2), ...} maxReqLength INTEGER ::= 50 maxClientLength INTEGER ::= 50 FormatIndicator ::= ENUMERATED { logicalName(0), e-mailAddress(1), msisdn(2), url(3), sipUrl(4), min(5), mdn(6), iMSPublicidentity(7), ...} SLPMode ::= ENUMERATED {proxy(0), nonProxy(1)} MAC ::= BIT STRING(SIZE (64)) -- empty placeholder required for SUPL 1.0 backwards compatibility KeyIdentity ::= BIT STRING(SIZE (128)) -- empty placeholder required for SUPL 1.0 backwards compatibility END -- -- 11.2.2 SUPL START -- SUPL-START DEFINITIONS AUTOMATIC TAGS ::= BEGIN EXPORTS SUPLSTART, SETCapabilities; IMPORTS LocationId, QoP FROM ULP-Components Ver2-SUPL-START-extension FROM ULP-Version-2-message-extensions Ver2-SETCapabilities-extension, Ver2-PosProtocol-extension, Ver2-PosTechnology-extension FROM ULP-Version-2-parameter-extensions; SUPLSTART ::= SEQUENCE { sETCapabilities SETCapabilities, locationId LocationId, qoP QoP OPTIONAL, ..., -- version 2 extension element ver2-SUPL-START-extension Ver2-SUPL-START-extension OPTIONAL} SETCapabilities ::= SEQUENCE { posTechnology PosTechnology, prefMethod PrefMethod, posProtocol PosProtocol, ..., ver2-SETCapabilities-extension Ver2-SETCapabilities-extension OPTIONAL} PosTechnology ::= SEQUENCE { agpsSETassisted BOOLEAN, agpsSETBased BOOLEAN, autonomousGPS BOOLEAN, aflt BOOLEAN, ecid BOOLEAN, eotd BOOLEAN, otdoa BOOLEAN, ..., ver2-PosTechnology-extension Ver2-PosTechnology-extension OPTIONAL} PrefMethod ::= ENUMERATED { agpsSETassistedPreferred, agpsSETBasedPreferred, noPreference} -- To achieve compatibility with ULP V1.0 the names of the enumerations are -- kept the same as in ULP V1.0. agps shall be interpreted as agnss. PosProtocol ::= SEQUENCE { tia801 BOOLEAN, rrlp BOOLEAN, rrc BOOLEAN, ..., ver2-PosProtocol-extension Ver2-PosProtocol-extension OPTIONAL} END -- -- 11.2.3 SUPL RESPONSE -- SUPL-RESPONSE DEFINITIONS AUTOMATIC TAGS ::= BEGIN EXPORTS SUPLRESPONSE; IMPORTS PosMethod, SLPAddress FROM ULP-Components Ver2-SUPL-RESPONSE-extension FROM ULP-Version-2-message-extensions; SUPLRESPONSE ::= SEQUENCE { posMethod PosMethod, sLPAddress SLPAddress OPTIONAL, sETAuthKey SETAuthKey OPTIONAL, -- included for backwards compatibility keyIdentity4 KeyIdentity4 OPTIONAL, -- included for backwards compatibility ..., -- version 2 extension element ver2-SUPL-RESPONSE-extension Ver2-SUPL-RESPONSE-extension OPTIONAL} SETAuthKey ::= CHOICE { shortKey BIT STRING(SIZE (128)), longKey BIT STRING(SIZE (256)), ...} KeyIdentity4 ::= BIT STRING(SIZE (128)) END -- -- 11.2.4 SUPL POS INIT -- SUPL-POS-INIT DEFINITIONS AUTOMATIC TAGS ::= BEGIN EXPORTS SUPLPOSINIT; IMPORTS SUPLPOS FROM SUPL-POS SETCapabilities FROM SUPL-START LocationId, Position, Ver FROM ULP-Components Ver2-SUPL-POS-INIT-extension FROM ULP-Version-2-message-extensions Ver2-RequestedAssistData-extension FROM ULP-Version-2-parameter-extensions; SUPLPOSINIT ::= SEQUENCE { sETCapabilities SETCapabilities, requestedAssistData RequestedAssistData OPTIONAL, locationId LocationId, position Position OPTIONAL, suplpos SUPLPOS OPTIONAL, ver Ver OPTIONAL, ..., -- version 2 extension element ver2-SUPL-POS-INIT-extension Ver2-SUPL-POS-INIT-extension OPTIONAL} RequestedAssistData ::= SEQUENCE { almanacRequested BOOLEAN, utcModelRequested BOOLEAN, ionosphericModelRequested BOOLEAN, dgpsCorrectionsRequested BOOLEAN, referenceLocationRequested BOOLEAN, -- Note: Used also for GANSS referenceTimeRequested BOOLEAN, acquisitionAssistanceRequested BOOLEAN, realTimeIntegrityRequested BOOLEAN, navigationModelRequested BOOLEAN, navigationModelData NavigationModel OPTIONAL, ..., ver2-RequestedAssistData-extension Ver2-RequestedAssistData-extension OPTIONAL} NavigationModel ::= SEQUENCE { gpsWeek INTEGER(0..1023), gpsToe INTEGER(0..167), nsat INTEGER(0..31), toeLimit INTEGER(0..10), satInfo SatelliteInfo OPTIONAL, ...} -- Further information on this fields can be found -- in [3GPP RRLP]and [3GPP 49.031] SatelliteInfo ::= SEQUENCE (SIZE (1..31)) OF SatelliteInfoElement SatelliteInfoElement ::= SEQUENCE { satId INTEGER(0..63), iode INTEGER(0..255), ...} END -- -- 11.2.5 SUPL POS -- SUPL-POS DEFINITIONS AUTOMATIC TAGS ::= BEGIN EXPORTS SUPLPOS; IMPORTS Velocity FROM ULP-Components Ver2-SUPL-POS-extension FROM ULP-Version-2-message-extensions Ver2-PosPayLoad-extension FROM ULP-Version-2-parameter-extensions; SUPLPOS ::= SEQUENCE { posPayLoad PosPayLoad, velocity Velocity OPTIONAL, ..., -- version 2 extension element ver2-SUPL-POS-extension Ver2-SUPL-POS-extension OPTIONAL} PosPayLoad ::= CHOICE { tia801payload OCTET STRING(SIZE (1..8192)), rrcPayload OCTET STRING(SIZE (1..8192)), rrlpPayload OCTET STRING(SIZE (1..8192)), ..., ver2-PosPayLoad-extension Ver2-PosPayLoad-extension} END -- -- 11.2.6 SUPL END -- SUPL-END DEFINITIONS AUTOMATIC TAGS ::= BEGIN EXPORTS SUPLEND; IMPORTS StatusCode, Position, Ver FROM ULP-Components Ver2-SUPL-END-extension FROM ULP-Version-2-message-extensions; SUPLEND ::= SEQUENCE { position Position OPTIONAL, statusCode StatusCode OPTIONAL, ver Ver OPTIONAL, ..., -- version 2 extension element ver2-SUPL-END-extension Ver2-SUPL-END-extension OPTIONAL} END -- -- 11.2.7 SUPL AUTH REQ -- SUPL-AUTH-REQ DEFINITIONS AUTOMATIC TAGS ::= BEGIN EXPORTS SUPLAUTHREQ; IMPORTS Ver FROM ULP-Components SETCapabilities FROM SUPL-START; SUPLAUTHREQ ::= SEQUENCE { ver Ver OPTIONAL, sETCapabilities SETCapabilities OPTIONAL, ...} END -- -- 11.2.8 SUPL AUTH RESP -- SUPL-AUTH-RESP DEFINITIONS AUTOMATIC TAGS ::= BEGIN EXPORTS SUPLAUTHRESP; IMPORTS SPCSETKey, SPCTID, SPCSETKeylifetime FROM Ver2-ULP-Components; SUPLAUTHRESP ::= SEQUENCE { sPCSETKey SPCSETKey, spctid SPCTID, sPCSETKeylifetime SPCSETKeylifetime OPTIONAL, ...} END -- -- 11.2.9 SUPL NOTIFY -- SUPL-NOTIFY DEFINITIONS AUTOMATIC TAGS ::= BEGIN EXPORTS Ver2-SUPLNOTIFY; IMPORTS Notification FROM SUPL-INIT; Ver2-SUPLNOTIFY ::= SEQUENCE { notification Notification, ...} END -- -- 11.2.10 SUPL NOTIFY RESPONSE -- SUPL-NOTIFY-RESPONSE DEFINITIONS AUTOMATIC TAGS ::= BEGIN EXPORTS Ver2-SUPLNOTIFYRESPONSE; Ver2-SUPLNOTIFYRESPONSE ::= SEQUENCE { notificationResponse NotificationResponse OPTIONAL, ...} NotificationResponse ::= ENUMERATED {allowed(0), notAllowed(1), ...} END -- -- 11.2.11 SUPL SET INIT -- SUPL-SET-INIT DEFINITIONS AUTOMATIC TAGS ::= BEGIN EXPORTS Ver2-SUPLSETINIT; IMPORTS SETId, QoP FROM ULP-Components ApplicationID FROM Ver2-ULP-Components; Ver2-SUPLSETINIT ::= SEQUENCE { targetSETID SETId, --Target SETid identifies the target SET to be located qoP QoP OPTIONAL, applicationID ApplicationID OPTIONAL, ...} END -- -- 11.2.12 SUPL TRIGGERED START -- SUPL-TRIGGERED-START DEFINITIONS AUTOMATIC TAGS ::= BEGIN EXPORTS Ver2-SUPLTRIGGEREDSTART, TriggerType, TriggerParams, maxNumGeoArea, maxAreaId, maxAreaIdList; IMPORTS LocationId, QoP, Ver, Position FROM ULP-Components MultipleLocationIds, CauseCode, ThirdParty, ApplicationID, ReportingCap, Coordinate, CircularArea, EllipticalArea, PolygonArea FROM Ver2-ULP-Components SETCapabilities FROM SUPL-START; Ver2-SUPLTRIGGEREDSTART ::= SEQUENCE { sETCapabilities SETCapabilities, locationId LocationId, ver Ver OPTIONAL, qoP QoP OPTIONAL, multipleLocationIds MultipleLocationIds OPTIONAL, thirdParty ThirdParty OPTIONAL, applicationID ApplicationID OPTIONAL, triggerType TriggerType OPTIONAL, triggerParams TriggerParams OPTIONAL, position Position OPTIONAL, reportingCap ReportingCap OPTIONAL, causeCode CauseCode OPTIONAL, ...} TriggerType ::= ENUMERATED { periodic(0), areaEvent(1), ...} TriggerParams ::= CHOICE { periodicParams PeriodicParams, areaEventParams AreaEventParams, ...} PeriodicParams ::= SEQUENCE{ numberOfFixes INTEGER(1.. 8639999), intervalBetweenFixes INTEGER(1.. 8639999), startTime INTEGER(0..2678400) OPTIONAL, ...} -- intervalBetweenFixes and startTime are in seconds. -- numberOfFixes * intervalBetweenFixes shall not exceed 8639999 -- (100 days in seconds) for compatibility with OMA MLP and RLP -- startTime is in relative time in units of seconds measured from "now" -- a value of 0 signifies "now", a value of "startTime" signifies startTime -- seconds from "now" AreaEventParams ::= SEQUENCE { areaEventType AreaEventType, locationEstimate BOOLEAN, repeatedReportingParams RepeatedReportingParams OPTIONAL, startTime INTEGER(0..2678400) OPTIONAL, stopTime INTEGER(0..11318399) OPTIONAL, geographicTargetAreaList GeographicTargetAreaList OPTIONAL, areaIdLists SEQUENCE (SIZE (1..maxAreaIdList)) OF AreaIdList OPTIONAL, ...} -- startTime and stopTime are in seconds. -- startTime and stop Time are in relative time in units of seconds measured -- from "now" -- a value of 0 signifies "now" -- stopTime must be > startTime -- stopTime - startTime shall not exceed 8639999 -- (100 days in seconds) for compatibility with OMA MLP and RLP AreaEventType ::= ENUMERATED {enteringArea(0), insideArea(1), outsideArea(2), leavingArea(3), ...} RepeatedReportingParams ::= SEQUENCE { minimumIntervalTime INTEGER (1..604800), -- time in seconds maximumNumberOfReports INTEGER (1..1024), ...} GeographicTargetAreaList ::= SEQUENCE (SIZE (1..maxNumGeoArea)) OF GeographicTargetArea GeographicTargetArea ::= CHOICE { circularArea CircularArea, ellipticalArea EllipticalArea, polygonArea PolygonArea, ...} AreaIdList ::= SEQUENCE { areaIdSet AreaIdSet, areaIdSetType AreaIdSetType OPTIONAL, geoAreaMappingList GeoAreaMappingList OPTIONAL} AreaIdSet ::= SEQUENCE SIZE (1..maxAreaId) OF AreaId AreaId ::= CHOICE { gSMAreaId GSMAreaId, wCDMAAreaId WCDMAAreaId, -- For TD-SCDMA networks, this parameter indicates a TD-SCDMA Area ID cDMAAreaId CDMAAreaId, hRPDAreaId HRPDAreaId, uMBAreaId UMBAreaId, lTEAreaId LTEAreaId, wLANAreaId WLANAreaId, wiMAXAreaId WimaxAreaId, ..., nRAreaId NRAreaId } GSMAreaId ::= SEQUENCE { refMCC INTEGER(0..999) OPTIONAL, -- Mobile Country Code refMNC INTEGER(0..999) OPTIONAL, -- Mobile Network Code refLAC INTEGER(0..65535) OPTIONAL, -- Location Area Code refCI INTEGER(0..65535) OPTIONAL, -- Cell Id ...} -- only one of the following four combinations are allowed: (1) refMCC, (2) refMCC+refMNC, (3) refMCC+refMNC+refLAC or (4) refMCC+refMNC+refLAC+refCI WCDMAAreaId ::= SEQUENCE { refMCC INTEGER(0..999) OPTIONAL, -- Mobile Country Code refMNC INTEGER(0..999) OPTIONAL, -- Mobile Network Code refLAC INTEGER(0..65535) OPTIONAL, -- Location Area Code refUC INTEGER(0..268435455) OPTIONAL, -- Cell identity ...} -- only one of the following four combinations are allowed: (1) refMCC, (2) refMCC+refMNC, (3) refMCC+refMNC+refLAC, or (4) refMCC+refMNC+refLAC+refUC CDMAAreaId::= SEQUENCE { refSID INTEGER(0..65535) OPTIONAL, -- System Id refNID INTEGER(0..32767) OPTIONAL, -- Network Id refBASEID INTEGER(0..65535) OPTIONAL, -- Base Station Id ...} -- only one of the following three combinations are allowed: (1) refSID, (2) refSID+refNID, or (3) refSID+refNID+refBASEID HRPDAreaId::= SEQUENCE { refSECTORID BIT STRING(SIZE (128)), -- HRPD Sector Id ...} UMBAreaId::= SEQUENCE { refMCC INTEGER(0..999) OPTIONAL, -- Mobile Country Code refMNC INTEGER(0..999) OPTIONAL, -- Mobile Network Code refSECTORID BIT STRING(SIZE (128)) OPTIONAL, -- UMB Sector Id ...} LTEAreaId::= SEQUENCE { refMCC INTEGER(0..999) OPTIONAL, -- Mobile Country Code refMNC INTEGER(0..999) OPTIONAL, -- Mobile Network Code refCI BIT STRING(SIZE (29)) OPTIONAL, -- LTE Cell-Id ...} -- only one of the following three combinations are allowed: (1) refMCC, (2) refMCC+refMNC, or (3) refMCC+refMNC+refCI -- The LTE Cell-Id is encoded in the 28 Least Significant Bits of refCI -- The Most Significant Bit of refCI shall be ignored WLANAreaId::= SEQUENCE { apMACAddress BIT STRING(SIZE (48)), -- AP MAC Address ...} WimaxAreaId ::= SEQUENCE { bsID-MSB BIT STRING (SIZE(24)) OPTIONAL, bsID-LSB BIT STRING (SIZE(24)) } -- if only LSB is present, MSB is assumed to be identical to the current serving BS or clamped on network value NRAreaId ::= SEQUENCE { refMCC INTEGER(0..999) OPTIONAL, -- Mobile Country Code refMNC INTEGER(0..999) OPTIONAL, -- Mobile Network Code refCI BIT STRING(SIZE (36)) OPTIONAL, -- NR Cell-Id ...} -- only one of the following three combinations are allowed: (1) refMCC, (2) -- refMCC+refMNC, or (3) refMCC+refMNC+refCI AreaIdSetType ::= ENUMERATED {border(0), within(1), ...} GeoAreaMappingList ::= SEQUENCE (SIZE (1..maxNumGeoArea)) OF GeoAreaIndex GeoAreaIndex ::= INTEGER (1..maxNumGeoArea) maxNumGeoArea INTEGER ::= 32 maxAreaId INTEGER ::= 256 maxAreaIdList INTEGER ::= 32 END -- -- 11.2.13 SUPL TRIGGERED RESPONSE -- SUPL-TRIGGERED-RESPONSE DEFINITIONS AUTOMATIC TAGS ::= BEGIN EXPORTS Ver2-SUPLTRIGGEREDRESPONSE; IMPORTS PosMethod, SLPAddress FROM ULP-Components SupportedNetworkInformation, SPCSETKey, SPCTID, SPCSETKeylifetime, GNSSPosTechnology FROM Ver2-ULP-Components TriggerParams FROM SUPL-TRIGGERED-START; Ver2-SUPLTRIGGEREDRESPONSE::= SEQUENCE{ posMethod PosMethod, triggerParams TriggerParams OPTIONAL, sLPAddress SLPAddress OPTIONAL, supportedNetworkInformation SupportedNetworkInformation OPTIONAL, reportingMode ReportingMode OPTIONAL, sPCSETKey SPCSETKey OPTIONAL, spctid SPCTID OPTIONAL, sPCSETKeylifetime SPCSETKeylifetime OPTIONAL, gnssPosTechnology GNSSPosTechnology OPTIONAL, ...} ReportingMode ::= SEQUENCE { repMode RepModee, batchRepConditions BatchRepConditions OPTIONAL, -- only used for batch reporting batchRepType BatchRepType OPTIONAL, -- only used for batch reporting ...} RepModee ::= ENUMERATED {realtime(1), quasirealtime(2), batch(3), ...} BatchRepConditions ::= CHOICE { num-interval INTEGER (1..1024), -- number of periodic fixes/measurements after which the batch report is sent to the SLP num-minutes INTEGER (1..2048), -- number of minutes after which the batch report is sent to the SLP endofsession NULL, -- if selected batch report is to be sent at the end of the session ...} BatchRepType ::= SEQUENCE { reportPosition BOOLEAN, -- set to "true" if reporting of position is allowed reportMeasurements BOOLEAN, -- set to "true" if reporting of measurements is allowed intermediateReports BOOLEAN, -- set to "true" if the SET is allowed to send intermediate reports if it runs out of memory discardOldest BOOLEAN OPTIONAL, -- set to "true" if the SET should discard the oldest positions or measurements of the batch report in order to save memory, set to "false" the SET should discard the latest positions or measurements ...} END -- -- 11.2.14 SUPL REPORT -- SUPL-REPORT DEFINITIONS AUTOMATIC TAGS ::= BEGIN EXPORTS Ver2-SUPLREPORT; IMPORTS SETCapabilities FROM SUPL-START Position, PosMethod, SessionID, Ver FROM ULP-Components MultipleLocationIds, GNSSPosTechnology, GANSSSignals FROM Ver2-ULP-Components maxGANSS FROM ULP-Version-2-parameter-extensions; Ver2-SUPLREPORT ::= SEQUENCE { sessionList SessionList OPTIONAL, sETCapabilities SETCapabilities OPTIONAL, reportDataList ReportDataList OPTIONAL, ver Ver OPTIONAL, moreComponents NULL OPTIONAL, ...} SessionList ::= SEQUENCE SIZE (1..maxnumSessions) OF SessionInformation SessionInformation ::= SEQUENCE { sessionID SessionID, ...} maxnumSessions INTEGER ::= 64 ReportDataList ::= SEQUENCE SIZE (1.. 1024) OF ReportData ReportData ::= SEQUENCE { positionData PositionData OPTIONAL, multipleLocationIds MultipleLocationIds OPTIONAL, resultCode ResultCode OPTIONAL, timestamp TimeStamp OPTIONAL, ...} PositionData ::= SEQUENCE { position Position, posMethod PosMethod OPTIONAL, gnssPosTechnology GNSSPosTechnology OPTIONAL, ganssSignalsInfo GANSSsignalsInfo OPTIONAL, ...} GANSSsignalsInfo ::= SEQUENCE SIZE (1..maxGANSS) OF GANSSSignalsDescription GANSSSignalsDescription ::= SEQUENCE { ganssId INTEGER(0..15), -- coding according to parameter definition in section 10.10 gANSSSignals GANSSSignals, ...} ResultCode ::= ENUMERATED {outofradiocoverage(1), noposition(2), nomeasurement(3), nopositionnomeasurement(4), outofmemory(5), outofmemoryintermediatereporting(6), other(7), ...} TimeStamp ::= CHOICE { absoluteTime UTCTime, relativeTime INTEGER (0..31536000)} -- relative time to when the SUPL REPORT message is sent in units of 1 sec, where 0 signifies "now" and n signifies n seconds in the past END -- -- 11.2.15 SUPL TRIGGERED STOP -- SUPL-TRIGGERED-STOP DEFINITIONS AUTOMATIC TAGS ::= BEGIN EXPORTS Ver2-SUPLTRIGGEREDSTOP; IMPORTS StatusCode FROM ULP-Components; Ver2-SUPLTRIGGEREDSTOP::= SEQUENCE{ statusCode StatusCode OPTIONAL, ...} END -- -- 11.3 Messsage Extensions (SUPL Version 2) -- ULP-Version-2-message-extensions DEFINITIONS AUTOMATIC TAGS ::= BEGIN EXPORTS Ver2-SUPL-INIT-extension, Ver2-SUPL-START-extension, Ver2-SUPL-RESPONSE-extension, Ver2-SUPL-POS-INIT-extension, Ver2-SUPL-POS-extension, Ver2-SUPL-END-extension; IMPORTS SLPAddress, Position, Ver FROM ULP-Components SETCapabilities FROM SUPL-START SupportedNetworkInformation, GNSSPosTechnology, MultipleLocationIds, UTRAN-GPSReferenceTimeResult, UTRAN-GANSSReferenceTimeResult, UTRAN-GPSReferenceTimeAssistance, UTRAN-GANSSReferenceTimeAssistance, SPCSETKey, SPCTID, SPCSETKeylifetime, ThirdParty, ApplicationID FROM Ver2-ULP-Components TriggerType FROM SUPL-TRIGGERED-START Ver2-HighAccuracyPosition FROM Ver2-ULP-Components; Ver2-SUPL-INIT-extension ::= SEQUENCE { notificationMode NotificationMode OPTIONAL, supportedNetworkInformation SupportedNetworkInformation OPTIONAL, triggerType TriggerType OPTIONAL, e-SLPAddress SLPAddress OPTIONAL, historicReporting HistoricReporting OPTIONAL, protectionLevel ProtectionLevel OPTIONAL, gnssPosTechnology GNSSPosTechnology OPTIONAL, minimumMajorVersion INTEGER (0..255) OPTIONAL, ...} NotificationMode ::= ENUMERATED {normal(0), basedOnLocation(1), ...} HistoricReporting ::= SEQUENCE { allowedReportingType AllowedReportingType, reportingCriteria ReportingCriteria OPTIONAL, ...} AllowedReportingType ::= ENUMERATED { positionsOnly(0), measurementsOnly(1), positionsAndMeasurements(2), ...} ReportingCriteria ::= SEQUENCE { timeWindow TimeWindow OPTIONAL, maxNumberofReports INTEGER(1..65536) OPTIONAL, minTimeInterval INTEGER(1..86400) OPTIONAL, ...} TimeWindow ::= SEQUENCE { startTime INTEGER(-525600..-1), -- Time in minutes stopTime INTEGER(-525599..0)} -- Time in minutes ProtectionLevel ::= SEQUENCE { protlevel ProtLevel, basicProtectionParams BasicProtectionParams OPTIONAL, ...} ProtLevel ::= ENUMERATED { nullProtection(0), basicProtection(1), ...} BasicProtectionParams ::= SEQUENCE { keyIdentifier OCTET STRING(SIZE (8)), basicReplayCounter INTEGER(0..65535), basicMAC BIT STRING(SIZE (32)), ...} Ver2-SUPL-START-extension ::= SEQUENCE { multipleLocationIds MultipleLocationIds OPTIONAL, thirdParty ThirdParty OPTIONAL, applicationID ApplicationID OPTIONAL, position Position OPTIONAL, ...} Ver2-SUPL-RESPONSE-extension ::= SEQUENCE { supportedNetworkInformation SupportedNetworkInformation OPTIONAL, sPCSETKey SPCSETKey OPTIONAL, spctid SPCTID OPTIONAL, sPCSETKeylifetime SPCSETKeylifetime OPTIONAL, initialApproximateposition Position OPTIONAL, gnssPosTechnology GNSSPosTechnology OPTIONAL, ...} Ver2-SUPL-POS-INIT-extension ::= SEQUENCE { multipleLocationIds MultipleLocationIds OPTIONAL, utran-GPSReferenceTimeResult UTRAN-GPSReferenceTimeResult OPTIONAL, utran-GANSSReferenceTimeResult UTRAN-GANSSReferenceTimeResult OPTIONAL, ...} Ver2-SUPL-POS-extension ::= SEQUENCE { utran-GPSReferenceTimeAssistance UTRAN-GPSReferenceTimeAssistance OPTIONAL, utran-GPSReferenceTimeResult UTRAN-GPSReferenceTimeResult OPTIONAL, utran-GANSSReferenceTimeAssistance UTRAN-GANSSReferenceTimeAssistance OPTIONAL, utran-GANSSReferenceTimeResult UTRAN-GANSSReferenceTimeResult OPTIONAL, ...} Ver2-SUPL-END-extension ::= SEQUENCE { sETCapabilities SETCapabilities OPTIONAL, ..., ver2-HighAccuracyPosition Ver2-HighAccuracyPosition OPTIONAL} END -- -- 11.4 Parameter Extensions (SUPL Version 2) -- ULP-Version-2-parameter-extensions DEFINITIONS AUTOMATIC TAGS ::= BEGIN EXPORTS maxGANSS, Ver2-Notification-extension, Ver2-SETCapabilities-extension, Ver2-PosProtocol-extension, Ver2-PosTechnology-extension, Ver2-RequestedAssistData-extension, Ver2-PosPayLoad-extension; IMPORTS GANSSSignals, ReportingCap FROM Ver2-ULP-Components maxNumGeoArea, maxAreaId, maxAreaIdList FROM SUPL-TRIGGERED-START; Ver2-Notification-extension ::= SEQUENCE { emergencyCallLocation NULL OPTIONAL, ...} Ver2-SETCapabilities-extension ::= SEQUENCE { serviceCapabilities ServiceCapabilities OPTIONAL, ..., supportedBearers SupportedBearers OPTIONAL} ServiceCapabilities ::= SEQUENCE { servicesSupported ServicesSupported, reportingCapabilities ReportingCap OPTIONAL, eventTriggerCapabilities EventTriggerCapabilities OPTIONAL, sessionCapabilities SessionCapabilities, ...} ServicesSupported ::= SEQUENCE { periodicTrigger BOOLEAN, areaEventTrigger BOOLEAN, ...} EventTriggerCapabilities ::= SEQUENCE { geoAreaShapesSupported GeoAreaShapesSupported, maxNumGeoAreaSupported INTEGER (0..maxNumGeoArea) OPTIONAL, maxAreaIdListSupported INTEGER (0..maxAreaIdList) OPTIONAL, maxAreaIdSupportedPerList INTEGER (0..maxAreaId) OPTIONAL, ...} GeoAreaShapesSupported ::= SEQUENCE { ellipticalArea BOOLEAN, polygonArea BOOLEAN, ...} SessionCapabilities ::= SEQUENCE { maxNumberTotalSessions INTEGER (1..128), maxNumberPeriodicSessions INTEGER (1..32), maxNumberTriggeredSessions INTEGER (1..32), ...} SupportedBearers ::= SEQUENCE { gsm BOOLEAN, wcdma BOOLEAN, lte BOOLEAN, cdma BOOLEAN, hprd BOOLEAN, umb BOOLEAN, wlan BOOLEAN, wiMAX BOOLEAN, ..., nr BOOLEAN OPTIONAL} Ver2-PosProtocol-extension ::= SEQUENCE { lpp BOOLEAN, posProtocolVersionRRLP PosProtocolVersion3GPP OPTIONAL, posProtocolVersionRRC PosProtocolVersion3GPP OPTIONAL, posProtocolVersionTIA801 PosProtocolVersion3GPP2 OPTIONAL, posProtocolVersionLPP PosProtocolVersion3GPP OPTIONAL, ..., lppe BOOLEAN OPTIONAL, posProtocolVersionLPPe PosProtocolVersionOMA OPTIONAL} PosProtocolVersion3GPP ::= SEQUENCE { majorVersionField INTEGER(0..255), technicalVersionField INTEGER(0..255), editorialVersionField INTEGER(0..255), ...} PosProtocolVersion3GPP2 ::= SEQUENCE (SIZE(1..8)) OF Supported3GPP2PosProtocolVersion Supported3GPP2PosProtocolVersion ::= SEQUENCE { revisionNumber BIT STRING(SIZE (6)), -- the location standard revision number the SET supports coded according to 3GPP2 C.S0022 pointReleaseNumber INTEGER(0..255), internalEditLevel INTEGER(0..255), ...} PosProtocolVersionOMA ::= SEQUENCE { majorVersionField INTEGER(0..255), minorVersionField INTEGER(0..255), ...} Ver2-PosTechnology-extension ::= SEQUENCE { gANSSPositionMethods GANSSPositionMethods OPTIONAL, ..., additionalPositioningMethods AdditionalPositioningMethods OPTIONAL} GANSSPositionMethods ::= SEQUENCE (SIZE(1..16)) OF GANSSPositionMethod GANSSPositionMethod ::= SEQUENCE { ganssId INTEGER(0..15), -- coding according to parameter definition in section 10.10 ganssSBASid BIT STRING(SIZE(3)) OPTIONAL, --coding according to parameter definition in section 10.10 gANSSPositioningMethodTypes GANSSPositioningMethodTypes, gANSSSignals GANSSSignals, ..., rtk RTK OPTIONAL} RTK ::= SEQUENCE { osr BOOLEAN, ...} GANSSPositioningMethodTypes ::= SEQUENCE { setAssisted BOOLEAN, setBased BOOLEAN, autonomous BOOLEAN, ...} AdditionalPositioningMethods ::= SEQUENCE (SIZE(1..8)) OF AddPosSupport-Element AddPosSupport-Element ::= SEQUENCE { addPosID ENUMERATED { mBS, ... }, addPosMode BIT STRING { standalone (0), setBased (1), setAssisted (2)} (SIZE (1..8)) OPTIONAL, ...} Ver2-RequestedAssistData-extension ::= SEQUENCE { ganssRequestedCommonAssistanceDataList GanssRequestedCommonAssistanceDataList OPTIONAL, ganssRequestedGenericAssistanceDataList GanssRequestedGenericAssistanceDataList OPTIONAL, extendedEphemeris ExtendedEphemeris OPTIONAL, extendedEphemerisCheck ExtendedEphCheck OPTIONAL, ...} GanssRequestedCommonAssistanceDataList ::= SEQUENCE { ganssReferenceTime BOOLEAN, ganssIonosphericModel BOOLEAN, ganssAdditionalIonosphericModelForDataID00 BOOLEAN, ganssAdditionalIonosphericModelForDataID11 BOOLEAN, ganssEarthOrientationParameters BOOLEAN, ..., ganssAdditionalIonosphericModelForDataID01 BOOLEAN OPTIONAL} GanssRequestedGenericAssistanceDataList ::= SEQUENCE(SIZE(1..maxGANSS)) OF GanssReqGenericData GanssReqGenericData ::= SEQUENCE { ganssId INTEGER(0..15), -- coding according to parameter definition in section 10.10 ganssSBASid BIT STRING(SIZE(3)) OPTIONAL, --coding according to parameter definition in section 10.10 ganssRealTimeIntegrity BOOLEAN, ganssDifferentialCorrection DGANSS-Sig-Id-Req OPTIONAL, ganssAlmanac BOOLEAN, ganssNavigationModelData GanssNavigationModelData OPTIONAL, ganssTimeModels BIT STRING(SIZE(16)) OPTIONAL, ganssReferenceMeasurementInfo BOOLEAN, ganssDataBits GanssDataBits OPTIONAL, ganssUTCModel BOOLEAN, ganssAdditionalDataChoices GanssAdditionalDataChoices OPTIONAL, ganssAuxiliaryInformation BOOLEAN, ganssExtendedEphemeris ExtendedEphemeris OPTIONAL, ganssExtendedEphemerisCheck GanssExtendedEphCheck OPTIONAL, ..., bds-DifferentialCorrection BDS-Sig-Id-Req OPTIONAL, bds-GridModelReq BOOLEAN OPTIONAL} DGANSS-Sig-Id-Req ::= BIT STRING (SIZE(8)) -- coding according to parameter definition in section 10.9 BDS-Sig-Id-Req ::= BIT STRING (SIZE(8)) -- coding according to parameter definition in section 10.9 GanssNavigationModelData ::= SEQUENCE { ganssWeek INTEGER(0..4095), ganssToe INTEGER(0..167), t-toeLimit INTEGER(0..15), satellitesListRelatedDataList SatellitesListRelatedDataList OPTIONAL, ...} SatellitesListRelatedDataList ::= SEQUENCE(SIZE(0..maxGANSSSat)) OF SatellitesListRelatedData SatellitesListRelatedData ::= SEQUENCE { satId INTEGER(0..63), iod INTEGER(0..1023), ...} maxGANSS INTEGER ::= 16 maxGANSSSat INTEGER ::= 32 GanssDataBits ::= SEQUENCE { ganssTODmin INTEGER (0..59), reqDataBitAssistanceList ReqDataBitAssistanceList, ...} ReqDataBitAssistanceList ::= SEQUENCE { gnssSignals GANSSSignals, ganssDataBitInterval INTEGER (0..15), ganssDataBitSatList SEQUENCE (SIZE(1..maxGANSSSat)) OF INTEGER (0..63) OPTIONAL, ...} GanssAdditionalDataChoices ::= SEQUENCE { orbitModelID INTEGER(0..7) OPTIONAL, clockModelID INTEGER(0..7) OPTIONAL, utcModelID INTEGER(0..7) OPTIONAL, almanacModelID INTEGER(0..7) OPTIONAL, ...} ExtendedEphemeris ::= SEQUENCE { validity INTEGER (1..256), -- Requested validity in 4 hour steps ...} ExtendedEphCheck ::= SEQUENCE { beginTime GPSTime, -- Begin time of ephemeris extension held by SET endTime GPSTime, -- End time of ephemeris extension held by SET ...} GanssExtendedEphCheck ::= SEQUENCE { beginTime GANSSextEphTime, -- Begin time of ephemeris extension held by SET endTime GANSSextEphTime, -- End time of ephemeris extension held by SET ...} GPSTime ::= SEQUENCE { gPSWeek INTEGER (0..1023), gPSTOWhour INTEGER (0..167), ...} GANSSextEphTime ::= SEQUENCE { gANSSday INTEGER (0..8191), gANSSTODhour INTEGER (0..23), ...} Ver2-PosPayLoad-extension ::= SEQUENCE { lPPPayload SEQUENCE (SIZE (1..3)) OF OCTET STRING(SIZE (1..60000)) OPTIONAL, tia801Payload SEQUENCE (SIZE(1..3)) OF OCTET STRING(SIZE (1..60000)) OPTIONAL, ...} END