-- 3GPP TS 36.413 V15.5.0 (2019-03)
-- 9.3.2	Elementary Procedure Definitions
-- **************************************************************
--
-- Elementary Procedure definitions
--
-- **************************************************************

S1AP-PDU-Descriptions  { 
itu-t (0) identified-organization (4) etsi (0) mobileDomain (0) 
eps-Access (21) modules (3) s1ap (1) version1 (1) s1ap-PDU-Descriptions (0)}

DEFINITIONS AUTOMATIC TAGS ::= 

BEGIN

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

IMPORTS
	Criticality,
	ProcedureCode
FROM S1AP-CommonDataTypes

	CellTrafficTrace,
	DeactivateTrace,
	DownlinkUEAssociatedLPPaTransport,
	DownlinkNASTransport,
	DownlinkNonUEAssociatedLPPaTransport,
	DownlinkS1cdma2000tunnelling,
	ENBDirectInformationTransfer,
	ENBStatusTransfer,
	ENBConfigurationUpdate,
	ENBConfigurationUpdateAcknowledge,
	ENBConfigurationUpdateFailure,
	ErrorIndication,
	HandoverCancel,
	HandoverCancelAcknowledge,
	HandoverCommand,
	HandoverFailure,
	HandoverNotify,
	HandoverPreparationFailure,
	HandoverRequest,
	HandoverRequestAcknowledge,
	HandoverRequired,
	InitialContextSetupFailure,
	InitialContextSetupRequest,
	InitialContextSetupResponse,
	InitialUEMessage,
	KillRequest,
	KillResponse,
	LocationReportingControl,
	LocationReportingFailureIndication,
	LocationReport,
	MMEConfigurationUpdate,
	MMEConfigurationUpdateAcknowledge,
	MMEConfigurationUpdateFailure,
	MMEDirectInformationTransfer,
	MMEStatusTransfer,
	NASNonDeliveryIndication,
	OverloadStart,
	OverloadStop,
	Paging,
	PathSwitchRequest,
	PathSwitchRequestAcknowledge,
	PathSwitchRequestFailure,	
	PrivateMessage,
	Reset,
	ResetAcknowledge,
	S1SetupFailure,
	S1SetupRequest,
	S1SetupResponse,
	E-RABModifyRequest,
	E-RABModifyResponse,
	E-RABModificationIndication,
	E-RABModificationConfirm,
	E-RABReleaseCommand,
	E-RABReleaseResponse,
	E-RABReleaseIndication,
	E-RABSetupRequest,
	E-RABSetupResponse,
	TraceFailureIndication,
	TraceStart,
	UECapabilityInfoIndication,
	UEContextModificationFailure,
	UEContextModificationRequest,
	UEContextModificationResponse,
	UEContextReleaseCommand,
	UEContextReleaseComplete,
	UEContextReleaseRequest,
	UERadioCapabilityMatchRequest,
	UERadioCapabilityMatchResponse,
	UplinkUEAssociatedLPPaTransport,
	UplinkNASTransport,
	UplinkNonUEAssociatedLPPaTransport,
	UplinkS1cdma2000tunnelling,
	WriteReplaceWarningRequest,
	WriteReplaceWarningResponse,
	ENBConfigurationTransfer,
	MMEConfigurationTransfer,
	PWSRestartIndication,
	UEContextModificationIndication,
	UEContextModificationConfirm,
	RerouteNASRequest,
	PWSFailureIndication,
	UEContextSuspendRequest,
	UEContextSuspendResponse,
	UEContextResumeRequest,
	UEContextResumeResponse,
	UEContextResumeFailure,
	ConnectionEstablishmentIndication,
	NASDeliveryIndication,
	RetrieveUEInformation,
	UEInformationTransfer,
	ENBCPRelocationIndication,
	MMECPRelocationIndication,
	SecondaryRATDataUsageReport


