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

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

DEFINITIONS AUTOMATIC TAGS ::= 

BEGIN

-- **************************************************************
--
-- IE parameter types from other modules.
--
-- **************************************************************

IMPORTS
	X2ap-ABSInformation,
	X2ap-ABS-Status,
	X2ap-AS-SecurityInformation,
	X2ap-Cause,
	X2ap-CompositeAvailableCapacityGroup,
	X2ap-COUNTvalue,
	X2ap-CriticalityDiagnostics,
	X2ap-CRNTI,
	X2ap-CSGMembershipStatus,
	X2ap-CSG-Id,
	X2ap-DeactivationIndication,
	X2ap-DL-Forwarding,
	X2ap-ECGI,
	X2ap-E-RAB-ID,
	X2ap-E-RAB-Level-QoS-Parameters,
	X2ap-E-RAB-List,
	X2ap-EUTRANTraceID,
	X2ap-GlobalENB-ID,
	X2ap-GTPtunnelEndpoint,
	X2ap-GUGroupIDList,
	X2ap-GUMMEI,
	X2ap-HandoverReportType,
	X2ap-HandoverRestrictionList,
	X2ap-InvokeIndication,
	X2ap-LocationReportingInformation,
	X2ap-MDT-Configuration,
	X2ap-ManagementBasedMDTallowed,
	X2ap-Neighbour-Information,
	X2ap-PCI,
	X2ap-PDCP-SN,
	X2ap-PLMN-Identity,
	X2ap-ReceiveStatusofULPDCPSDUs,
	X2ap-Registration-Request,
	X2ap-RelativeNarrowbandTxPower,
	X2ap-RadioResourceStatus,
	X2ap-RRCConnReestabIndicator,
	X2ap-RRCConnSetupIndicator,
	X2ap-UE-RLF-Report-Container,
	X2ap-RRC-Context,
	X2ap-ServedCell-Information,
	X2ap-ServedCells,
	X2ap-ShortMAC-I,
	X2ap-SRVCCOperationPossible,
	X2ap-SubscriberProfileIDforRFP,
	X2ap-TargetCellInUTRAN,
	X2ap-TargeteNBtoSource-eNBTransparentContainer,
	X2ap-TimeToWait,
	X2ap-TraceActivation,
	X2ap-TraceDepth,
	
	X2ap-TransportLayerAddress,
	X2ap-UEAggregateMaximumBitRate,
	X2ap-UE-HistoryInformation,
	X2ap-UE-S1AP-ID,
	X2ap-UESecurityCapabilities,
	X2ap-UE-X2AP-ID,
	X2ap-UL-HighInterferenceIndicationInfo,
	X2ap-UL-InterferenceOverloadIndication,
	X2ap-HWLoadIndicator,
	X2ap-S1TNLLoadIndicator,
	X2ap-Measurement-ID,
	X2ap-ReportCharacteristics,
	X2ap-MobilityParametersInformation,
	X2ap-MobilityParametersModificationRange

	
	
	
FROM X2AP-IEs

	PrivateIE-Container{},
	ProtocolExtensionContainer{},
	ProtocolIE-Container{},
	ProtocolIE-ContainerList{},
	ProtocolIE-ContainerPair{},
	ProtocolIE-ContainerPairList{},
	ProtocolIE-Single-Container{},
	X2AP-PRIVATE-IES,
	X2AP-PROTOCOL-EXTENSION,
	X2AP-PROTOCOL-IES,
	X2AP-PROTOCOL-IES-PAIR
FROM X2AP-Containers

	id-ABSInformation,
	id-ActivatedCellList,
	id-Cause,
	id-CellInformation,
	id-CellInformation-Item,
	id-CellMeasurementResult,
	id-CellMeasurementResult-Item,
	id-CellToReport,
	id-CellToReport-Item,
	id-CompositeAvailableCapacityGroup,
	id-CriticalityDiagnostics,
	id-DeactivationIndication,
	id-E-RABs-Admitted-Item,
	id-E-RABs-Admitted-List,
	id-E-RABs-NotAdmitted-List,
	id-E-RABs-SubjectToStatusTransfer-List,
	id-E-RABs-SubjectToStatusTransfer-Item,
	id-E-RABs-ToBeSetup-Item,
	id-GlobalENB-ID,
	id-GUGroupIDList,
	id-GUGroupIDToAddList,
	id-GUGroupIDToDeleteList,
	id-GUMMEI-ID,
	id-InvokeIndication,
	id-New-eNB-UE-X2AP-ID,
	id-Old-eNB-UE-X2AP-ID,
	id-Registration-Request,
	id-ReportingPeriodicity,
	id-ServedCells,
	id-ServedCellsToActivate,
	id-ServedCellsToAdd,
	id-ServedCellsToModify,
	id-ServedCellsToDelete,
	id-SRVCCOperationPossible,
	id-TargetCell-ID,
	id-TargeteNBtoSource-eNBTransparentContainer,
	id-TimeToWait,
	id-TraceActivation,
	id-UE-ContextInformation,
	id-UE-HistoryInformation,
	id-UE-X2AP-ID,
	id-Measurement-ID,
	id-ReportCharacteristics,
	id-ENB1-Measurement-ID,
	id-ENB2-Measurement-ID,
	id-ENB1-Cell-ID,
	id-ENB2-Cell-ID,
	id-ENB2-Proposed-Mobility-Parameters,
	id-ENB1-Mobility-Parameters,
	id-ENB2-Mobility-Parameters-Modification-Range,
	id-FailureCellPCI,
	id-Re-establishmentCellECGI,
	id-FailureCellCRNTI,
	id-ShortMAC-I,
	id-SourceCellECGI,
	id-FailureCellECGI,
	id-HandoverReportType,
	id-UE-RLF-Report-Container,
	id-PartialSuccessIndicator,
	id-MeasurementInitiationResult-List,
	id-MeasurementInitiationResult-Item,
	id-MeasurementFailureCause-Item,
	id-CompleteFailureCauseInformation-List,
	id-CompleteFailureCauseInformation-Item,
	id-CSGMembershipStatus,
	id-CSG-Id,
	id-MDTConfiguration,
	id-ManagementBasedMDTallowed,
	id-ABS-Status,
	id-RRCConnSetupIndicator,
	id-RRCConnReestabIndicator,
	id-TargetCellInUTRAN,

	x2ap-maxCellineNB,
	x2ap-maxnoofBearers,
	x2ap-maxnoofPDCP-SN,
	x2ap-maxFailedMeasObjects,
	x2ap-maxnoofCellIDforMDT,
	x2ap-maxnoofTAforMDT
	
