Commit 7a101167 authored by Jason Graham's avatar Jason Graham
Browse files

Update file LI-PS-PDU.asn

parent e762b619
Loading
Loading
Loading
Loading
Loading
+93 −2
Original line number Diff line number Diff line
@@ -386,10 +386,11 @@ IRIPayload ::= SEQUENCE
        -- If the sessionDirection field is to be used for a given service then
        -- the exact meaning and use of the field will be described in the
        -- relevant service-specific details
    payloadDirection        [6] PayloadDirection OPTIONAL
    payloadDirection        [6] PayloadDirection OPTIONAL,
        -- If the payloadDirection field is to be used for a given service then
        -- the exact meaning and use of the field will be described in the
        -- relevant service-specific details
    iRILocationInformation  [7] Locations OPTIONAL
}

IRIType ::= ENUMERATED
@@ -685,9 +686,99 @@ Location ::= SEQUENCE
    wlanLocationAttributes        [2] WlanLocationAttributes OPTIONAL,
    eTSI671HI2Location            [3] HI2Operations.Location OPTIONAL,
    threeGPP33128UserLocation     [4] TS33128Payloads.UserLocation OPTIONAL,
    cPEProvidedLocationAttributes [5] CPEProvidedLocationAttributes OPTIONAL
    cPEProvidedLocationAttributes [5] CPEProvidedLocationAttributes OPTIONAL,
    wGS84CoordinateDecimal        [6] Common-Parameters.WGS84CoordinateDecimal OPTIONAL,
    pIDF-LO                       [7] XMLType OPTIONAL
}

--=================================================================================================================
-- These is just here for the example, this could be defined in another 102 232 module, 103 280 or somewhere else
Locations ::= SEQUENCE (SIZE 1..MAX) OF LocationInformation

LocationInformation ::= SEQUENCE
{
    location           [1] Location, 
    -- I use Location here, although, it may be cleaner to make a new type that is a choice vs the sequence to enforce the 1-1 of provenance to location
    locationProvenance [2] LocationProvenance
}

LocationProvenance ::= SEQUENCE
{
    locationLIProvenance      [1] LocationLIProvenance,
    locationNetworkProvenance [2] locationNetworkProvenance
}

LocationLIProvenance ::= SEQUENCE
{
    locationProvenance    [1] LocationProvenance,
    timeStamp             [2] TimeOfLocation,
    sourceNF              [3] SourceNF,
    additionalInformation [4] AdditionalProvenanceInformation
}

LocationNetworkProvenance ::= SEQUENCE
{
    locationTime          [1] TimeOfLocation,
    locationSource        [2] LocationSource,
    additionalInformation [3] AdditionalProvenanceInformation
}

LocationSource ::= ENUMERATED
{
    other(1),
    unknown(2),
    cPEOrClient(3),
    network(4)
}

LocationProvenance ::= ENUMERATED
{
    other(1),
    observed(2),
    nFContext(3),
    nFLookup(4)
}

TimeOfLocation ::= SEQUENCE
{
    timeOfLocation             [1] TimeFormat,
    locationTimeStampQualifier [2] LocationTimeStampQualifier OPTIONAL
}

LocationTimeStampQualifier ::= ENUMERATED
{
    unknown(1),
    timeOfInterception(2),
    timeOfMediation(3),
    timeOfCalculation(4),
    timeLastObserved(5)
}

SourceNF ::= ENUMERATED
{
    aDMF(1),
    triggeringFunction(2),
    pOI(3),
    mDF(4)
}

XMLType ::= SEQUENCE
{
    xMLNamespace [1] XMLNamespace,
    xMLValue     [2] XMLValue
}

XMLNamespace ::= UTF8String

XMLValue ::= UTF8String

TimeFormat ::= CHOICE
{
    generalizedTime [1] GeneralizedTime,
    microSecondTime [2] MicroSecondTimeStamp
}
--=================================================================================================================

WlanLocationAttributes ::= SEQUENCE
{
    wlanAPMACAddress        [0] OCTET STRING (SIZE(6)) OPTIONAL,