FROM S1AP-PDU-Contents
	
	id-CellTrafficTrace,
	id-DeactivateTrace,
	id-downlinkUEAssociatedLPPaTransport,
	id-downlinkNASTransport,
	id-downlinkNonUEAssociatedLPPaTransport,
	id-DownlinkS1cdma2000tunnelling,
	id-eNBStatusTransfer,
	id-ErrorIndication,
	id-HandoverCancel,
	id-HandoverNotification,
	id-HandoverPreparation,
	id-HandoverResourceAllocation,
	id-InitialContextSetup,
	id-initialUEMessage,
	id-ENBConfigurationUpdate,
	id-Kill,
	id-LocationReportingControl,
	id-LocationReportingFailureIndication,
	id-LocationReport,
	id-eNBDirectInformationTransfer,
	id-MMEConfigurationUpdate,
	id-MMEDirectInformationTransfer,
	id-MMEStatusTransfer,
	id-NASNonDeliveryIndication,
	id-OverloadStart,
	id-OverloadStop,
	id-Paging,
	id-PathSwitchRequest,
	id-PrivateMessage,
	id-Reset,
	id-S1Setup,
	id-E-RABModify,
	id-E-RABModificationIndication,
	id-E-RABRelease,
	id-E-RABReleaseIndication,
	id-E-RABSetup,
	id-TraceFailureIndication,
	id-TraceStart,
	id-UECapabilityInfoIndication,
	id-UEContextModification,
	id-UEContextRelease,
	id-UEContextReleaseRequest,
	id-UERadioCapabilityMatch,
	id-uplinkUEAssociatedLPPaTransport,
	id-uplinkNASTransport,
	id-uplinkNonUEAssociatedLPPaTransport,
	id-UplinkS1cdma2000tunnelling,
	id-WriteReplaceWarning,
	id-eNBConfigurationTransfer,
	id-MMEConfigurationTransfer,
	id-PWSRestartIndication,
	id-UEContextModificationIndication,
	id-RerouteNASRequest,
	id-PWSFailureIndication,
	id-UEContextSuspend,
	id-UEContextResume,
	id-ConnectionEstablishmentIndication,
	id-NASDeliveryIndication,
	id-RetrieveUEInformation,
	id-UEInformationTransfer,
	id-eNBCPRelocationIndication,
	id-MMECPRelocationIndication,
	id-SecondaryRATDataUsageReport


FROM S1AP-Constants;


-- **************************************************************
--
-- Interface Elementary Procedure Class
--
-- **************************************************************

S1AP-ELEMENTARY-PROCEDURE ::= CLASS {
	&InitiatingMessage				,
	&SuccessfulOutcome							OPTIONAL,
	&UnsuccessfulOutcome						OPTIONAL,
	&procedureCode				ProcedureCode 	UNIQUE,
	&criticality				Criticality 	DEFAULT ignore
}
WITH SYNTAX {
	INITIATING MESSAGE			&InitiatingMessage
	[SUCCESSFUL OUTCOME			&SuccessfulOutcome]
	[UNSUCCESSFUL OUTCOME		&UnsuccessfulOutcome]
	PROCEDURE CODE				&procedureCode
	[CRITICALITY				&criticality]
}

-- **************************************************************
--
-- Interface PDU Definition
--
-- **************************************************************

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

InitiatingMessage ::= SEQUENCE {
	procedureCode	S1AP-ELEMENTARY-PROCEDURE.&procedureCode		({S1AP-ELEMENTARY-PROCEDURES}),
	criticality		S1AP-ELEMENTARY-PROCEDURE.&criticality			({S1AP-ELEMENTARY-PROCEDURES}{@procedureCode}),
	value			S1AP-ELEMENTARY-PROCEDURE.&InitiatingMessage	({S1AP-ELEMENTARY-PROCEDURES}{@procedureCode})
}

SuccessfulOutcome ::= SEQUENCE {
	procedureCode	S1AP-ELEMENTARY-PROCEDURE.&procedureCode		({S1AP-ELEMENTARY-PROCEDURES}),
	criticality		S1AP-ELEMENTARY-PROCEDURE.&criticality			({S1AP-ELEMENTARY-PROCEDURES}{@procedureCode}),
	value			S1AP-ELEMENTARY-PROCEDURE.&SuccessfulOutcome	({S1AP-ELEMENTARY-PROCEDURES}{@procedureCode})
}