FROM X2AP-Constants;

-- **************************************************************
--
-- HANDOVER REQUEST
--
-- **************************************************************

X2ap-HandoverRequest ::= SEQUENCE {
	protocolIEs                     ProtocolIE-Container       {{X2ap-HandoverRequest-IEs}},
	...
}

X2ap-HandoverRequest-IEs X2AP-PROTOCOL-IES ::= {
	{ ID id-Old-eNB-UE-X2AP-ID				CRITICALITY reject	TYPE X2ap-UE-X2AP-ID					PRESENCE mandatory }|
	{ ID id-Cause							CRITICALITY ignore	TYPE X2ap-Cause						PRESENCE mandatory }|
	{ ID id-TargetCell-ID					CRITICALITY reject	TYPE X2ap-ECGI						PRESENCE mandatory }|
	{ ID id-GUMMEI-ID						CRITICALITY reject	TYPE X2ap-GUMMEI						PRESENCE mandatory }|
	{ ID id-UE-ContextInformation			CRITICALITY reject	TYPE X2ap-UE-ContextInformation		PRESENCE mandatory }|
	{ ID id-UE-HistoryInformation			CRITICALITY ignore	TYPE X2ap-UE-HistoryInformation		PRESENCE mandatory }|
	{ ID id-TraceActivation					CRITICALITY ignore	TYPE X2ap-TraceActivation			PRESENCE optional}|
	{ ID id-SRVCCOperationPossible			CRITICALITY ignore	TYPE X2ap-SRVCCOperationPossible		PRESENCE optional}|
	{ ID id-CSGMembershipStatus				CRITICALITY reject	TYPE X2ap-CSGMembershipStatus		PRESENCE optional},
	...
}


X2ap-UE-ContextInformation-ExtIEs X2AP-PROTOCOL-EXTENSION ::= {
{ ID id-ManagementBasedMDTallowed	CRITICALITY ignore	EXTENSION X2ap-ManagementBasedMDTallowed		PRESENCE optional },
	...
}

X2ap-E-RABs-ToBeSetup-List ::= SEQUENCE (SIZE(1..x2ap-maxnoofBearers)) OF ProtocolIE-Single-Container { {X2ap-E-RABs-ToBeSetup-ItemIEs} }

X2ap-E-RABs-ToBeSetup-ItemIEs 	X2AP-PROTOCOL-IES ::= {
	{ ID id-E-RABs-ToBeSetup-Item	 CRITICALITY ignore 	TYPE X2ap-E-RABs-ToBeSetup-Item 	PRESENCE mandatory },
	...
}

X2ap-E-RABs-ToBeSetup-ItemExtIEs X2AP-PROTOCOL-EXTENSION ::= {
	...
}



-- **************************************************************
--
-- HANDOVER REQUEST ACKNOWLEDGE
--
-- **************************************************************

X2ap-HandoverRequestAcknowledge ::= SEQUENCE {
	protocolIEs                     ProtocolIE-Container       {{X2ap-HandoverRequestAcknowledge-IEs}},
	...
}

X2ap-HandoverRequestAcknowledge-IEs X2AP-PROTOCOL-IES ::= {
	{ ID id-Old-eNB-UE-X2AP-ID							CRITICALITY ignore	TYPE X2ap-UE-X2AP-ID		PRESENCE mandatory} |
	{ ID id-New-eNB-UE-X2AP-ID							CRITICALITY ignore	TYPE X2ap-UE-X2AP-ID		PRESENCE mandatory} |
	{ ID id-E-RABs-Admitted-List						CRITICALITY ignore	TYPE X2ap-E-RABs-Admitted-List	PRESENCE mandatory} |
	{ ID id-E-RABs-NotAdmitted-List						CRITICALITY ignore	TYPE X2ap-E-RAB-List		PRESENCE optional} |
	{ ID id-TargeteNBtoSource-eNBTransparentContainer	CRITICALITY ignore	TYPE X2ap-TargeteNBtoSource-eNBTransparentContainer	PRESENCE mandatory }|
	{ ID id-CriticalityDiagnostics						CRITICALITY ignore	TYPE X2ap-CriticalityDiagnostics	PRESENCE optional },
	...
}

