Newer
Older
* @author ETSI / STF519
* @version $URL:$
* $Id:$
* @desc This module provides Lib S1AP Templates used by the test component for S1AP tests.
* @copyright ETSI Copyright Notification
* No part may be reproduced except as authorized by written permission.
* The copyright and the foregoing restriction extend to reproduction in all media.
* All rights reserved.
* @see ETSI TS 136 413 / 3GPP TS 36.413 version 13.4.0 Release 13
// LibCommon
import from LibCommon_BasicTypesAndValues all;
import from LibCommon_DataStrings all;
// LibS1AP
import from S1AP_Constants language "ASN.1:1997" all;
import from S1AP_CommonDataTypes language "ASN.1:1997" all;
import from S1AP_IEs language "ASN.1:1997" all;
import from S1AP_PDU_Contents language "ASN.1:1997" all;
import from S1AP_PDU_Descriptions language "ASN.1:1997" all;
import from LibS1AP_TypesAndValues all;
group g_S1AP {
group g_S1AP_PDU {
/**
* @desc Send template for S1AP PDU with InitiatingMessage payload
* @param p_procedureCode Procedure code
* @param p_value Message value according to the Procedure code
* @see ETSI TS 136 413 V13.4.0 Clause 9.1 Message Functional Definition and Content
*/
template (value) S1AP_PDU m_initiatingMessage(
in ProcedureCode p_procedureCode,
in anytype p_value
) := {
initiatingMessage := {
procedureCode := p_procedureCode,
criticality := reject,
value_ := p_value
}
} // End of template m_HandoverPreparation
/**
* @desc List of S1AP Elementary procedures
* @see ETSI TS 136 413 Table 1: Class 1 procedures
*/
group HandoverPreparation {
/**
* @desc Receive template for InitiatingMessage message with Handover Required payload
*/
template (value) InitiatingMessage m_HandoverRequired(
template (value) RecordOf_ProtocolIE p_value) := {
procedureCode := id_HandoverPreparation,
criticality := reject,
value_ := {RecordOf_ProtocolIE := p_value}
} // End of template m_HandoverRequired
template (value) RecordOf_ProtocolIE m_HandoverRequiredIEs(
in template (value) MME_UE_S1AP_ID p_MME_value,
in template (value) ENB_UE_S1AP_ID p_eNB_value,
in template (value) HandoverType p_handoverType,
in template (value) Cause p_cause,
in template (value) TargetID p_targetId_value,
in template (value) Source_ToTarget_TransparentContainer p_Source_ToTarget_TransparentContainer_value
) := {
m_MME_UE_S1AP_ID(p_MME_value),
m_eNB_UE_S1AP_ID(p_eNB_value),
m_handoverType_IE(p_handoverType),
m_cause_IE(p_cause),
m_targetID_IE(p_targetId_value),
m_source_ToTarget_TransparentContainer_IE(p_Source_ToTarget_TransparentContainer_value)
} // End of template mw_HandoverCommandIEs
/**
* @desc Receive template for SuccessfulOutcome message with Handover Command payload
*/
template (value) SuccessfulOutcome m_HandoverCommand(
template (value) RecordOf_ProtocolIE p_value) := {
procedureCode := id_HandoverPreparation,
criticality := reject,
value_ := {RecordOf_ProtocolIE := p_value}
} // End of template m_HandoverCommand
template (value) RecordOf_ProtocolIE m_HandoverCommandIEs(
in template (value) MME_UE_S1AP_ID p_MME_value,
in template (value) ENB_UE_S1AP_ID p_eNB_value,
in template (value) HandoverType p_handoverType,
in template (value) Target_ToSource_TransparentContainer p_Target_ToSource_TransparentContainer_value
) := {
m_MME_UE_S1AP_ID(p_MME_value),
m_eNB_UE_S1AP_ID(p_eNB_value),
m_handoverType_IE(p_handoverType),
m_target_ToSource_TransparentContainer_IE(p_Target_ToSource_TransparentContainer_value)
} // End of template mw_HandoverCommandIEs
} // End of group HandoverPreparation
group HandoverResourceAllocation {
/**
* @desc Send template for InitiatingMessage message with Handover Request payload
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
*/
template (value) InitiatingMessage m_HandoverRequest(
in template (value) RecordOf_ProtocolIE p_value) := {
procedureCode := id_HandoverResourceAllocation,
criticality := reject,
value_ := {RecordOf_ProtocolIE := valueof(p_value)}
} // End of template m_HandoverRequest
template (value) RecordOf_ProtocolIE m_HandoverReqIEs(
in template (value) MME_UE_S1AP_ID p_MME_value,
in template (value) HandoverType p_handoverType,
in template (value) Cause p_cause,
in template (value) UEAggregateMaximumBitrate p_uEAggregateMaximumBitrate,
in template (value) RecordOf_E_RABToBeSetupItemHOReq p_RecordOf_E_RABToBeSetupItemHOR,
in template (value) Source_ToTarget_TransparentContainer p_source_ToTarget_TransparentContainer,
in template (value) UESecurityCapabilities p_uESecurityCapabilities,
in template (value) SecurityContext p_securityContext
) := {
m_MME_UE_S1AP_ID(p_MME_value),
m_handoverType_IE(p_handoverType),
m_cause_IE(p_cause),
m_UE_aggregate_maximum_bitrate_IE(p_uEAggregateMaximumBitrate),
m_E_RABToBeSetupListHOReq(p_RecordOf_E_RABToBeSetupItemHOR),
m_source_ToTarget_TransparentContainer_IE(p_source_ToTarget_TransparentContainer),
m_UE_securityCapabilities_IE(p_uESecurityCapabilities),
m_securityContext_IE(p_securityContext)
} // End of template m_HandoverReqIEs
template (value) RecordOf_ProtocolIE m_HandoverReqIEs_nASSecParToEUTRAN (
in template (value) MME_UE_S1AP_ID p_MME_value,
in template (value) HandoverType p_handoverType,
in template (value) Cause p_cause,
in template (value) UEAggregateMaximumBitrate p_uEAggregateMaximumBitrate,
in template (value) RecordOf_E_RABToBeSetupItemHOReq p_RecordOf_E_RABToBeSetupItemHOR,
in template (value) Source_ToTarget_TransparentContainer p_source_ToTarget_TransparentContainer,
in template (value) UESecurityCapabilities p_uESecurityCapabilities,
in template (value) SecurityContext p_securityContext,
in template (value) NASSecurityParameterstoE_UTRAN p_nasSecurityParametersToEutran_value
) modifies m_HandoverReqIEs := {
m_nasSecurityParametersToEutran_IE(p_nasSecurityParametersToEutran_value)
} // End of template m_HandoverReqIEs_nASSecParToEUTRAN
template (value) RecordOf_ProtocolIE m_HandoverReqIEs_cSGMembershipStatus(
in template (value) MME_UE_S1AP_ID p_MME_value,
in template (value) HandoverType p_handoverType,
in template (value) Cause p_cause,
in template (value) UEAggregateMaximumBitrate p_uEAggregateMaximumBitrate,
in template (value) RecordOf_E_RABToBeSetupItemHOReq p_RecordOf_E_RABToBeSetupItemHOR,
in template (value) Source_ToTarget_TransparentContainer p_source_ToTarget_TransparentContainer,
in template (value) UESecurityCapabilities p_uESecurityCapabilities,
in template (value) SecurityContext p_securityContext,
in template (value) CSGMembershipStatus p_cSGMembershipStatu_value
) modifies m_HandoverReqIEs := {
m_cSGMembershipStatus_IE(p_cSGMembershipStatu_value)
} // End of template m_HandoverReqIEs_cSGMembershipStatus
group HandoverCancelation{
/**
* @desc Receive template for SuccessfulOutcome message with Handover Cancel Acknowledge payload
*/
template (value) SuccessfulOutcome m_HandoverCancelAck(
template (value) RecordOf_ProtocolIE p_value) := {
procedureCode := id_HandoverCancel,
criticality := reject,
value_ := {RecordOf_ProtocolIE := p_value}
} // End of template m_HandoverCancelAck
template (value) RecordOf_ProtocolIE m_HandoverCancelAckIEs(
template (value) MME_UE_S1AP_ID p_MME_value,
template (value) ENB_UE_S1AP_ID p_eNB_value
) := {
m_MME_UE_S1AP_ID(p_MME_value),
m_eNB_UE_S1AP_ID(p_eNB_value)
} // End of template m_HandoverCancelAckIEs
}// End of group HandoverCancelation
group PathSwitchRequest_send {
/**
* @desc Send template for SuccessfulOutcome message with Path Switch Request Ack payload
* @param p_value The procedure code value
*/
template (value) SuccessfulOutcome m_PathSwitchRequestAck(
in template (value) RecordOf_ProtocolIE p_value) := {
procedureCode := id_PathSwitchRequest,
criticality := reject,
value_ := {RecordOf_ProtocolIE := valueof(p_value)}
} // End of template m_PathSwitchRequestAck
template (value) RecordOf_ProtocolIE m_PathSwitchRequestAckIEs(
in template (value) MME_UE_S1AP_ID p_MME_value,
in template (value) ENB_UE_S1AP_ID p_eNB_value,
in template (value) SecurityContext p_securityContext
) := {
m_MME_UE_S1AP_ID(p_MME_value),
m_eNB_UE_S1AP_ID(p_eNB_value),
m_securityContext_IE(p_securityContext)
} // End of template m_PathSwitchRequestAckIEs
}// End of group PathSwitchRequest_send
group ERAB_management_group {
group ERABSetup{
/**
* @desc Send template for InitiatingMessage message with E-RABSetup payload
*/
template (value) InitiatingMessage m_E_RABSetupRequest(
in template (value) RecordOf_ProtocolIE p_value) := {
procedureCode := id_E_RABSetup,
criticality := reject,
value_ := {RecordOf_ProtocolIE := valueof(p_value)}
} // End of template m_E_RABSetupRequest
template (value) RecordOf_ProtocolIE m_E_RABSetupReqIEs(
in template (value) MME_UE_S1AP_ID p_MME_value,
in template (value) ENB_UE_S1AP_ID p_eNB_value,
in template (value) RecordOf_E_RABToBeSetupItemBearerSUReq p_RecordOf_E_RABToBeSetupItem_value
) := {
m_MME_UE_S1AP_ID(p_MME_value),
m_eNB_UE_S1AP_ID(p_eNB_value),
m_E_RABToBeSetupList(p_RecordOf_E_RABToBeSetupItem_value)
} // End of template m_E_RABSetupReqIEs
template (value) RecordOf_ProtocolIE m_E_RABSetupReqIEs_no_eNB(
in template (value) MME_UE_S1AP_ID p_MME_value,
in template (value) RecordOf_E_RABToBeSetupItemBearerSUReq p_RecordOf_E_RABToBeSetupItem_value
) := {
m_MME_UE_S1AP_ID(p_MME_value),
m_E_RABToBeSetupList(p_RecordOf_E_RABToBeSetupItem_value)
template (value) RecordOf_ProtocolIE m_E_RABSetupReqIEs_duplicate_ENB(
in template (value) MME_UE_S1AP_ID p_MME_value,
in template (value) ENB_UE_S1AP_ID p_eNB_value,
in template (value) RecordOf_E_RABToBeSetupItemBearerSUReq p_RecordOf_E_RABToBeSetupItem_value
) := {
m_eNB_UE_S1AP_ID(p_eNB_value)
} // End of template m_E_RABSetupReqIEs_duplicate_ENB
template (value) RecordOf_ProtocolIE m_E_RABSetupReqIEs_UeAggregateMaxBitRate(
in template (value) MME_UE_S1AP_ID p_MME_value,
in template (value) ENB_UE_S1AP_ID p_eNB_value,
in template (value) UEAggregateMaximumBitrate p_uEAggregateMaximumBitrate,
in template (value) RecordOf_E_RABToBeSetupItemBearerSUReq p_RecordOf_E_RABToBeSetupItem_value
) := {
m_MME_UE_S1AP_ID(p_MME_value),
m_eNB_UE_S1AP_ID(p_eNB_value),
m_UE_aggregate_maximum_bitrate_IE(p_uEAggregateMaximumBitrate),
m_E_RABToBeSetupList(p_RecordOf_E_RABToBeSetupItem_value)
} // End of template m_E_RABSetupReqIEs
/**
* @desc Send template for InitiatingMessage message with E-RABSetup response payload
* @param p_value The procedure code value
*/
template (value) InitiatingMessage m_E_RABSetupResponse(
in template (value) RecordOf_ProtocolIE p_value) := {
procedureCode := id_E_RABSetup,
criticality := reject,
value_ := {RecordOf_ProtocolIE := valueof(p_value)}
} // End of template m_E_RABSetupResponse
template (value) RecordOf_ProtocolIE m_E_RABSetupResIEs(
in template (value) MME_UE_S1AP_ID p_MME_value,
in template (value) ENB_UE_S1AP_ID p_eNB_value,
in template (value) RecordOf_E_RABSetupItemBearerSURes p_RecordOf_E_RABSetupItem_value
) := {
m_MME_UE_S1AP_ID(p_MME_value),
m_eNB_UE_S1AP_ID(p_eNB_value),
m_E_RABSetupList(p_RecordOf_E_RABSetupItem_value)
} // End of template m_E_RABSetupResIEs
/**
* @desc Send template for InitiatingMessage message with E-RABModify payload
*/
template (value) InitiatingMessage m_E_RABModifiedRequest(
in template (value) RecordOf_ProtocolIE p_value) := {
criticality := reject,
value_ := {RecordOf_ProtocolIE := valueof(p_value)}
} // End of template m_E_RABModifiedRequest
template (value) RecordOf_ProtocolIE m_E_RABModifiedReqIEs(
in template (value) MME_UE_S1AP_ID p_MME_value,
in template (value) ENB_UE_S1AP_ID p_eNB_value,
in template (value) RecordOf_E_RABToBeModifiedItemBearerModReq p_RecordOf_E_RABToBeModifiedItem_value
) := {
m_MME_UE_S1AP_ID(p_MME_value),
m_eNB_UE_S1AP_ID(p_eNB_value),
m_E_RABToBeModifiedList(p_RecordOf_E_RABToBeModifiedItem_value)
} // End of template m_E_RABSetupReqIEs
324
325
326
327
328
329
330
331
332
333
334
335
336
337
338
339
340
341
342
343
344
345
346
347
348
349
} // End of group ERABModifyRequest
group ERABModifyInd {
/**
* @desc Send template for InitiatingMessage message with E-RABModifyInd payload
* @param p_value The procedure code value
*/
template (value) InitiatingMessage m_E_RABModifiedInd(
in template (value) RecordOf_ProtocolIE p_value) := {
procedureCode := id_E_RABModificationIndication,
criticality := reject,
value_ := {RecordOf_ProtocolIE := valueof(p_value)}
} // End of template m_E_RABModifiedInd
template (value) RecordOf_ProtocolIE m_E_RABModifiedIndIEs(
in template (value) MME_UE_S1AP_ID p_MME_value,
in template (value) ENB_UE_S1AP_ID p_eNB_value,
in template (value) RecordOf_E_RABToBeModifiedItemBearerModInd p_RecordOf_E_RABToBeModifiedItemBearerModInd_value
) := {
m_MME_UE_S1AP_ID(p_MME_value),
m_eNB_UE_S1AP_ID(p_eNB_value),
m_E_RABToBeModifiedItemBearerModIndList(p_RecordOf_E_RABToBeModifiedItemBearerModInd_value)
} // End of template m_E_RABModifiedIndIEs
template (value) RecordOf_ProtocolIE m_E_RABModifiedIndIEs_Unknown_ID(
in template (value) MME_UE_S1AP_ID p_MME_value,
in template (value) ENB_UE_S1AP_ID p_eNB_value,
in template (value) RecordOf_E_RABToBeModifiedItemBearerModInd p_RecordOf_E_RABToBeModifiedItemBearerModInd_value
) modifies m_E_RABModifiedIndIEs := {
m_Unknown_ID_IE
} // End of template m_E_RABModifiedIndIEs_Unknown_ID
template (value) RecordOf_ProtocolIE m_E_RABModifiedIndIEs_duplicate_eNB(
in template (value) MME_UE_S1AP_ID p_MME_value,
in template (value) ENB_UE_S1AP_ID p_eNB_value,
in template (value) RecordOf_E_RABToBeModifiedItemBearerModInd p_RecordOf_E_RABToBeModifiedItemBearerModInd_value
) modifies m_E_RABModifiedIndIEs := {
m_eNB_UE_S1AP_ID(p_eNB_value)
} // End of template m_E_RABModifiedIndIEs_duplicate_eNB
template (value) RecordOf_ProtocolIE m_E_RABModifiedIndIEs_no_eNB(
in template (value) MME_UE_S1AP_ID p_MME_value,
in template (value) RecordOf_E_RABToBeModifiedItemBearerModInd p_RecordOf_E_RABToBeModifiedItemBearerModInd_value
) := {
m_MME_UE_S1AP_ID(p_MME_value),
m_E_RABToBeModifiedItemBearerModIndList(p_RecordOf_E_RABToBeModifiedItemBearerModInd_value)
} // End of template m_E_RABModifiedIndIEs_no_eNB
/**
* @desc Send template for InitiatingMessage message with E-RABRelease payload
*/
template (value) InitiatingMessage m_E_RABReleaseRequest(
in template (value) RecordOf_ProtocolIE p_value) := {
procedureCode := id_E_RABRelease,
criticality := reject,
value_ := {RecordOf_ProtocolIE := valueof(p_value)}
} // End of template m_E_RABRleaseRequest
template (value) RecordOf_ProtocolIE m_E_RABReleaseReqIEs(
in template (value) MME_UE_S1AP_ID p_MME_value,
in template (value) ENB_UE_S1AP_ID p_eNB_value,
in template (value) RecordOf_E_RABItem p_RecordOf_E_RABItem_value
) := {
m_MME_UE_S1AP_ID(p_MME_value),
m_eNB_UE_S1AP_ID(p_eNB_value),
m_E_RABReleaseList(p_RecordOf_E_RABItem_value)
} // End of template m_E_RABReleaseReqIEs
}
}
/**
* @desc Send messages for Context Management procedures
*/
group Context_management_group {
/**
* @desc Send template for InitiatingMessage message with InitialContextSetup payload
*/
template (value) InitiatingMessage m_InitialContextSetupRequest(
in template (value) RecordOf_ProtocolIE p_value,
in template (value) Criticality p_criticality := reject
) := {
procedureCode := id_InitialContextSetup,
value_ := {RecordOf_ProtocolIE := valueof(p_value)}
} // End of template m_InitialContextSetupRequest
/**
* @desc Send template for InitialContextSetupReq message
* @param p_eNB_value The eNB UE S1AP ID value.
* @param p_MME_value The MME UE S1AP ID value.
* @param p_uEAggregateMaximumBitrate The UE Aggregate Maximum Bit rate value.
* @param p_RecordOf_E_RABToBeSetupItemCtxt_value The list og E-RAB To Be Setup Item Ctxt values.
* @param @param p_uESecurityCapabilities The UE Security Capabilities value.
* @param p_SecurityKey The security key value.
*/
template (value) RecordOf_ProtocolIE m_InitialContextSetupReqIEs(
in template (value) MME_UE_S1AP_ID p_MME_value,
in template (value) ENB_UE_S1AP_ID p_eNB_value,
in template (value) UEAggregateMaximumBitrate p_uEAggregateMaximumBitrate,
in template (value) RecordOf_E_RABToBeSetupItemCtxtSUReq p_RecordOf_E_RABToBeSetupItemCtxt_value,
in template (value) UESecurityCapabilities p_uESecurityCapabilities,
in template (value) SecurityKey p_SecurityKey
) := {
m_MME_UE_S1AP_ID(p_MME_value),
m_eNB_UE_S1AP_ID(p_eNB_value),
m_UE_aggregate_maximum_bitrate_IE(p_uEAggregateMaximumBitrate),
m_E_RABToBeSetupListCtxt(p_RecordOf_E_RABToBeSetupItemCtxt_value),
m_UE_securityCapabilities_IE(p_uESecurityCapabilities),
m_securityKey_IE(p_SecurityKey)
} // End of templaunknown_IDunknown_IDte m_InitialContextSetupReqIEs
template (value) RecordOf_ProtocolIE m_InitialContextSetupReqIEs_noENB(
in template (value) MME_UE_S1AP_ID p_MME_value,
in template (value) UEAggregateMaximumBitrate p_uEAggregateMaximumBitrate,
in template (value) RecordOf_E_RABToBeSetupItemCtxtSUReq p_RecordOf_E_RABToBeSetupItemCtxt_value,
in template (value) UESecurityCapabilities p_uESecurityCapabilities,
in template (value) SecurityKey p_SecurityKey
) := {
m_MME_UE_S1AP_ID(p_MME_value),
m_UE_aggregate_maximum_bitrate_IE(p_uEAggregateMaximumBitrate),
m_E_RABToBeSetupListCtxt(p_RecordOf_E_RABToBeSetupItemCtxt_value),
m_UE_securityCapabilities_IE(p_uESecurityCapabilities),
m_securityKey_IE(p_SecurityKey)
} // End of templaunknown_IDunknown_IDte m_InitialContextSetupReqIEs_noENB
/**
* @desc Send template for InitialContextSetupReq message, with duplicated eNB ID
* @param p_eNB_value The eNB UE S1AP ID value.
* @param p_MME_value The expted MME UE S1AP ID value.
* @param p_uEAggregateMaximumBitrate The UE Aggregate Maximum Bit rate value.
* @param p_RecordOf_E_RABToBeSetupItemCtxt_value The list og E-RAB To Be Setup Item Ctxt values.
* @param @param p_uESecurityCapabilities The UE Security Capabilities value.
* @param p_SecurityKey The security key value.
*/
template (value) RecordOf_ProtocolIE m_InitialContextSetupReqIEs_duplicate_eNB(
in template (value) MME_UE_S1AP_ID p_MME_value,
in template (value) ENB_UE_S1AP_ID p_eNB_value,
in template (value) UEAggregateMaximumBitrate p_uEAggregateMaximumBitrate,
in template (value) RecordOf_E_RABToBeSetupItemCtxtSUReq p_RecordOf_E_RABToBeSetupItemCtxt_value,
in template (value) UESecurityCapabilities p_uESecurityCapabilities,
in template (value) SecurityKey p_SecurityKey
) modifies m_InitialContextSetupReqIEs := {
m_eNB_UE_S1AP_ID(p_eNB_value)
} // End of templaunknown_IDunknown_IDte m_InitialContextSetupReqIEs_duplicate_ENB
template (value) RecordOf_ProtocolIE m_InitialContextSetupReqIEs_unknown_ID(
in template (value) MME_UE_S1AP_ID p_MME_value,
in template (value) ENB_UE_S1AP_ID p_eNB_value,
in template (value) UEAggregateMaximumBitrate p_uEAggregateMaximumBitrate,
in template (value) RecordOf_E_RABToBeSetupItemCtxtSUReq p_RecordOf_E_RABToBeSetupItemCtxt_value,
in template (value) UESecurityCapabilities p_uESecurityCapabilities,
in template (value) SecurityKey p_SecurityKey
) modifies m_InitialContextSetupReqIEs := {
m_Unknown_ID_IE
} // End of template m_InitialContextSetupReqIEs
/**
* @desc Send template for InitiatingMessage message with UeContextReleaseRequest payload
* @param p_value Expected procedure code
*/
template (value) InitiatingMessage m_UeContextReleaseRequest(
in template (value) RecordOf_ProtocolIE p_value) := {
procedureCode := id_UEContextReleaseRequest,
criticality := reject,
value_ := {RecordOf_ProtocolIE := valueof(p_value)}
} // End of template m_UeContextReleaseRequest
template (value) RecordOf_ProtocolIE m_UeContextReleaseRequestIEs(
in template (value) MME_UE_S1AP_ID p_MME_value,
in template (value) ENB_UE_S1AP_ID p_eNB_value,
in template (value) Cause p_cause
) := {
m_MME_UE_S1AP_ID(p_MME_value),
m_cause_IE(p_cause)
} // End of template m_UeContextReleaseRequestIEs_MME
* @desc Send template for InitiatingMessage message with UEContextRelease payload
* @param p_value Expected procedure code
*/
template (value) InitiatingMessage m_UeContextReleaseCommand(
in template (value) RecordOf_ProtocolIE p_value) := {
procedureCode := id_UEContextRelease,
criticality := reject,
value_ := {RecordOf_ProtocolIE := valueof(p_value)}
} // End of template m_UeContextReleaseCommand
template (value) RecordOf_ProtocolIE m_UeContextReleaseCommandIEs_MME(
in template (value) MME_UE_S1AP_ID p_MME_value,
in template (value) Cause p_cause
) := {
m_MME_UE_S1AP_ID(p_MME_value),
m_cause_IE(p_cause)
} // End of template m_UeContextReleaseCommandIEs_MME
template (value) RecordOf_ProtocolIE m_UeContextReleaseCommandIEs_ENB(
in template (value) ENB_UE_S1AP_ID p_eNB_value,
in template (value) Cause p_cause
) := {
m_eNB_UE_S1AP_ID(p_eNB_value),
m_cause_IE(p_cause)
} // End of template m_UeContextReleaseCommandIEs_ENB
/**
* @desc Send template for InitiatingMessage message with UEContextReleaseComplete payload
* @param p_value Expected procedure code
*/
template (value) InitiatingMessage m_UeContextReleaseComplete(
in template (value) RecordOf_ProtocolIE p_value) := {
procedureCode := id_UEContextRelease,
criticality := reject,
value_ := {RecordOf_ProtocolIE := valueof(p_value)}
} // End of template m_UeContextReleaseComplete
template (value) RecordOf_ProtocolIE m_UeContextReleaseCompleteIEs(
in template (value) MME_UE_S1AP_ID p_MME_value,
in template (value) ENB_UE_S1AP_ID p_eNB_value
) := {
m_MME_UE_S1AP_ID(p_MME_value),
m_eNB_UE_S1AP_ID(p_eNB_value)
} // End of template m_UeContextReleaseCompleteIEs
/**
* @desc Send template for InitiatingMessage message with UEContextSuspendRequest payload
* @param p_value Expected procedure code
*/
template (value) InitiatingMessage m_UeContextSuspendRequest(
in template (value) RecordOf_ProtocolIE p_value) := {
procedureCode := id_UEContextSuspend,
criticality := reject,
value_ := {RecordOf_ProtocolIE := valueof(p_value)}
} // End of template m_UeContextSuspendRequest
template (value) RecordOf_ProtocolIE m_UeContextSuspendRequestIEs(
in template (value) MME_UE_S1AP_ID p_MME_value,
in template (value) ENB_UE_S1AP_ID p_eNB_value
) := {
m_MME_UE_S1AP_ID(p_MME_value),
m_eNB_UE_S1AP_ID(p_eNB_value)
} // End of template m_UeContextSuspendRequestIEs
/**
* @desc Send template for InitiatingMessage message with UEContextResumeRequest payload
* @param p_value Expected procedure code
in template (value) RecordOf_ProtocolIE p_value,
in template (value) Criticality p_criticality := reject
) := {
template (value) RecordOf_ProtocolIE m_UeContextResumeRequestIEs(
in template (value) MME_UE_S1AP_ID p_MME_value,
in template (value) ENB_UE_S1AP_ID p_eNB_value
m_MME_UE_S1AP_ID(p_MME_value, ignore),
m_eNB_UE_S1AP_ID(p_eNB_value, ignore)
} // End of template m_UeContextResumeRequestIEs
template (value) RecordOf_ProtocolIE m_UeContextResumeRequestIEs_RABFailedToResumeItem(
in template (value) MME_UE_S1AP_ID p_MME_value,
in template (value) ENB_UE_S1AP_ID p_eNB_value,
in template (value) RecordOf_E_RABFailedToResumeItemResumeReq p_RecordOf_E_RABFailedToResumeItemResumeReq_value
m_E_RABFailedToResumeItemResumeReqList(p_RecordOf_E_RABFailedToResumeItemResumeReq_value)
} // End of template m_UeContextResumeRequestIEs_RABFailedToResumeItem
template (value) RecordOf_ProtocolIE m_UeContextResumeRequestIEs_Unknown_ID(
in template (value) MME_UE_S1AP_ID p_MME_value,
in template (value) ENB_UE_S1AP_ID p_eNB_value,
in template (value) RecordOf_E_RABFailedToResumeItemResumeReq p_RecordOf_E_RABFailedToResumeItemResumeReq_value
) modifies m_UeContextResumeRequestIEs_RABFailedToResumeItem := {
m_Unknown_ID_IE(-, reject)
} // End of template m_UeContextResumeRequestIEs_Unknown_ID
template (value) RecordOf_ProtocolIE m_UeContextResumeRequestIEs_duplicate_ENB(
in template (value) MME_UE_S1AP_ID p_MME_value,
in template (value) ENB_UE_S1AP_ID p_eNB_value,
in template (value) RecordOf_E_RABFailedToResumeItemResumeReq p_RecordOf_E_RABFailedToResumeItemResumeReq_value
) modifies m_UeContextResumeRequestIEs_RABFailedToResumeItem := {
m_eNB_UE_S1AP_ID(p_eNB_value, ignore)
} // End of template m_UeContextResumeRequestIEs_duplicate_ENB
template (value) RecordOf_ProtocolIE m_UeContextResumeRequestIEs_no_eNB(
in template (value) MME_UE_S1AP_ID p_MME_value,
in template (value) RecordOf_E_RABFailedToResumeItemResumeReq p_RecordOf_E_RABFailedToResumeItemResumeReq_value
) := {
m_MME_UE_S1AP_ID(p_MME_value, ignore),
m_E_RABFailedToResumeItemResumeReqList(p_RecordOf_E_RABFailedToResumeItemResumeReq_value)
} // End of template m_UeContextResumeRequestIEs_no_eNB
/**
* @desc Send template for InitiatingMessage message with m_UeContextModificationRequest payload
* @param p_value Expected procedure code
*/
template (value) InitiatingMessage m_UeContextModificationRequest(
in template (value) RecordOf_ProtocolIE p_value) := {
procedureCode := id_UEContextModification,
criticality := reject,
value_ := {RecordOf_ProtocolIE := valueof(p_value)}
} // End of template m_UeContextModificationRequest
template (value) RecordOf_ProtocolIE m_ContextModificationReqIEsUEAgg(
in template (value) MME_UE_S1AP_ID p_MME_value,
in template (value) ENB_UE_S1AP_ID p_eNB_value,
in template (value) UEAggregateMaximumBitrate p_uEAggregateMaximumBitrate
) := {
m_MME_UE_S1AP_ID(p_MME_value),
m_eNB_UE_S1AP_ID(p_eNB_value),
m_UE_aggregate_maximum_bitrate_IE(p_uEAggregateMaximumBitrate)
} // End of template m_ContextModificationReqIEs
template (value) RecordOf_ProtocolIE m_ContextModificationReqIEsSecKey(
in template (value) MME_UE_S1AP_ID p_MME_value,
in template (value) ENB_UE_S1AP_ID p_eNB_value,
in template (value) CSFallbackIndicator p_CSFallbackIndicator,
in template (value) SecurityKey p_SecurityKey
) := {
m_MME_UE_S1AP_ID(p_MME_value),
m_eNB_UE_S1AP_ID(p_eNB_value),
m_CS_Fallback_indicator_IE(p_CSFallbackIndicator),
m_securityKey_IE(p_SecurityKey)
} // End of template m_ContextModificationReqIEsSecKey
template (value) RecordOf_ProtocolIE m_ContextModificationReqIEsSecCap(
in template (value) MME_UE_S1AP_ID p_MME_value,
in template (value) ENB_UE_S1AP_ID p_eNB_value,
in template (value) CSFallbackIndicator p_CSFallbackIndicator,
in template (value) UESecurityCapabilities p_UeSecurityCapabilities
) := {
m_MME_UE_S1AP_ID(p_MME_value),
m_eNB_UE_S1AP_ID(p_eNB_value),
m_CS_Fallback_indicator_IE(p_CSFallbackIndicator),
m_UE_securityCapabilities_IE(p_UeSecurityCapabilities)
} // End of template m_ContextModificationReqIEsSecCap
/**
* @desc Send template for InitiatingMessage message with m_UeContextModificationIndication payload
* @param p_value Expected procedure code
*/
template (value) InitiatingMessage m_UeContextModificationIndication(
in template (value) RecordOf_ProtocolIE p_value) := {
procedureCode := id_UEContextModification,
criticality := reject,
value_ := {RecordOf_ProtocolIE := valueof(p_value)}
} // End of template m_UeContextModificationIndication
template (value) RecordOf_ProtocolIE m_UeContextModificationIndicationIEs(
in template (value) MME_UE_S1AP_ID p_MME_value,
in template (value) ENB_UE_S1AP_ID p_eNB_value
) := {
m_MME_UE_S1AP_ID(p_MME_value),
m_eNB_UE_S1AP_ID(p_eNB_value)
} // End of template m_UeContextModificationIndicationIEs
template (value) RecordOf_ProtocolIE m_UeContextModificationIndicationIEsCSG(
in template (value) MME_UE_S1AP_ID p_MME_value,
in template (value) ENB_UE_S1AP_ID p_eNB_value,
in template (value) CSGMembershipInfo p_cSGMembershipInfo_value
) := {
m_MME_UE_S1AP_ID(p_MME_value),
m_eNB_UE_S1AP_ID(p_eNB_value),
m_cSGMembershipInfo_IE(p_cSGMembershipInfo_value)
} // End of template m_UeContextModificationIndicationIEsCSG
/**
* @desc Send template for InitiatingMessage message with m_UeRadioCapabilityMatchRequest payload
* @param p_value Expected procedure code
*/
template (value) InitiatingMessage m_UeRadioCapabilityMatchRequest(
in template (value) RecordOf_ProtocolIE p_value) := {
procedureCode := id_UERadioCapabilityMatch,
criticality := reject,
value_ := {RecordOf_ProtocolIE := valueof(p_value)}
} // End of template m_UeRadioCapabilityMatchRequest
template (value) RecordOf_ProtocolIE m_UeRadioCapabilityMatchReqIEs(
in template (value) MME_UE_S1AP_ID p_MME_value,
in template (value) ENB_UE_S1AP_ID p_eNB_value,
in template (value) octetstring p_UeRadioCapabilities
) := {
m_MME_UE_S1AP_ID(p_MME_value),
m_eNB_UE_S1AP_ID(p_eNB_value),
m_UE_Radio_capability_IE(p_UeRadioCapabilities)
} // End of template m_ContextModificationReqIEsSecCap
/**
* @desc Send messages for Management procedures
*/
group Management_group {
/**
* @desc Send template for InitiatingMessage message with S1_SETUP_REQUEST payload
* @param p_value The protocol information elements.
*/
template (value) InitiatingMessage m_s1_Setup_Request(
) := {
procedureCode := id_S1Setup,
criticality := reject,
value_ := {RecordOf_ProtocolIE := p_value}
} // End of template m_s1_Setup_Request
/**
* @desc Send template for S1_SETUP_REQUEST message
* @param p_global_ENB_ID The Global eNB ID value
* @param p_supportedTAs The list of SupportedTAs-Item protocol IE
* @param p_pagingDRXs The Paging DRX as defined in TS 36.304
*/
template (value) RecordOf_ProtocolIE m_s1_Setup_RequestIEs(
in template (value) Global_ENB_ID p_global_ENB_ID,
in template (value) SupportedTAs p_supportedTAs,
in template (value) PagingDRX p_pagingDRXs
) := {
m_global_eNB_ID_IE(p_global_ENB_ID),
m_supportedTAs_IE(p_supportedTAs),
m_pagingDRX_IE(p_pagingDRXs)
} // End of template m_s1_Setup_RequestIEs
/**
* @desc Send template for InitiatingMessage message with S1_SETUP_RESPONSE payload
* @param p_value The protocol information elements.
*/
template (value) SuccessfulOutcome m_s1_Setup_Response(
in template (value) RecordOf_ProtocolIE p_value
) := {
procedureCode := id_S1Setup,
criticality := reject,
value_ := {RecordOf_ProtocolIE := p_value}
} // End of template m_s1_Setup_Response
/**
* @desc Send template for S1_SETUP_RESPONSE message
* @param p_global_ENB_ID The Global eNB ID value.
* @param p_relativeMMECapacity The relative MME capacity value.
*/
template (value) RecordOf_ProtocolIE m_s1_Setup_ResponseIEs(
in template (value) ServedGUMMEIs p_servedGUMMEIs,
in template (value) RelativeMMECapacity p_relativeMMECapacity
) := {
m_servedGUMMEIs_IE(p_servedGUMMEIs),
m_relativeMMECapacity_IE(p_relativeMMECapacity)
} // End of template m_s1_Setup_ResponseIEs
/**
* @desc Send template for InitiatingMessage message with ENB CONFIGURATION UPDATE payload
*/
template (value) InitiatingMessage m_eNB_Configuration_Update(
in template (value) RecordOf_ProtocolIE p_value
) := {
procedureCode := id_ENBConfigurationUpdate,
criticality := reject,
value_ := {RecordOf_ProtocolIE := p_value}
} // End of template m_eNB_Configuration_Update
/**
* @desc Send template for ENB CONFIGURATION UPDATE message
* @param p_global_ENB_ID The Global eNB ID value. Default: ?
* @param p_supportedTAs The list of SupportedTAs-Item protocol IE. Default: ?
*/
template (value) RecordOf_ProtocolIE m_eNB_Configuration_UpdateIEs(
in template (value) Global_ENB_ID p_global_ENB_ID,
in template (value) SupportedTAs p_supportedTAs
) := {
m_global_eNB_ID_IE(p_global_ENB_ID),
m_supportedTAs_IE(p_supportedTAs)
} // End of template m_eNB_Configuration_UpdateIEs
/**
* @desc Send template for InitiatingMessage message with ENB CONFIGURATION UPDATE ACKNOWLEDGE payload
* @param p_value Expected protocol information elements.
*/
template (value) SuccessfulOutcome m_eNB_Configuration_Update_Acknowledge(
in template (value) RecordOf_ProtocolIE p_value
) := {
procedureCode := id_ENBConfigurationUpdate,
criticality := reject,
value_ := {RecordOf_ProtocolIE := p_value}
} // End of template m_eNB_Configuration_Update_Acknowledge
/**
* @desc Send template for ENB CONFIGURATION UPDATE ACKNOWLEDGE message
*
*/
template (value) RecordOf_ProtocolIE m_eNB_Configuration_Update_AcknowledgeIEs := {
} // End of template m_eNB_Configuration_Update_AcknowledgeIEs
/**
* @desc Send template for InitiatingMessage message with MME CONFIGURATION UPDATE payload
* @param p_value Expected protocol information elements.
*/
template (value) InitiatingMessage m_mME_Configuration_Update(
in template (value) RecordOf_ProtocolIE p_value
) := {
procedureCode := id_MMEConfigurationUpdate,
criticality := reject,
value_ := {RecordOf_ProtocolIE := p_value}
} // End of template m_mME_Configuration_Update
/**
* @desc Send template for MME CONFIGURATION UPDATE message
* @param p_global_MME_ID The Global mME ID value. Default: ?
* @param p_supportedTAs The list of SupportedTAs-Item protocol IE. Default: ?
*/
template (value) RecordOf_ProtocolIE m_mME_Configuration_UpdateIEs(
in template (value) ServedGUMMEIs p_servedGUMMEIs
) := {
m_servedGUMMEIs_IE(p_servedGUMMEIs)
} // End of template m_mME_Configuration_UpdateIEs
/**
* @desc Send template for InitiatingMessage message with MME CONFIGURATION UPDATE ACKNOWLEDGE payload
* @param p_value Expected protocol information elements.
*/
template (value) SuccessfulOutcome m_mME_Configuration_Update_Acknowledge(
in template (value) RecordOf_ProtocolIE p_value
) := {
procedureCode := id_MMEConfigurationUpdate,
criticality := reject,
value_ := {RecordOf_ProtocolIE := p_value}
} // End of template m_mME_Configuration_Update_Acknowledge
/**
* @desc Send template for MME CONFIGURATION UPDATE ACKNOWLEDGE message
*
*/
template (value) RecordOf_ProtocolIE m_mME_Configuration_Update_AcknowledgeIEs := {
} // End of template m_mME_Configuration_Update_AcknowledgeIEs
/**
* @desc Send messages for Reset Procedures
*/
/**
* @desc Send template for InitiatingMessage message with RESET payload
* @param p_value The protocol information elements
*/
template (value) InitiatingMessage m_reset(
in template (value) RecordOf_ProtocolIE p_value
) := {
procedureCode := id_Reset,
criticality := reject,
value_ := {RecordOf_ProtocolIE := valueof(p_value)}
} // End of template m_reset
/**
* @desc Send template for RESET message
* @param p_resetType The RESET type value
*/
template (value) RecordOf_ProtocolIE m_resetIEs(
in template (value) Cause p_cause,
in template (value) ResetType p_resetType
) := {
m_cause_IE(p_cause),
m_resetType_IE(p_resetType)
} // End of template m_resetIEs
/**
* @desc Send messages for Warning Message Transmission Procedures
*/
group Warning_Message_Transmission_send {
/**
* @desc Send template for InitiatingMessage message with WRITE-REPLACE WARNING REQUEST payload
*/
template (value) InitiatingMessage m_write_Replace_Warning_Request(
in template (value) RecordOf_ProtocolIE p_value) := {
procedureCode := id_WriteReplaceWarning,
criticality := reject,
value_ := {RecordOf_ProtocolIE := valueof(p_value)}
} // End of template m_write_Replace_Warning_Request
/**
* @desc Send template for WRITE-REPLACE WARNING REQUEST message
* @param p_message_Identifier The Message Identifier value
* @param p_serial_Number The Serial Number value
* @param p_repetition_Period The Repetition Period value
* @param p_number_of_Broadcasts_Requested The Number of Broadcasts Requested value
*/
template (value) RecordOf_ProtocolIE m_write_Replace_Warning_RequestIEs(
in MessageIdentifier p_message_Identifier,
in SerialNumber p_serial_Number,
in RepetitionPeriod p_repetition_Period,
in NumberOfBroadcasts p_number_of_Broadcasts_Requested
) := {
m_message_Identifier(p_message_Identifier),
m_serial_Number(p_serial_Number),
m_repetition_Period(p_repetition_Period),
m_number_of_Broadcasts_Requested(p_number_of_Broadcasts_Requested)
} // End of template m_write_Replace_Warning_RequestIEs
/**
* @desc Send template for InitiatingMessage message with WRITE-REPLACE WARNING RESPONSE payload
*/
template (value) InitiatingMessage m_write_Replace_Warning_Response(
in template (value) RecordOf_ProtocolIE p_value) := {
procedureCode := id_WriteReplaceWarning,
criticality := reject,
value_ := {RecordOf_ProtocolIE := valueof(p_value)}
} // End of template m_write_Replace_Warning_Response
/**
* @desc Send template for WRITE-REPLACE WARNING RESPONSE message
* @param p_message_Identifier The Message Identifier value
* @param p_serial_Number The Serial Number value
*/
template (value) RecordOf_ProtocolIE m_write_Replace_Warning_ResponseIEs(
in MessageIdentifier p_message_Identifier,
in SerialNumber p_serial_Number
) := {
m_message_Identifier(p_message_Identifier),
m_serial_Number(p_serial_Number)
} // End of template m_write_Replace_Warning_ResponseIEs
/**
* @desc Send template for InitiatingMessage message with KILL REQUEST payload
* @param p_value The procedure code value
*/
template (value) InitiatingMessage m_kill_Request(
in template (value) RecordOf_ProtocolIE p_value) := {
procedureCode := id_Kill,
criticality := reject,
value_ := {RecordOf_ProtocolIE := valueof(p_value)}
} // End of template m_kill_Request
/**
* @desc Send template for KILL REQUEST message
* @param p_message_Identifier The Message Identifier value
* @param p_serial_Number The Serial Number value
*/
template (value) RecordOf_ProtocolIE m_kill_RequestIEs(
in MessageIdentifier p_message_Identifier,
in SerialNumber p_serial_Number
) := {
m_message_Identifier(p_message_Identifier),
m_serial_Number(p_serial_Number)
} // End of template m_kill_RequestIEs
/**
* @desc Send template for InitiatingMessage message with KILL REQUEST payload
* @param p_value The procedure code value
*/
template (value) InitiatingMessage m_kill_Response(
in template (value) RecordOf_ProtocolIE p_value) := {
procedureCode := id_Kill,
criticality := reject,
value_ := {RecordOf_ProtocolIE := valueof(p_value)}
} // End of template m_kill_Response
/**
* @desc Send template for KILL REQUEST message