UnsuccessfulOutcome ::= SEQUENCE {
	procedureCode	S1AP-ELEMENTARY-PROCEDURE.&procedureCode		({S1AP-ELEMENTARY-PROCEDURES}),
	criticality		S1AP-ELEMENTARY-PROCEDURE.&criticality			({S1AP-ELEMENTARY-PROCEDURES}{@procedureCode}),
	value			S1AP-ELEMENTARY-PROCEDURE.&UnsuccessfulOutcome	({S1AP-ELEMENTARY-PROCEDURES}{@procedureCode})
}

-- **************************************************************
--
-- Interface Elementary Procedure List
--
-- **************************************************************

S1AP-ELEMENTARY-PROCEDURES S1AP-ELEMENTARY-PROCEDURE ::= {
	S1AP-ELEMENTARY-PROCEDURES-CLASS-1			|
	S1AP-ELEMENTARY-PROCEDURES-CLASS-2,	
	...
}


S1AP-ELEMENTARY-PROCEDURES-CLASS-1 S1AP-ELEMENTARY-PROCEDURE ::= {
	handoverPreparation				|
	handoverResourceAllocation		|
	pathSwitchRequest 				|
	e-RABSetup						|
	e-RABModify						|
	e-RABRelease					|
	initialContextSetup				|
	handoverCancel					|
	kill							|
	reset							|
	s1Setup							|
	uEContextModification			|
	uEContextRelease				|
	eNBConfigurationUpdate			|
	mMEConfigurationUpdate			|
	writeReplaceWarning				,
	...,
	uERadioCapabilityMatch						|
	e-RABModificationIndication					|
	uEContextModificationIndication				|
	uEContextSuspend							|
	uEContextResume
}

S1AP-ELEMENTARY-PROCEDURES-CLASS-2 S1AP-ELEMENTARY-PROCEDURE ::= {	
	handoverNotification			|
	e-RABReleaseIndication			|
	paging 							|
	downlinkNASTransport			|
	initialUEMessage				|
	uplinkNASTransport				|
	errorIndication					|
	nASNonDeliveryIndication		|
	uEContextReleaseRequest			|
	downlinkS1cdma2000tunnelling	|
	uplinkS1cdma2000tunnelling		|
	uECapabilityInfoIndication		|
	eNBStatusTransfer				|
	mMEStatusTransfer				|
	deactivateTrace					|
	traceStart						|
	traceFailureIndication			|
	cellTrafficTrace				|
	locationReportingControl		|
	locationReportingFailureIndication	|
	locationReport					|
	overloadStart					|
	overloadStop					|
	eNBDirectInformationTransfer	|
	mMEDirectInformationTransfer	|
	eNBConfigurationTransfer		|
	mMEConfigurationTransfer		|
	privateMessage					,
	...,
	downlinkUEAssociatedLPPaTransport	|
	uplinkUEAssociatedLPPaTransport	|
	downlinkNonUEAssociatedLPPaTransport	|
	uplinkNonUEAssociatedLPPaTransport	|
	pWSRestartIndication			|
	rerouteNASRequest				|
	pWSFailureIndication						|
	connectionEstablishmentIndication	|
	nASDeliveryIndication			|
	retrieveUEInformation			|
	uEInformationTransfer			|
	eNBCPRelocationIndication					|
	mMECPRelocationIndication		|
	secondaryRATDataUsageReport
}

-- **************************************************************
--
-- Interface Elementary Procedures
--
-- **************************************************************

handoverPreparation S1AP-ELEMENTARY-PROCEDURE ::= {
	INITIATING MESSAGE		HandoverRequired
	SUCCESSFUL OUTCOME		HandoverCommand
	UNSUCCESSFUL OUTCOME	HandoverPreparationFailure
	PROCEDURE CODE			id-HandoverPreparation
	CRITICALITY				reject
}

handoverResourceAllocation S1AP-ELEMENTARY-PROCEDURE ::= {
	INITIATING MESSAGE		HandoverRequest
	SUCCESSFUL OUTCOME		HandoverRequestAcknowledge
	UNSUCCESSFUL OUTCOME	HandoverFailure
	PROCEDURE CODE			id-HandoverResourceAllocation
	CRITICALITY				reject
}

handoverNotification S1AP-ELEMENTARY-PROCEDURE ::= {
	INITIATING MESSAGE		HandoverNotify
	PROCEDURE CODE			id-HandoverNotification
	CRITICALITY				ignore
}