X2ap-E-RABs-Admitted-List 		::= SEQUENCE (SIZE (1..x2ap-maxnoofBearers)) OF ProtocolIE-Single-Container { {X2ap-E-RABs-Admitted-ItemIEs} }

X2ap-E-RABs-Admitted-ItemIEs X2AP-PROTOCOL-IES ::= {
	{ ID id-E-RABs-Admitted-Item	CRITICALITY ignore	TYPE X2ap-E-RABs-Admitted-Item 	PRESENCE mandatory	}
}

X2ap-E-RABs-Admitted-Item-ExtIEs X2AP-PROTOCOL-EXTENSION ::= {
	...
}



-- **************************************************************
--
-- HANDOVER PREPARATION FAILURE
--
-- **************************************************************

X2ap-HandoverPreparationFailure ::= SEQUENCE {
	protocolIEs                     ProtocolIE-Container       {{X2ap-HandoverPreparationFailure-IEs}},
	...
}

X2ap-HandoverPreparationFailure-IEs X2AP-PROTOCOL-IES ::= {
	{ ID id-Old-eNB-UE-X2AP-ID			CRITICALITY ignore	TYPE X2ap-UE-X2AP-ID				PRESENCE mandatory} |
	{ ID id-Cause						CRITICALITY ignore	TYPE X2ap-Cause					PRESENCE mandatory} |
	{ ID id-CriticalityDiagnostics		CRITICALITY ignore	TYPE X2ap-CriticalityDiagnostics	PRESENCE optional },

	...
}

-- **************************************************************
--
-- Handover Report
--
-- **************************************************************

X2ap-HandoverReport ::= SEQUENCE {
	protocolIEs                     ProtocolIE-Container       {{X2ap-HandoverReport-IEs}},
	...
}

X2ap-HandoverReport-IEs X2AP-PROTOCOL-IES ::= {
	{ ID id-HandoverReportType			CRITICALITY ignore	TYPE X2ap-HandoverReportTYPE X2ap-PRESENCE mandatory}|
	{ ID id-Cause						CRITICALITY ignore	TYPE X2ap-Cause				PRESENCE mandatory} |
	{ ID id-SourceCellECGI				CRITICALITY ignore	TYPE X2ap-ECGI				PRESENCE mandatory}|
	{ ID id-FailureCellECGI				CRITICALITY ignore	TYPE X2ap-ECGI				PRESENCE mandatory} |
	{ ID id-Re-establishmentCellECGI	CRITICALITY ignore	TYPE X2ap-ECGI				PRESENCE conditional} -- The IE shall be present if the Handover Report TYPE X2ap-IE is set to “HO to Wrong Cell” -- |
	{ ID id-TargetCellInUTRAN			CRITICALITY ignore	TYPE X2ap-TargetCellInUTRAN	PRESENCE conditional} -- The IE shall be present if the Handover Report TYPE X2ap-IE is set to "InterRAT ping-pong" --,
	...
}

-- **************************************************************
--
-- SN Status Transfer
--
-- **************************************************************

X2ap-SNStatusTransfer ::= SEQUENCE {
	protocolIEs                     ProtocolIE-Container       {{X2ap-SNStatusTransfer-IEs}},
	...
}

X2ap-SNStatusTransfer-IEs X2AP-PROTOCOL-IES ::= {
	{ ID id-Old-eNB-UE-X2AP-ID						CRITICALITY reject	TYPE X2ap-UE-X2AP-ID						PRESENCE mandatory} |
	{ ID id-New-eNB-UE-X2AP-ID						CRITICALITY reject	TYPE X2ap-UE-X2AP-ID						PRESENCE mandatory} |
	{ ID id-E-RABs-SubjectToStatusTransfer-List	CRITICALITY ignore	TYPE X2ap-E-RABs-SubjectToStatusTransfer-List	PRESENCE mandatory} ,
	...
}

X2ap-E-RABs-SubjectToStatusTransfer-List	::= SEQUENCE (SIZE (1..x2ap-maxnoofBearers)) OF ProtocolIE-Single-Container { { X2ap-E-RABs-SubjectToStatusTransfer-ItemIEs} }

X2ap-E-RABs-SubjectToStatusTransfer-ItemIEs X2AP-PROTOCOL-IES ::= {
	{ ID id-E-RABs-SubjectToStatusTransfer-Item	CRITICALITY ignore	TYPE X2ap-E-RABs-SubjectToStatusTransfer-Item 	PRESENCE mandatory	}
}

X2ap-E-RABs-SubjectToStatusTransfer-ItemExtIEs X2AP-PROTOCOL-EXTENSION ::= {
	...
}





-- **************************************************************
--
-- UE Context Release 
--
-- **************************************************************

