-- **************************************************************
--
-- PDU definitions for X2AP.
--
-- **************************************************************

X2AP-PDU {
itu-t (0) identified-organization (4) etsi (0) mobileDomain (0)
eps-Access (21) modules (3) x2ap (2) version1 (1) x2ap-PDU (1) }

DEFINITIONS AUTOMATIC TAGS ::=

BEGIN

IMPORTS

    x2ap-maxProtocolIEs,
    X2ap-Criticality,
    X2ap-ProcedureCode,
    X2ap-ProtocolIE-ID
FROM X2AP-CommonDataTypes;

X2ap-IE ::= SEQUENCE {
    id X2ap-ProtocolIE-ID,
    criticality X2ap-Criticality,
    value ANY
}

X2AP-PDU ::= CHOICE {
    initiatingMessage X2ap-InitiatingMessage,
    successfulOutcome X2ap-SuccessfulOutcome,
    unsuccessfulOutcome X2ap-UnsuccessfulOutcome,
    ...
}

X2ap-InitiatingMessage ::= SEQUENCE {
    procedureCode   X2ap-ProcedureCode,
    criticality     X2ap-Criticality,
    value           ANY
}

X2ap-SuccessfulOutcome ::= SEQUENCE {
    procedureCode   X2ap-ProcedureCode,
    criticality     X2ap-Criticality,
    value           ANY
}

X2ap-UnsuccessfulOutcome ::= SEQUENCE {
    procedureCode   X2ap-ProcedureCode,
    criticality     X2ap-Criticality,
    value           ANY
}

X2ap-HandoverRequest ::= SEQUENCE {
    x2ap-HandoverRequest-ies SEQUENCE (SIZE (0..x2ap-maxProtocolIEs)) OF X2ap-IE,
    ...
}

X2ap-HandoverRequestAcknowledge ::= SEQUENCE {
    x2ap-HandoverRequestAcknowledge-ies SEQUENCE (SIZE (0..x2ap-maxProtocolIEs)) OF X2ap-IE,
    ...
}

X2ap-HandoverPreparationFailure ::= SEQUENCE {
    x2ap-HandoverPreparationFailure-ies SEQUENCE (SIZE (0..x2ap-maxProtocolIEs)) OF X2ap-IE,
    ...
}

X2ap-SNStatusTransfer ::= SEQUENCE {
    x2ap-SNStatusTransfer-ies SEQUENCE (SIZE (0..x2ap-maxProtocolIEs)) OF X2ap-IE,
    ...
}

X2ap-UEContextRelease ::= SEQUENCE {
    x2ap-UEContextRelease-ies SEQUENCE (SIZE (0..x2ap-maxProtocolIEs)) OF X2ap-IE,
    ...
}

X2ap-HandoverCancel ::= SEQUENCE {
    x2ap-HandoverCancel-ies SEQUENCE (SIZE (0..x2ap-maxProtocolIEs)) OF X2ap-IE,
    ...
}

X2ap-HandoverReport ::= SEQUENCE {
    x2ap-HandoverReport-ies SEQUENCE (SIZE (0..x2ap-maxProtocolIEs)) OF X2ap-IE,
    ...
}

X2ap-ErrorIndication ::= SEQUENCE {
    x2ap-ErrorIndication-ies SEQUENCE (SIZE (0..x2ap-maxProtocolIEs)) OF X2ap-IE,
    ...
}

X2ap-ResetRequest ::= SEQUENCE {
    x2ap-ResetRequest-ies SEQUENCE (SIZE (0..x2ap-maxProtocolIEs)) OF X2ap-IE,
    ...
}

X2ap-ResetResponse ::= SEQUENCE {
    x2ap-ResetResponse-ies SEQUENCE (SIZE (0..x2ap-maxProtocolIEs)) OF X2ap-IE,
    ...
}

X2SetupRequest ::= SEQUENCE {
    x2SetupRequest-ies SEQUENCE (SIZE (0..x2ap-maxProtocolIEs)) OF X2ap-IE,
    ...
}