pathSwitchRequest S1AP-ELEMENTARY-PROCEDURE ::= {
	INITIATING MESSAGE		PathSwitchRequest
	SUCCESSFUL OUTCOME		PathSwitchRequestAcknowledge
	UNSUCCESSFUL OUTCOME	PathSwitchRequestFailure
	PROCEDURE CODE			id-PathSwitchRequest
	CRITICALITY				reject
}

e-RABSetup S1AP-ELEMENTARY-PROCEDURE ::= {
	INITIATING MESSAGE		E-RABSetupRequest
	SUCCESSFUL OUTCOME		E-RABSetupResponse
	PROCEDURE CODE			id-E-RABSetup
	CRITICALITY				reject
}

e-RABModify S1AP-ELEMENTARY-PROCEDURE ::= {
	INITIATING MESSAGE		E-RABModifyRequest
	SUCCESSFUL OUTCOME		E-RABModifyResponse
	PROCEDURE CODE			id-E-RABModify
	CRITICALITY				reject
}

e-RABRelease S1AP-ELEMENTARY-PROCEDURE ::= {
	INITIATING MESSAGE		E-RABReleaseCommand
	SUCCESSFUL OUTCOME		E-RABReleaseResponse
	PROCEDURE CODE			id-E-RABRelease
	CRITICALITY				reject
}

e-RABReleaseIndication S1AP-ELEMENTARY-PROCEDURE ::= {
	INITIATING MESSAGE		E-RABReleaseIndication
	PROCEDURE CODE			id-E-RABReleaseIndication
	CRITICALITY				ignore
}

initialContextSetup S1AP-ELEMENTARY-PROCEDURE ::= {
	INITIATING MESSAGE		InitialContextSetupRequest
	SUCCESSFUL OUTCOME		InitialContextSetupResponse
	UNSUCCESSFUL OUTCOME 	InitialContextSetupFailure
	PROCEDURE CODE			id-InitialContextSetup
	CRITICALITY				reject
}

uEContextReleaseRequest S1AP-ELEMENTARY-PROCEDURE ::= {
	INITIATING MESSAGE		UEContextReleaseRequest
	PROCEDURE CODE			id-UEContextReleaseRequest
	CRITICALITY				ignore
}

paging S1AP-ELEMENTARY-PROCEDURE ::= {
	INITIATING MESSAGE		Paging
	PROCEDURE CODE			id-Paging
	CRITICALITY				ignore
}

downlinkNASTransport S1AP-ELEMENTARY-PROCEDURE ::= {
	INITIATING MESSAGE		DownlinkNASTransport
	PROCEDURE CODE			id-downlinkNASTransport
	CRITICALITY				ignore
}

initialUEMessage S1AP-ELEMENTARY-PROCEDURE ::= {
	INITIATING MESSAGE		InitialUEMessage
	PROCEDURE CODE			id-initialUEMessage
	CRITICALITY				ignore
}

uplinkNASTransport S1AP-ELEMENTARY-PROCEDURE ::= {
	INITIATING MESSAGE		UplinkNASTransport
	PROCEDURE CODE			id-uplinkNASTransport
	CRITICALITY				ignore
}
nASNonDeliveryIndication S1AP-ELEMENTARY-PROCEDURE ::= {
	INITIATING MESSAGE		NASNonDeliveryIndication
	PROCEDURE CODE			id-NASNonDeliveryIndication
	CRITICALITY				ignore
}

handoverCancel S1AP-ELEMENTARY-PROCEDURE ::= {
	INITIATING MESSAGE		HandoverCancel
	SUCCESSFUL OUTCOME		HandoverCancelAcknowledge
	PROCEDURE CODE			id-HandoverCancel
	CRITICALITY				reject
}

reset S1AP-ELEMENTARY-PROCEDURE ::= {
	INITIATING MESSAGE		Reset
	SUCCESSFUL OUTCOME		ResetAcknowledge
	PROCEDURE CODE			id-Reset
	CRITICALITY				reject
}

errorIndication S1AP-ELEMENTARY-PROCEDURE ::= {
	INITIATING MESSAGE		ErrorIndication
	PROCEDURE CODE			id-ErrorIndication
	CRITICALITY				ignore
}