X2ap-UEContextRelease ::= SEQUENCE {
	protocolIEs                     ProtocolIE-Container       {{X2ap-UEContextRelease-IEs}},
	...
}

X2ap-UEContextRelease-IEs X2AP-PROTOCOL-IES ::= {
	{ ID id-Old-eNB-UE-X2AP-ID			CRITICALITY reject	TYPE X2ap-UE-X2AP-ID				PRESENCE mandatory} |
	{ ID id-New-eNB-UE-X2AP-ID			CRITICALITY reject	TYPE X2ap-UE-X2AP-ID				PRESENCE mandatory} ,
	...
}


-- **************************************************************
--
-- HANDOVER CANCEL
--
-- **************************************************************

X2ap-HandoverCancel ::= SEQUENCE {
	protocolIEs                     ProtocolIE-Container       {{X2ap-HandoverCancel-IEs}},
	...
}

X2ap-HandoverCancel-IEs X2AP-PROTOCOL-IES ::= {
	{ ID id-Old-eNB-UE-X2AP-ID			CRITICALITY reject	TYPE X2ap-UE-X2AP-ID				PRESENCE mandatory} |
	{ ID id-New-eNB-UE-X2AP-ID			CRITICALITY ignore	TYPE X2ap-UE-X2AP-ID				PRESENCE optional} |
	{ ID id-Cause						CRITICALITY ignore	TYPE X2ap-Cause					PRESENCE mandatory} ,
	...
}

-- **************************************************************
--
-- ERROR INDICATION
--
-- **************************************************************

X2ap-ErrorIndication ::= SEQUENCE {
	protocolIEs                     ProtocolIE-Container       {{X2ap-ErrorIndication-IEs}},
	...
}

X2ap-ErrorIndication-IEs X2AP-PROTOCOL-IES ::= {
	{ ID id-Old-eNB-UE-X2AP-ID			CRITICALITY ignore	TYPE X2ap-UE-X2AP-ID					PRESENCE optional} |
	{ ID id-New-eNB-UE-X2AP-ID			CRITICALITY ignore	TYPE X2ap-UE-X2AP-ID					PRESENCE optional} |
	{ ID id-Cause						CRITICALITY ignore	TYPE X2ap-Cause						PRESENCE optional} |
	{ ID id-CriticalityDiagnostics		CRITICALITY ignore	TYPE X2ap-CriticalityDiagnostics		PRESENCE optional} ,
	...
}

-- **************************************************************
--
-- Reset Request
--
-- **************************************************************

X2ap-ResetRequest ::= SEQUENCE {
	protocolIEs                     ProtocolIE-Container       {{X2ap-ResetRequest-IEs}},
	...
}

X2ap-ResetRequest-IEs X2AP-PROTOCOL-IES ::= {
	{ ID id-Cause						CRITICALITY ignore	TYPE X2ap-Cause						PRESENCE mandatory	},
	...
}

-- **************************************************************
--
-- Reset Response
--
-- **************************************************************

X2ap-ResetResponse ::= SEQUENCE {
	protocolIEs                     ProtocolIE-Container       {{X2ap-ResetResponse-IEs}},
	...
}

X2ap-ResetResponse-IEs X2AP-PROTOCOL-IES ::= {
	{ ID id-CriticalityDiagnostics	CRITICALITY ignore	TYPE X2ap-CriticalityDiagnostics			PRESENCE optional },
	...
}

-- **************************************************************
--
-- X2 SETUP REQUEST
--
-- **************************************************************

X2SetupRequest ::= SEQUENCE {
	protocolIEs                     ProtocolIE-Container       {{X2SetupRequest-IEs}},
	...
}

X2SetupRequest-IEs X2AP-PROTOCOL-IES ::= {
	{ ID id-GlobalENB-ID				CRITICALITY reject	TYPE X2ap-GlobalENB-ID				PRESENCE mandatory} |
	{ ID id-ServedCells						CRITICALITY reject	TYPE X2ap-ServedCells			PRESENCE mandatory} |
	{ ID id-GUGroupIDList					CRITICALITY reject  TYPE X2ap-GUGroupIDList			PRESENCE optional},
...
}



-- **************************************************************
--
-- X2 SETUP RESPONSE
--
-- **************************************************************

X2SetupResponse ::= SEQUENCE {
	protocolIEs                     ProtocolIE-Container       {{X2SetupResponse-IEs}},
	...
}

X2SetupResponse-IEs X2AP-PROTOCOL-IES ::= {
	{ ID id-GlobalENB-ID					CRITICALITY reject	TYPE X2ap-GlobalENB-ID			PRESENCE mandatory} |
	{ ID id-ServedCells						CRITICALITY reject	TYPE X2ap-ServedCells			PRESENCE mandatory} |
	{ ID id-GUGroupIDList					CRITICALITY reject  TYPE X2ap-GUGroupIDList			PRESENCE optional}|
	{ ID id-CriticalityDiagnostics			CRITICALITY ignore	TYPE X2ap-CriticalityDiagnostics	PRESENCE optional },
	...
}



-- **************************************************************
--
-- X2 SETUP FAILURE
--
-- **************************************************************