X2SetupResponse ::= SEQUENCE {
    x2SetupResponse-ies SEQUENCE (SIZE (0..x2ap-maxProtocolIEs)) OF X2ap-IE,
    ...
}

X2SetupFailure ::= SEQUENCE {
    x2SetupFailure-ies SEQUENCE (SIZE (0..x2ap-maxProtocolIEs)) OF X2ap-IE,
    ...
}

X2ap-LoadInformation ::= SEQUENCE {
    x2ap-LoadInformation-ies SEQUENCE (SIZE (0..x2ap-maxProtocolIEs)) OF X2ap-IE,
    ...
}

X2ap-ENBConfigurationUpdate ::= SEQUENCE {
    x2ap-ENBConfigurationUpdate-ies SEQUENCE (SIZE (0..x2ap-maxProtocolIEs)) OF X2ap-IE,
    ...
}

X2ap-ENBConfigurationUpdateAcknowledge ::= SEQUENCE {
    x2ap-ENBConfigurationUpdateAcknowledge-ies SEQUENCE (SIZE (0..x2ap-maxProtocolIEs)) OF X2ap-IE,
    ...
}

X2ap-ENBConfigurationUpdateFailure ::= SEQUENCE {
    x2ap-ENBConfigurationUpdateFailure-ies SEQUENCE (SIZE (0..x2ap-maxProtocolIEs)) OF X2ap-IE,
    ...
}

X2ap-ResourceStatusRequest ::= SEQUENCE {
    x2ap-ResourceStatusRequest-ies SEQUENCE (SIZE (0..x2ap-maxProtocolIEs)) OF X2ap-IE,
    ...
}

X2ap-ResourceStatusResponse ::= SEQUENCE {
    x2ap-ResourceStatusResponse-ies SEQUENCE (SIZE (0..x2ap-maxProtocolIEs)) OF X2ap-IE,
    ...
}

X2ap-ResourceStatusFailure ::= SEQUENCE {
    x2ap-ResourceStatusFailure-ies SEQUENCE (SIZE (0..x2ap-maxProtocolIEs)) OF X2ap-IE,
    ...
}

X2ap-ResourceStatusUpdate ::= SEQUENCE {
    x2ap-ResourceStatusUpdate-ies SEQUENCE (SIZE (0..x2ap-maxProtocolIEs)) OF X2ap-IE,
    ...
}

X2ap-RLFIndication ::= SEQUENCE {
    x2ap-RLFIndication-ies SEQUENCE (SIZE (0..x2ap-maxProtocolIEs)) OF X2ap-IE,
    ...
}

X2ap-PrivateMessage ::= SEQUENCE {
    x2ap-PrivateMessage-ies SEQUENCE (SIZE (0..x2ap-maxProtocolIEs)) OF X2ap-IE,
    ...
}

X2ap-MobilityChangeRequest ::= SEQUENCE {
    x2ap-MobilityChangeRequest-ies SEQUENCE (SIZE (0..x2ap-maxProtocolIEs)) OF X2ap-IE,
    ...
}

X2ap-MobilityChangeAcknowledge ::= SEQUENCE {
    x2ap-MobilityChangeAcknowledge-ies SEQUENCE (SIZE (0..x2ap-maxProtocolIEs)) OF X2ap-IE,
    ...
}

X2ap-MobilityChangeFailure ::= SEQUENCE {
    x2ap-MobilityChangeFailure-ies SEQUENCE (SIZE (0..x2ap-maxProtocolIEs)) OF X2ap-IE,
    ...
}

X2ap-CellActivationRequest ::= SEQUENCE {
    x2ap-CellActivationRequest-ies SEQUENCE (SIZE (0..x2ap-maxProtocolIEs)) OF X2ap-IE,
    ...
}

X2ap-CellActivationResponse ::= SEQUENCE {
    x2ap-CellActivationResponse-ies SEQUENCE (SIZE (0..x2ap-maxProtocolIEs)) OF X2ap-IE,
    ...
}

X2ap-CellActivationFailure ::= SEQUENCE {
    x2ap-CellActivationFailure-ies SEQUENCE (SIZE (0..x2ap-maxProtocolIEs)) OF X2ap-IE,
    ...
}

END