s1Setup S1AP-ELEMENTARY-PROCEDURE ::= {
	INITIATING MESSAGE		S1SetupRequest
	SUCCESSFUL OUTCOME		S1SetupResponse
	UNSUCCESSFUL OUTCOME 	S1SetupFailure
	PROCEDURE CODE			id-S1Setup
	CRITICALITY				reject
}

eNBConfigurationUpdate S1AP-ELEMENTARY-PROCEDURE ::= {
	INITIATING MESSAGE		ENBConfigurationUpdate
	SUCCESSFUL OUTCOME		ENBConfigurationUpdateAcknowledge
	UNSUCCESSFUL OUTCOME 	ENBConfigurationUpdateFailure
	PROCEDURE CODE			id-ENBConfigurationUpdate
	CRITICALITY				reject
}

mMEConfigurationUpdate S1AP-ELEMENTARY-PROCEDURE ::= {
	INITIATING MESSAGE		MMEConfigurationUpdate
	SUCCESSFUL OUTCOME		MMEConfigurationUpdateAcknowledge
	UNSUCCESSFUL OUTCOME 	MMEConfigurationUpdateFailure
	PROCEDURE CODE			id-MMEConfigurationUpdate
	CRITICALITY				reject
}

downlinkS1cdma2000tunnelling S1AP-ELEMENTARY-PROCEDURE ::= {
	INITIATING MESSAGE		DownlinkS1cdma2000tunnelling
	PROCEDURE CODE			id-DownlinkS1cdma2000tunnelling
	CRITICALITY				ignore
}

uplinkS1cdma2000tunnelling S1AP-ELEMENTARY-PROCEDURE ::= {
	INITIATING MESSAGE		UplinkS1cdma2000tunnelling
	PROCEDURE CODE			id-UplinkS1cdma2000tunnelling
	CRITICALITY				ignore
}

uEContextModification S1AP-ELEMENTARY-PROCEDURE ::= {
	INITIATING MESSAGE		UEContextModificationRequest
	SUCCESSFUL OUTCOME		UEContextModificationResponse
	UNSUCCESSFUL OUTCOME 	UEContextModificationFailure
	PROCEDURE CODE			id-UEContextModification
	CRITICALITY				reject
}

uECapabilityInfoIndication S1AP-ELEMENTARY-PROCEDURE ::= {
	INITIATING MESSAGE		UECapabilityInfoIndication
	PROCEDURE CODE			id-UECapabilityInfoIndication
	CRITICALITY				ignore
}

uEContextRelease S1AP-ELEMENTARY-PROCEDURE ::= {
	INITIATING MESSAGE		UEContextReleaseCommand
	SUCCESSFUL OUTCOME		UEContextReleaseComplete
	PROCEDURE CODE			id-UEContextRelease
	CRITICALITY				reject
}

eNBStatusTransfer S1AP-ELEMENTARY-PROCEDURE ::= {
	INITIATING MESSAGE		ENBStatusTransfer
	PROCEDURE CODE			id-eNBStatusTransfer
	CRITICALITY				ignore
}

mMEStatusTransfer S1AP-ELEMENTARY-PROCEDURE ::= {
	INITIATING MESSAGE		MMEStatusTransfer
	PROCEDURE CODE			id-MMEStatusTransfer
	CRITICALITY				ignore
}

deactivateTrace S1AP-ELEMENTARY-PROCEDURE ::= {
	INITIATING MESSAGE		DeactivateTrace
	PROCEDURE CODE			id-DeactivateTrace
	CRITICALITY				ignore
}

traceStart S1AP-ELEMENTARY-PROCEDURE ::= {
	INITIATING MESSAGE		TraceStart
	PROCEDURE CODE			id-TraceStart
	CRITICALITY				ignore
}

traceFailureIndication S1AP-ELEMENTARY-PROCEDURE ::= {
	INITIATING MESSAGE		TraceFailureIndication
	PROCEDURE CODE			id-TraceFailureIndication
	CRITICALITY				ignore
}
cellTrafficTrace S1AP-ELEMENTARY-PROCEDURE ::={
INITIATING MESSAGE		CellTrafficTrace
PROCEDURE CODE			id-CellTrafficTrace
CRITICALITY				ignore
}