X2SetupFailure ::= SEQUENCE {
	protocolIEs                     ProtocolIE-Container       {{X2SetupFailure-IEs}},
	...
}

X2SetupFailure-IEs X2AP-PROTOCOL-IES ::= {
	{ ID id-Cause					CRITICALITY ignore		TYPE X2ap-Cause								PRESENCE mandatory} |
	{ ID id-TimeToWait				CRITICALITY ignore		TYPE X2ap-TimeToWait							PRESENCE optional} |
	{ ID id-CriticalityDiagnostics	CRITICALITY ignore		TYPE X2ap-CriticalityDiagnostics				PRESENCE optional },

	...
}



-- **************************************************************
--
-- LOAD INFORMATION
--
-- **************************************************************

X2ap-LoadInformation ::= SEQUENCE {
	protocolIEs                     ProtocolIE-Container       {{X2ap-LoadInformation-IEs}},
	...
}

X2ap-LoadInformation-IEs X2AP-PROTOCOL-IES ::= {
	{ ID id-CellInformation				CRITICALITY ignore	TYPE X2ap-CellInformation-List		PRESENCE mandatory} ,
	...
}

X2ap-CellInformation-List 		::= SEQUENCE (SIZE (1..x2ap-maxCellineNB)) OF ProtocolIE-Single-Container { {X2ap-CellInformation-ItemIEs} }

X2ap-CellInformation-ItemIEs X2AP-PROTOCOL-IES ::= {
	{ ID id-CellInformation-Item	CRITICALITY ignore	TYPE X2ap-CellInformation-Item 	PRESENCE mandatory	}
}


X2ap-CellInformation-Item-ExtIEs X2AP-PROTOCOL-EXTENSION ::= {
{ ID id-ABSInformation			CRITICALITY ignore	EXTENSION X2ap-ABSInformation		PRESENCE optional }|
{ ID id-InvokeIndication		CRITICALITY ignore	EXTENSION X2ap-InvokeIndication		PRESENCE optional },
	...
}

-- **************************************************************
--
-- ENB CONFIGURATION UPDATE
--
-- **************************************************************

X2ap-ENBConfigurationUpdate ::= SEQUENCE {
	protocolIEs                     ProtocolIE-Container       {{X2ap-ENBConfigurationUpdate-IEs}},
	...
}

X2ap-ENBConfigurationUpdate-IEs X2AP-PROTOCOL-IES ::= {
	{ ID id-ServedCellsToAdd    	CRITICALITY reject	TYPE X2ap-ServedCells				PRESENCE optional} |
	{ ID id-ServedCellsToModify 	CRITICALITY reject	TYPE X2ap-ServedCellsToModify		PRESENCE optional} |
	{ ID id-ServedCellsToDelete 	CRITICALITY reject	TYPE X2ap-Old-ECGIs					PRESENCE optional} |
	{ ID id-GUGroupIDToAddList 		CRITICALITY reject	TYPE X2ap-GUGroupIDList				PRESENCE optional} |
	{ ID id-GUGroupIDToDeleteList 	CRITICALITY reject	TYPE X2ap-GUGroupIDList				PRESENCE optional},
	...
}

X2ap-ServedCellsToModify::= SEQUENCE (SIZE (1..x2ap-maxCellineNB)) OF X2ap-ServedCellsToModify-Item
 

ServedCellsToModify-Item-ExtIEs X2AP-PROTOCOL-EXTENSION ::= {
{ ID id-DeactivationIndication			CRITICALITY ignore	EXTENSION X2ap-DeactivationIndication				PRESENCE optional },
	...
}

-- **************************************************************
--
-- ENB CONFIGURATION UPDATE ACKNOWLEDGE
--
-- **************************************************************

X2ap-ENBConfigurationUpdateAcknowledge ::= SEQUENCE {
	protocolIEs                     ProtocolIE-Container       {{X2ap-ENBConfigurationUpdateAcknowledge-IEs}},
	...
}

X2ap-ENBConfigurationUpdateAcknowledge-IEs X2AP-PROTOCOL-IES ::= {
	{ ID id-CriticalityDiagnostics		CRITICALITY ignore	TYPE X2ap-CriticalityDiagnostics			PRESENCE optional	},
...
}

-- **************************************************************
--
-- ENB CONFIGURATION UPDATE FAIURE
--
-- **************************************************************

X2ap-ENBConfigurationUpdateFailure ::= SEQUENCE {
	protocolIEs                     ProtocolIE-Container       {{X2ap-ENBConfigurationUpdateFailure-IEs}},
	...
}

X2ap-ENBConfigurationUpdateFailure-IEs X2AP-PROTOCOL-IES ::= {
	{ ID id-Cause						CRITICALITY ignore	TYPE X2ap-Cause						PRESENCE mandatory	}|
	{ ID id-TimeToWait					CRITICALITY ignore	TYPE X2ap-TimeToWait					PRESENCE optional	}|
	{ ID id-CriticalityDiagnostics		CRITICALITY ignore	TYPE X2ap-CriticalityDiagnostics		PRESENCE optional },
	...
}



-- **************************************************************
--
-- Resource Status Request
--
-- **************************************************************

X2ap-ResourceStatusRequest ::= SEQUENCE {
	protocolIEs                     ProtocolIE-Container       {{X2ap-ResourceStatusRequest-IEs}},
	...
}

X2ap-ResourceStatusRequest-IEs X2AP-PROTOCOL-IES ::= {
	{ ID id-ENB1-Measurement-ID		CRITICALITY reject	TYPE X2ap-Measurement-ID					PRESENCE mandatory}|
	{ ID id-ENB2-Measurement-ID		CRITICALITY ignore	TYPE X2ap-Measurement-ID					PRESENCE conditional}|-- The IE shall be present if the Registration Request IE is set to “Stop”--
	{ ID id-Registration-Request	CRITICALITY reject	TYPE X2ap-Registration-Request			PRESENCE mandatory}|
	{ ID id-ReportCharacteristics	CRITICALITY reject	TYPE X2ap-ReportCharacteristics			PRESENCE optional}|
	{ ID id-CellToReport			CRITICALITY ignore	TYPE X2ap-CellToReport-List				PRESENCE mandatory}|
	{ ID id-ReportingPeriodicity	CRITICALITY ignore	TYPE X2ap-ReportingPeriodicity			PRESENCE optional}|
	{ ID id-PartialSuccessIndicator	CRITICALITY ignore	TYPE X2ap-PartialSuccessIndicator		PRESENCE optional},
	...
}


X2ap-CellToReport-List 		::= SEQUENCE (SIZE (1..x2ap-maxCellineNB)) OF ProtocolIE-Single-Container { {X2ap-CellToReport-ItemIEs} }

X2ap-CellToReport-ItemIEs X2AP-PROTOCOL-IES ::= {
	{ ID id-CellToReport-Item	CRITICALITY ignore	TYPE X2ap-CellToReport-Item 	PRESENCE mandatory	}
}



X2ap-CellToReport-Item-ExtIEs X2AP-PROTOCOL-EXTENSION ::= {
	...
}


X2ap-ReportingPeriodicity ::= ENUMERATED {
	one-thousand-ms,
	two-thousand-ms,
	five-thousand-ms,
	ten-thousand-ms,
...
}

X2ap-PartialSuccessIndicator ::= ENUMERATED {
	partial-success-allowed,
...
}

-- **************************************************************
--
-- Resource Status Response
--
-- **************************************************************

X2ap-ResourceStatusResponse ::= SEQUENCE {
	protocolIEs                     ProtocolIE-Container       {{X2ap-ResourceStatusResponse-IEs}},
	...
}

X2ap-ResourceStatusResponse-IEs X2AP-PROTOCOL-IES ::= {
	{ ID id-ENB1-Measurement-ID					CRITICALITY reject	TYPE X2ap-Measurement-ID						PRESENCE mandatory}|
	{ ID id-ENB2-Measurement-ID					CRITICALITY reject	TYPE X2ap-Measurement-ID						PRESENCE mandatory}|
	{ ID id-CriticalityDiagnostics				CRITICALITY ignore	TYPE X2ap-CriticalityDiagnostics				PRESENCE optional}|
	{ ID id-MeasurementInitiationResult-List	CRITICALITY ignore	TYPE X2ap-MeasurementInitiationResult-List	PRESENCE optional},
	...
}


X2ap-MeasurementInitiationResult-List	::= SEQUENCE (SIZE (1..x2ap-maxCellineNB)) OF ProtocolIE-Single-Container { { X2ap-MeasurementInitiationResult-ItemIEs} }

X2ap-MeasurementInitiationResult-ItemIEs X2AP-PROTOCOL-IES ::= {
	{ ID id-MeasurementInitiationResult-Item	CRITICALITY ignore	TYPE X2ap-MeasurementInitiationResult-Item	PRESENCE mandatory}
}



X2ap-MeasurementInitiationResult-Item-ExtIEs X2AP-PROTOCOL-EXTENSION ::= {
	...
}

X2ap-MeasurementFailureCause-List	::= SEQUENCE (SIZE (1..x2ap-maxFailedMeasObjects)) OF ProtocolIE-Single-Container { { X2ap-MeasurementFailureCause-ItemIEs} }

X2ap-MeasurementFailureCause-ItemIEs X2AP-PROTOCOL-IES ::= {
	{ ID id-MeasurementFailureCause-Item	CRITICALITY ignore	TYPE X2ap-MeasurementFailureCause-Item		PRESENCE mandatory}
}


X2ap-MeasurementFailureCause-Item-ExtIEs X2AP-PROTOCOL-EXTENSION ::= {
	...
}

-- **************************************************************
--
-- Resource Status Failure
--
-- **************************************************************

X2ap-ResourceStatusFailure ::= SEQUENCE {
	protocolIEs                     ProtocolIE-Container       {{X2ap-ResourceStatusFailure-IEs}},
	...
}