locationReportingControl S1AP-ELEMENTARY-PROCEDURE ::= {
	INITIATING MESSAGE		LocationReportingControl
	PROCEDURE CODE			id-LocationReportingControl
	CRITICALITY				ignore
}

locationReportingFailureIndication S1AP-ELEMENTARY-PROCEDURE ::= {
	INITIATING MESSAGE		LocationReportingFailureIndication
	PROCEDURE CODE			id-LocationReportingFailureIndication
	CRITICALITY				ignore
}

locationReport S1AP-ELEMENTARY-PROCEDURE ::= {
	INITIATING MESSAGE		LocationReport
	PROCEDURE CODE			id-LocationReport
	CRITICALITY				ignore
}

overloadStart S1AP-ELEMENTARY-PROCEDURE ::= {
	INITIATING MESSAGE		OverloadStart
	PROCEDURE CODE			id-OverloadStart
	CRITICALITY				ignore
}

overloadStop S1AP-ELEMENTARY-PROCEDURE ::= {
	INITIATING MESSAGE		OverloadStop
	PROCEDURE CODE			id-OverloadStop
	CRITICALITY				reject
}

writeReplaceWarning S1AP-ELEMENTARY-PROCEDURE ::= {
	INITIATING MESSAGE		WriteReplaceWarningRequest
	SUCCESSFUL OUTCOME		WriteReplaceWarningResponse
	PROCEDURE CODE			id-WriteReplaceWarning
	CRITICALITY				reject
}

eNBDirectInformationTransfer S1AP-ELEMENTARY-PROCEDURE ::= {
	INITIATING MESSAGE		ENBDirectInformationTransfer
	PROCEDURE CODE			id-eNBDirectInformationTransfer
	CRITICALITY				ignore
}

mMEDirectInformationTransfer S1AP-ELEMENTARY-PROCEDURE ::= {
	INITIATING MESSAGE		MMEDirectInformationTransfer
	PROCEDURE CODE			id-MMEDirectInformationTransfer
	CRITICALITY				ignore
}

eNBConfigurationTransfer S1AP-ELEMENTARY-PROCEDURE ::= {
	INITIATING MESSAGE		ENBConfigurationTransfer
	PROCEDURE CODE			id-eNBConfigurationTransfer
	CRITICALITY				ignore
}

mMEConfigurationTransfer S1AP-ELEMENTARY-PROCEDURE ::= {
	INITIATING MESSAGE		MMEConfigurationTransfer
	PROCEDURE CODE			id-MMEConfigurationTransfer
	CRITICALITY				ignore
}


privateMessage S1AP-ELEMENTARY-PROCEDURE ::= {
	INITIATING MESSAGE		PrivateMessage
	PROCEDURE CODE			id-PrivateMessage
	CRITICALITY				ignore
}

pWSRestartIndication S1AP-ELEMENTARY-PROCEDURE ::= {
	INITIATING MESSAGE		PWSRestartIndication
	PROCEDURE CODE			id-PWSRestartIndication
	CRITICALITY				ignore
}

kill S1AP-ELEMENTARY-PROCEDURE ::= {
	INITIATING MESSAGE		KillRequest
	SUCCESSFUL OUTCOME		KillResponse
	PROCEDURE CODE			id-Kill
	CRITICALITY				reject
}

downlinkUEAssociatedLPPaTransport S1AP-ELEMENTARY-PROCEDURE ::= {
	INITIATING MESSAGE		DownlinkUEAssociatedLPPaTransport
	PROCEDURE CODE			id-downlinkUEAssociatedLPPaTransport
	CRITICALITY				ignore
}

uplinkUEAssociatedLPPaTransport S1AP-ELEMENTARY-PROCEDURE ::= {
	INITIATING MESSAGE		UplinkUEAssociatedLPPaTransport
	PROCEDURE CODE			id-uplinkUEAssociatedLPPaTransport
	CRITICALITY				ignore
}
downlinkNonUEAssociatedLPPaTransport S1AP-ELEMENTARY-PROCEDURE ::= {
	INITIATING MESSAGE		DownlinkNonUEAssociatedLPPaTransport
	PROCEDURE CODE			id-downlinkNonUEAssociatedLPPaTransport
	CRITICALITY				ignore
}