X2ap-ResourceStatusFailure-IEs X2AP-PROTOCOL-IES ::= {
	{ ID id-ENB1-Measurement-ID						CRITICALITY reject	TYPE X2ap-Measurement-ID						PRESENCE mandatory}|
	{ ID id-ENB2-Measurement-ID						CRITICALITY reject	TYPE X2ap-Measurement-ID						PRESENCE mandatory}|
	{ ID id-Cause									CRITICALITY ignore	TYPE X2ap-Cause								PRESENCE mandatory}|
	{ ID id-CriticalityDiagnostics					CRITICALITY ignore	TYPE X2ap-CriticalityDiagnostics			PRESENCE optional}|
	{ ID id-CompleteFailureCauseInformation-List	CRITICALITY ignore	TYPE X2ap-CompleteFailureCauseInformation-List	PRESENCE optional},
	...
}

X2ap-CompleteFailureCauseInformation-List	::= SEQUENCE (SIZE (1..x2ap-maxCellineNB)) OF ProtocolIE-Single-Container { {X2ap-CompleteFailureCauseInformation-ItemIEs} }

X2ap-CompleteFailureCauseInformation-ItemIEs X2AP-PROTOCOL-IES ::= {
	{ ID id-CompleteFailureCauseInformation-Item	CRITICALITY ignore	TYPE X2ap-CompleteFailureCauseInformation-Item	PRESENCE mandatory}
}

X2ap-CompleteFailureCauseInformation-Item-ExtIEs X2AP-PROTOCOL-EXTENSION ::= {
	...
}

-- **************************************************************
--
-- Resource Status Update
--
-- **************************************************************

X2ap-ResourceStatusUpdate ::= SEQUENCE {
	protocolIEs                     ProtocolIE-Container       {{X2ap-ResourceStatusUpdate-IEs}},
	...
}

X2ap-ResourceStatusUpdate-IEs X2AP-PROTOCOL-IES ::= {
	{ ID id-ENB1-Measurement-ID		CRITICALITY reject	TYPE X2ap-Measurement-ID					PRESENCE mandatory}|
	{ ID id-ENB2-Measurement-ID		CRITICALITY reject	TYPE X2ap-Measurement-ID					PRESENCE mandatory}|
	{ ID id-CellMeasurementResult	CRITICALITY ignore	TYPE X2ap-CellMeasurementResult-List		PRESENCE mandatory},
	...
}

X2ap-CellMeasurementResult-List 		::= SEQUENCE (SIZE (1..x2ap-maxCellineNB)) OF ProtocolIE-Single-Container { {X2ap-CellMeasurementResult-ItemIEs} }

X2ap-CellMeasurementResult-ItemIEs X2AP-PROTOCOL-IES ::= {
	{ ID id-CellMeasurementResult-Item	CRITICALITY ignore	TYPE X2ap-CellMeasurementResult-Item 	PRESENCE mandatory	}
}

X2ap-CellMeasurementResult-Item-ExtIEs X2AP-PROTOCOL-EXTENSION ::= {
	{ ID id-CompositeAvailableCapacityGroup	CRITICALITY ignore	EXTENSION X2ap-CompositeAvailableCapacityGroup		PRESENCE optional}|
	{ ID id-ABS-Status						CRITICALITY ignore	EXTENSION X2ap-ABS-Status							PRESENCE optional},
	...
}


-- **************************************************************
--
-- PRIVATE MESSAGE
--
-- **************************************************************

X2ap-PrivateMessage ::= SEQUENCE {
	privateIEs		PrivateIE-Container  {{X2ap-PrivateMessage-IEs}},
	...
}

X2ap-PrivateMessage-IEs X2AP-PRIVATE-IES ::= {
	...
}

-- **************************************************************
--
-- MOBILITY CHANGE REQUEST
--
-- **************************************************************

X2ap-MobilityChangeRequest ::= SEQUENCE {
	protocolIEs		ProtocolIE-Container  {{X2ap-MobilityChangeRequest-IEs}},
	...
}

X2ap-MobilityChangeRequest-IEs X2AP-PROTOCOL-IES ::= {
	{ ID id-ENB1-Cell-ID						CRITICALITY reject	TYPE X2ap-ECGI											PRESENCE mandatory	}|
	{ ID id-ENB2-Cell-ID						CRITICALITY reject	TYPE X2ap-ECGI											PRESENCE mandatory	}|
	{ ID id-ENB1-Mobility-Parameters			CRITICALITY ignore	TYPE X2ap-MobilityParametersInformation				PRESENCE optional	}|
	{ ID id-ENB2-Proposed-Mobility-Parameters	CRITICALITY reject	TYPE X2ap-MobilityParametersInformation				PRESENCE mandatory	}|
	{ ID id-Cause								CRITICALITY reject	TYPE X2ap-Cause											PRESENCE mandatory	},
	...
}

-- **************************************************************
--
-- MOBILITY CHANGE ACKNOWLEDGE
--
-- **************************************************************

X2ap-MobilityChangeAcknowledge ::= SEQUENCE {
	protocolIEs                     ProtocolIE-Container       {{X2ap-MobilityChangeAcknowledge-IEs}},
	...
}

X2ap-MobilityChangeAcknowledge-IEs X2AP-PROTOCOL-IES ::= {
	{ ID id-ENB1-Cell-ID			CRITICALITY reject	TYPE X2ap-ECGI							PRESENCE mandatory	}|
	{ ID id-ENB2-Cell-ID			CRITICALITY reject	TYPE X2ap-ECGI							PRESENCE mandatory	}|
	{ ID id-CriticalityDiagnostics	CRITICALITY ignore	TYPE X2ap-CriticalityDiagnostics			PRESENCE optional },
	...
}


-- **************************************************************
--
-- MOBILITY CHANGE FAILURE
--
-- **************************************************************

X2ap-MobilityChangeFailure ::= SEQUENCE {
	protocolIEs                     ProtocolIE-Container       {{X2ap-MobilityChangeFailure-IEs}},
	...
}

X2ap-MobilityChangeFailure-IEs X2AP-PROTOCOL-IES ::= {
	{ ID id-ENB1-Cell-ID									CRITICALITY ignore	TYPE X2ap-ECGI								PRESENCE mandatory	}|
	{ ID id-ENB2-Cell-ID									CRITICALITY ignore	TYPE X2ap-ECGI								PRESENCE mandatory	}|
	{ ID id-Cause											CRITICALITY ignore	TYPE X2ap-Cause												PRESENCE mandatory	}|
	{ ID id-ENB2-Mobility-Parameters-Modification-Range		CRITICALITY ignore	TYPE X2ap-MobilityParametersModificationRange		PRESENCE optional	}|
	{ ID id-CriticalityDiagnostics							CRITICALITY ignore	TYPE X2ap-CriticalityDiagnostics						PRESENCE optional },
	...
}

-- **************************************************************
--
-- Radio Link Failure Indication
--
-- **************************************************************

X2ap-RLFIndication ::= SEQUENCE {
	protocolIEs                     ProtocolIE-Container       {{X2ap-RLFIndication-IEs}},
	...
}

X2ap-RLFIndication-IEs X2AP-PROTOCOL-IES ::= {
	{ ID id-FailureCellPCI				CRITICALITY ignore	TYPE X2ap-PCI						PRESENCE mandatory}|
	{ ID id-Re-establishmentCellECGI	CRITICALITY ignore	TYPE X2ap-ECGI						PRESENCE mandatory}|
	{ ID id-FailureCellCRNTI			CRITICALITY ignore	TYPE X2ap-CRNTI						PRESENCE mandatory}|
	{ ID id-ShortMAC-I					CRITICALITY ignore	TYPE X2ap-ShortMAC-I					PRESENCE optional}|
	{ ID id-UE-RLF-Report-Container		CRITICALITY ignore	TYPE X2ap-UE-RLF-Report-Container	PRESENCE optional}|
	{ ID id-RRCConnSetupIndicator		CRITICALITY reject	TYPE X2ap-RRCConnSetupIndicator		PRESENCE optional}|
	{ ID id-RRCConnReestabIndicator		CRITICALITY ignore	TYPE X2ap-RRCConnReestabIndicator	PRESENCE optional},
	...
}


-- **************************************************************
--
-- Cell Activation Request
--
-- **************************************************************

X2ap-CellActivationRequest ::= SEQUENCE {
	protocolIEs                     ProtocolIE-Container       {{X2ap-CellActivationRequest-IEs}},
	...
}

X2ap-CellActivationRequest-IEs X2AP-PROTOCOL-IES ::= {
	{ ID id-ServedCellsToActivate 	CRITICALITY reject	TYPE X2ap-ServedCellsToActivate		PRESENCE mandatory },
	...
}

X2ap-ServedCellsToActivate::= SEQUENCE (SIZE (1..x2ap-maxCellineNB)) OF X2ap-ServedCellsToActivate-Item
 

X2ap-ServedCellsToActivate-Item-ExtIEs X2AP-PROTOCOL-EXTENSION ::= {
	...
}

-- **************************************************************
--
-- Cell Activation Response
--
-- **************************************************************

X2ap-CellActivationResponse ::= SEQUENCE {
	protocolIEs                     ProtocolIE-Container       {{X2ap-CellActivationResponse-IEs}},
	...
}

X2ap-CellActivationResponse-IEs X2AP-PROTOCOL-IES ::= {
	{ ID id-ActivatedCellList 	CRITICALITY ignore		TYPE X2ap-ActivatedCellList		PRESENCE mandatory }|
	{ ID id-CriticalityDiagnostics	CRITICALITY ignore	TYPE X2ap-CriticalityDiagnostics			PRESENCE optional },
	...
}

X2ap-ActivatedCellList ::= SEQUENCE (SIZE (1..x2ap-maxCellineNB)) OF X2ap-ActivatedCellList-Item
 


X2ap-ActivatedCellList-Item-ExtIEs X2AP-PROTOCOL-EXTENSION ::= {
	...
}

--**************************************************************
--
-- CELL ACTIVATION FAILURE
--
-- **************************************************************

X2ap-CellActivationFailure ::= SEQUENCE {
	protocolIEs                     ProtocolIE-Container       {{X2ap-CellActivationFailure-IEs}},
	...
}

X2ap-CellActivationFailure-IEs X2AP-PROTOCOL-IES ::= {
	{ ID id-Cause						CRITICALITY ignore	TYPE X2ap-Cause						PRESENCE mandatory }|
	{ ID id-CriticalityDiagnostics		CRITICALITY ignore	TYPE X2ap-CriticalityDiagnostics		PRESENCE optional },
	...
}

END