uplinkNonUEAssociatedLPPaTransport S1AP-ELEMENTARY-PROCEDURE ::= {
	INITIATING MESSAGE		UplinkNonUEAssociatedLPPaTransport
	PROCEDURE CODE			id-uplinkNonUEAssociatedLPPaTransport
	CRITICALITY				ignore
}

uERadioCapabilityMatch S1AP-ELEMENTARY-PROCEDURE ::= {
	INITIATING MESSAGE		UERadioCapabilityMatchRequest
	SUCCESSFUL OUTCOME		UERadioCapabilityMatchResponse
	PROCEDURE CODE			id-UERadioCapabilityMatch
	CRITICALITY				reject
}

e-RABModificationIndication S1AP-ELEMENTARY-PROCEDURE ::= {
	INITIATING MESSAGE		E-RABModificationIndication
	SUCCESSFUL OUTCOME		E-RABModificationConfirm
	PROCEDURE CODE			id-E-RABModificationIndication
	CRITICALITY				reject
}

uEContextModificationIndication S1AP-ELEMENTARY-PROCEDURE ::= {
	INITIATING MESSAGE		UEContextModificationIndication
	SUCCESSFUL OUTCOME		UEContextModificationConfirm
	PROCEDURE CODE			id-UEContextModificationIndication
	CRITICALITY				reject
}

rerouteNASRequest S1AP-ELEMENTARY-PROCEDURE ::= {
	INITIATING MESSAGE		RerouteNASRequest
	PROCEDURE CODE			id-RerouteNASRequest
	CRITICALITY				reject
}

pWSFailureIndication S1AP-ELEMENTARY-PROCEDURE ::= {
	INITIATING MESSAGE		PWSFailureIndication
	PROCEDURE CODE			id-PWSFailureIndication
	CRITICALITY				ignore
}

uEContextSuspend S1AP-ELEMENTARY-PROCEDURE ::= {
	INITIATING MESSAGE		UEContextSuspendRequest
	SUCCESSFUL OUTCOME		UEContextSuspendResponse
	PROCEDURE CODE			id-UEContextSuspend
	CRITICALITY				reject
}

uEContextResume S1AP-ELEMENTARY-PROCEDURE ::= {
	INITIATING MESSAGE		UEContextResumeRequest
	SUCCESSFUL OUTCOME		UEContextResumeResponse
	UNSUCCESSFUL OUTCOME 	UEContextResumeFailure
	PROCEDURE CODE			id-UEContextResume
	CRITICALITY				reject
}

connectionEstablishmentIndication S1AP-ELEMENTARY-PROCEDURE ::= {
	INITIATING MESSAGE		ConnectionEstablishmentIndication
	PROCEDURE CODE			id-ConnectionEstablishmentIndication
	CRITICALITY				reject
}

nASDeliveryIndication S1AP-ELEMENTARY-PROCEDURE ::= {
	INITIATING MESSAGE		NASDeliveryIndication
	PROCEDURE CODE			id-NASDeliveryIndication
	CRITICALITY				ignore
}

retrieveUEInformation S1AP-ELEMENTARY-PROCEDURE ::= {
	INITIATING MESSAGE		RetrieveUEInformation
	PROCEDURE CODE			id-RetrieveUEInformation
	CRITICALITY				reject
}

uEInformationTransfer S1AP-ELEMENTARY-PROCEDURE ::= {
	INITIATING MESSAGE		UEInformationTransfer
	PROCEDURE CODE			id-UEInformationTransfer
	CRITICALITY				reject
}

eNBCPRelocationIndication S1AP-ELEMENTARY-PROCEDURE ::= {
	INITIATING MESSAGE		ENBCPRelocationIndication
	PROCEDURE CODE			id-eNBCPRelocationIndication
	CRITICALITY				reject
}

mMECPRelocationIndication S1AP-ELEMENTARY-PROCEDURE ::= {
	INITIATING MESSAGE		MMECPRelocationIndication
	PROCEDURE CODE			id-MMECPRelocationIndication
	CRITICALITY				reject
}

secondaryRATDataUsageReport S1AP-ELEMENTARY-PROCEDURE ::= {
	INITIATING MESSAGE		SecondaryRATDataUsageReport
	PROCEDURE CODE			id-SecondaryRATDataUsageReport
	CRITICALITY			ignore
}


END
