LibS1AP_Templates.ttcn 420 KB
Newer Older
                    /**
                     * @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_cause       The Cause value
                     * @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
                    
                } // End of group Reset
garciay's avatar
garciay committed
                /**
                 * @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
garciay's avatar
garciay committed
                     * @param p_value           The protocol information elements
garciay's avatar
garciay committed
                     */
                    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
garciay's avatar
garciay committed
                     * @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
garciay's avatar
garciay committed
                     * @param p_value           The protocol information elements
garciay's avatar
garciay committed
                     */
                    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
garciay's avatar
garciay committed
                     * @param p_value           The protocol information elements
garciay's avatar
garciay committed
                     */
                    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
garciay's avatar
garciay committed
                     * @param p_value           The protocol information elements
garciay's avatar
garciay committed
                     */
                    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
                     * @param p_message_Identifier  The Message Identifier value
                     * @param p_serial_Number       The Serial Number value
                     */
                    template (value) RecordOf_ProtocolIE m_kill_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_kill_ResponseIEs
                    
                }// End of group Warning_Message_Transmission_send
                
garciay's avatar
garciay committed
            } // End of group sendClass1 
garciay's avatar
garciay committed
            
garciay's avatar
garciay committed
            group receiveClass1 {
                
                group HandoverRequired{
                    
                    /**
                     * @desc Receive template for InitiatingMessage message with Handover Required payload
garciay's avatar
garciay committed
                     * @param p_value           The expected protocol information elements. Default: ?
                     */
                    template (present) InitiatingMessage mw_HandoverRequired(
                                                                           template (present) RecordOf_ProtocolIE p_value) := {
                        procedureCode := id_HandoverPreparation,
                        criticality := reject,
                        value_ := {RecordOf_ProtocolIE := p_value}
                    } // End of template mw_HandoverRequired
                    
                    template (present) RecordOf_ProtocolIE mw_HandoverRequiredIEs(
                        template (present) MME_UE_S1AP_ID p_MME_value := ?,
                        template (present) ENB_UE_S1AP_ID p_eNB_value := ?,
                        template (present) HandoverType p_HandoverType_value := ?,
                        template (present) Cause p_Cause_value := ?,
                        template (present) TargetID p_TargetId_value := ?,
                        template (present) Source_ToTarget_TransparentContainer p_Source_ToTarget_TransparentContainer_value := ?
                       ) := {
                            mw_MME_UE_S1AP_ID(p_MME_value),
                            mw_eNB_UE_S1AP_ID(p_eNB_value),
                            mw_handoverType_IE(p_HandoverType_value),
ulrichst's avatar
ulrichst committed
                            mw_cause_IE(p_Cause_value),
                            mw_TargetID_IE(p_TargetId_value),
                            mw_source_ToTarget_TransparentContainer_IE(p_Source_ToTarget_TransparentContainer_value)
                    
                    template (present) RecordOf_ProtocolIE mw_HandoverRequiredIEs_SRVCCHOIndication(
                        template (present) MME_UE_S1AP_ID p_MME_value := ?,
                        template (present) ENB_UE_S1AP_ID p_eNB_value := ?,
                        template (present) HandoverType p_HandoverType_value := ?,
                        template (present) Cause p_Cause_value := ?,
                        template (present) TargetID p_TargetId_value := ?,
                        template (present) Source_ToTarget_TransparentContainer p_Source_ToTarget_TransparentContainer_value := ?,
                        template (present) SRVCCHOIndication p_SRVCC_HO_Indication_value := ?
                       ) modifies mw_HandoverRequiredIEs:= {
                            mw_SRVCCHOIndication_IE(p_SRVCC_HO_Indication_value)
                       } // End of template mw_HandoverRequiredIEs_SRVCC
                }// End of group HandoverPreparation
garciay's avatar
garciay committed
                group HandoverPreparation{
                    
                    /**
                     * @desc Receive template for unsuccessfulOutcome message with Handover Preparation Failure payload
                     * @param p_value           The expected protocol information elements. Default: ?
                     */
                    template (present) UnsuccessfulOutcome mw_HandoverPreparationFailure(
                                                                           template (present) RecordOf_ProtocolIE p_value) := {
                        procedureCode := id_HandoverPreparation,
                        criticality := reject,
                        value_ := {RecordOf_ProtocolIE := p_value}
                    } // End of template mw_HandoverPreparationFailure
                    
                    template (present) RecordOf_ProtocolIE mw_HandoverPreparationFailureIEs(
                        template (present) MME_UE_S1AP_ID p_MME_value := ?,
                        template (present) ENB_UE_S1AP_ID p_eNB_value := ?,
                        template (present) Cause p_Cause_value := ?
                       ) := {
                            mw_MME_UE_S1AP_ID(p_MME_value),
                            mw_eNB_UE_S1AP_ID(p_eNB_value),
                            mw_cause_IE(p_Cause_value)
                    } // End of template mw_HandoverPreparationFailureIEs
                    
                     
                     /**
                     * @desc Receive template for SuccessfulOutcome message with Handover Command payload
garciay's avatar
garciay committed
                     * @param p_value           The expected protocol information elements. Default: ?
                     */
                    template (present) SuccessfulOutcome mw_HandoverCommand(
                                                                           template (present) RecordOf_ProtocolIE p_value) := {
                        procedureCode := id_HandoverPreparation,
                        criticality := reject,
                        value_ := {RecordOf_ProtocolIE := p_value}
                    } // End of template mw_HandoverCommand
                    
                    template (present) RecordOf_ProtocolIE mw_HandoverCommandIEs(
                        template (present) MME_UE_S1AP_ID p_MME_value := ?,
                        template (present) ENB_UE_S1AP_ID p_eNB_value := ?,
                        template (present) HandoverType p_HandoverType_value := ?,
                        template (present) Target_ToSource_TransparentContainer p_Target_ToSource_TransparentContainer_value := ?
                       ) := {
                            mw_MME_UE_S1AP_ID(p_MME_value),
                            mw_eNB_UE_S1AP_ID(p_eNB_value),
                            mw_handoverType_IE(p_HandoverType_value),
                            mw_target_ToSource_TransparentContainer_IE(p_Target_ToSource_TransparentContainer_value)
                    } // End of template mw_HandoverRequiredIEs
                    
                    template (present) RecordOf_ProtocolIE mw_HandoverCommandIEs_NASSecurity(
                        template (present) MME_UE_S1AP_ID p_MME_value := ?,
                        template (present) ENB_UE_S1AP_ID p_eNB_value := ?,
                        template (present) HandoverType p_HandoverType_value := ?,
                        template (present) Target_ToSource_TransparentContainer p_Target_ToSource_TransparentContainer_value := ?,
                        template (present) NASSecurityParameterstoE_UTRAN p_nasSecurityParametersToEutran_value := ?
                       ) modifies mw_HandoverCommandIEs:= {
                           mw_nasSecurityParametersToEutran_IE(p_nasSecurityParametersToEutran_value)
                    } // End of template mw_HandoverCommandIEs_NASSecurity
                    
                    template (present) RecordOf_ProtocolIE mw_HandoverCommandIEs_ERABSubj2FwList(
                        template (present) MME_UE_S1AP_ID p_MME_value := ?,
                        template (present) ENB_UE_S1AP_ID p_eNB_value := ?,
                        template (present) HandoverType p_HandoverType_value := ?,
                        template (present) Target_ToSource_TransparentContainer p_Target_ToSource_TransparentContainer_value := ?,
                        template (present) E_RABSubjecttoDataForwardingList p_E_RABSubjecttoDataForwardingList_value := ?
                       ) modifies mw_HandoverCommandIEs:= {
                           mw_E_RABSubjecttoDataForwardingList_IE(p_E_RABSubjecttoDataForwardingList_value)
                    } // End of template mw_HandoverCommandIEs_ERABSubj2FwList

                    template (present) RecordOf_ProtocolIE mw_HandoverCommandIEs_T2STransCont2nd_NASSecurity(
                        template (present) MME_UE_S1AP_ID p_MME_value := ?,
                        template (present) ENB_UE_S1AP_ID p_eNB_value := ?,
                        template (present) HandoverType p_HandoverType_value := ?,
                        template (present) Target_ToSource_TransparentContainer p_Target_ToSource_TransparentContainer_value := ?,
                        template (present) Target_ToSource_TransparentContainer p_Target_ToSource_TransparentContainer2_value := ?,
                        template (present) NASSecurityParameterstoE_UTRAN p_nasSecurityParametersToEutran_value := ?
                       ) modifies mw_HandoverCommandIEs:= { 
                           mw_target_ToSource_TransparentContainer_2nd_IE(p_Target_ToSource_TransparentContainer2_value),
                           mw_nasSecurityParametersToEutran_IE(p_nasSecurityParametersToEutran_value)
                    } // End of template mw_HandoverCommandIEs_T2STransCont2nd_NASSecurity
garciay's avatar
garciay committed
                    
                }// End of group HandoverPreparation
                    
                group HandoverResourceAllocation{
                    
                    /**
                    * @desc Receive template for InitiatingMessage message with Handover Request payload
                    * @param p_value           The list of Protocol IE values
                    */
                    template (present) InitiatingMessage mw_HandoverRequest(
                                                                          template (present) RecordOf_ProtocolIE p_value) := {
                        procedureCode := id_HandoverResourceAllocation,
                        criticality := reject,
                        value_ := {RecordOf_ProtocolIE := p_value}
                    } // End of template mw_HandoverRequest
            
                    template (present) RecordOf_ProtocolIE mw_HandoverRequestIEs(
                        template (present) MME_UE_S1AP_ID p_MME_value := ?,
                        template (present) HandoverType p_HandoverType_value := ?,
                        template (present) Cause p_Cause_value := ?,
                        template (present) UEAggregateMaximumBitrate p_UEAggregateMaximumBitrate := ?,
                        template (present) RecordOf_E_RABToBeSetupItemHOReq p_RecordOf_E_RABToBeSetupItem_value := ?,
                        template (present) Source_ToTarget_TransparentContainer p_Source_ToTarget_TransparentContainer_value := ?,
                        template (present) UESecurityCapabilities p_UESecurityCapabilities := ?,
                        template (present) SecurityContext p_SecurityContext := ?
                    ) := {
                          mw_MME_UE_S1AP_ID(p_MME_value),
                          mw_handoverType_IE(p_HandoverType_value),
                          mw_cause_IE(p_Cause_value),
                          mw_UE_aggregate_maximum_bitrate_IE(p_UEAggregateMaximumBitrate),
                          mw_E_RABToBeSetupListHOReq(p_RecordOf_E_RABToBeSetupItem_value),
                          mw_source_ToTarget_TransparentContainer_IE(p_Source_ToTarget_TransparentContainer_value),
                          mw_UE_securityCapabilities_IE(p_UESecurityCapabilities, ignore),
                          mw_securityContext_IE(p_SecurityContext)
                    } // End of template mw_HandoverRequestIEs
   
                    template (present) RecordOf_ProtocolIE mw_HandoverRequestIEs_CSGID_CellAccessMode(
                        template (present) MME_UE_S1AP_ID p_MME_value := ?,
                        template (present) HandoverType p_HandoverType_value := ?,
                        template (present) Cause p_Cause_value := ?,
                        template (present) UEAggregateMaximumBitrate p_UEAggregateMaximumBitrate := ?,
                        template (present) RecordOf_E_RABToBeSetupItemHOReq p_RecordOf_E_RABToBeSetupItem_value := ?,
                        template (present) Source_ToTarget_TransparentContainer p_Source_ToTarget_TransparentContainer_value := ?,
                        template (present) UESecurityCapabilities p_UESecurityCapabilities := ?,
                        template (present) SecurityContext p_SecurityContext := ?,
                        template (present) CSG_Id p_CSG_Id_value := ?,
                        template (present) CellAccessMode p_CellAccessMode_value := ?    
                    ) modifies mw_HandoverRequestIEs := {
                        mw_CSG_Id_IE(p_CSG_Id_value),
                        mw_CellAccessMode_IE(p_CellAccessMode_value)   
                    } // End of template mw_HandoverRequestIEs         

                    /**
                     * @desc Receive template for SuccessfulOutcome message with Handover Cancel payload
garciay's avatar
garciay committed
                     * @param p_value           The expected protocol information elements. Default: ?
                     */
                    template (present) SuccessfulOutcome mw_HandoverRequestAck(
                                                                           template (present) RecordOf_ProtocolIE p_value) := {
                        procedureCode := id_HandoverResourceAllocation,
                        criticality := reject,
                        value_ := {RecordOf_ProtocolIE := p_value}
                    } // End of template mw_HandoverRequestAck
                    
                    template (present) RecordOf_ProtocolIE mw_HandoverRequestAckIEs(
                        template (present) MME_UE_S1AP_ID p_MME_value := ?,
                        template (present) ENB_UE_S1AP_ID p_eNB_value := ?,
                        template (present) RecordOf_E_RABAdmittedItem p_RecordOf_E_RABAdmittedItem_value := ?,
                        template (present) Target_ToSource_TransparentContainer p_Target_ToSource_TransparentContainer_value := ?
                       ) := {
                            mw_MME_UE_S1AP_ID(p_MME_value),
                            mw_eNB_UE_S1AP_ID(p_eNB_value),
                            mw_E_RABAdmittedList(p_RecordOf_E_RABAdmittedItem_value),
                            mw_target_ToSource_TransparentContainer_IE(p_Target_ToSource_TransparentContainer_value)
                       } // End of template mw_HandoverRequestAckIEs
                    
                    /**
                     * @desc Receive template for UnsuccessfulOutcome message with Handover Failure payload
garciay's avatar
garciay committed
                     * @param p_value           The expected protocol information elements. Default: ?
                     */
                    template (present) UnsuccessfulOutcome mw_HandoverFailure(
                                                                           template (present) RecordOf_ProtocolIE p_value) := {
                        procedureCode := id_HandoverResourceAllocation,
                        criticality := reject,
                        value_ := {RecordOf_ProtocolIE := p_value}
                    } // End of template mw_HandoverFailure
                    
                    template (present) RecordOf_ProtocolIE mw_HandoverFailureIEs(
                        template (present) MME_UE_S1AP_ID p_MME_value := ?,
                        template (present) ENB_UE_S1AP_ID p_eNB_value := ?,
                        template (present) Cause p_Cause_value := ?
                       ) := {
                            mw_MME_UE_S1AP_ID(p_MME_value),
                            mw_eNB_UE_S1AP_ID(p_eNB_value),
                            mw_cause_IE(p_Cause_value)
                       } // End of template mw_HandoverFailureIEs
                
                    
garciay's avatar
garciay committed
                }// End of group HandoverResourceAllocation
                
                group HandoverCancelation{
                    
                    /**
                     * @desc Receive template for InitiatingMessage message with Handover Cancel payload
garciay's avatar
garciay committed
                     * @param p_value           The expected protocol information elements. Default: ?
                     */
                    template (present) InitiatingMessage mw_HandoverCancel(
                                                                           template (present) RecordOf_ProtocolIE p_value) := {
                        procedureCode := id_HandoverCancel,
                        criticality := reject,
                        value_ := {RecordOf_ProtocolIE := p_value}
                    } // End of template mw_HandoverCancel
                    
                    template (present) RecordOf_ProtocolIE mw_HandoverCancelIEs(
                        template (present) MME_UE_S1AP_ID p_MME_value := ?,
                        template (present) ENB_UE_S1AP_ID p_eNB_value := ?,
                        template (present) Cause p_Cause_value := ?
                       ) := {
                            mw_MME_UE_S1AP_ID(p_MME_value),
                            mw_eNB_UE_S1AP_ID(p_eNB_value),
                            mw_cause_IE(p_Cause_value)
                       } // End of template mw_HandoverCancelIEs

                    /**
                     * @desc Receive template for SuccessfulOutcome message with Handover Cancel Acknowledge payload
                     * @param p_value           The expected protocol information elements. Default: ?
                     */
                    template (present) SuccessfulOutcome mw_HandoverCancelAck(
                                                                           template (present) RecordOf_ProtocolIE p_value) := {
                        procedureCode := id_HandoverCancel,
                        criticality := reject,
                        value_ := {RecordOf_ProtocolIE := p_value}
                    } // End of template mw_HandoverCancelAck
                    
                    template (present) RecordOf_ProtocolIE mw_HandoverCancelAckIEs(
                        template (present) MME_UE_S1AP_ID p_MME_value := ?,
                        template (present) ENB_UE_S1AP_ID p_eNB_value := ?
                       ) := {
                            mw_MME_UE_S1AP_ID(p_MME_value),
                            mw_eNB_UE_S1AP_ID(p_eNB_value)
                       } // End of template mw_HandoverCancelAckIEs
                         

                    /**
                     * @desc Receive template for InitiatingMessage message with Mme_Status_Transfer payload
                     * @param p_value           The expected protocol information elements. Default: ?
                     */
                    template (present) InitiatingMessage mw_Mme_Status_Transfer(
                                                                           template (present) RecordOf_ProtocolIE p_value) := {
                        procedureCode := id_MMEStatusTransfer,
                        criticality := reject,
                        value_ := {RecordOf_ProtocolIE := p_value}
                    } // End of template mw_HandoverCancel
                    
                    template (present) RecordOf_ProtocolIE mw_Mme_Status_TransferIEs(
                        template (present) MME_UE_S1AP_ID p_MME_value := ?,
                        template (present) ENB_UE_S1AP_ID p_eNB_value := ?,
                        template (present) ENB_StatusTransfer_TransparentContainer p_enb_stc_value := ?
                       ) := {
                            mw_MME_UE_S1AP_ID(p_MME_value),
                            mw_eNB_UE_S1AP_ID(p_eNB_value),
                            mw_eNBStatusTransferTransparentContainer_IE(p_enb_stc_value)
                       } // End of template mw_Mme_Status_TransferIEs    
                         
                    
                group PathSwitchRequest{
                    
                    /**
                     * @desc Receive template for InitiatingMessage message with Path Switch Request payload
garciay's avatar
garciay committed
                     * @param p_value           The expected protocol information elements. Default: ?
                     */
                    template (present) InitiatingMessage mw_PathSwitchRequest(
                                                                           template (present) RecordOf_ProtocolIE p_value) := {
                        procedureCode := id_PathSwitchRequest,
                        criticality := reject,
                        value_ := {RecordOf_ProtocolIE := p_value}
                    } // End of template mw_PathSwitchRequest

                    
                    /**
                     * @desc Receive template for PATH_SWITCH_REQUEST message
                     * @param p_eNB_value               The expected eNB UE S1AP ID value. Default: ?
                     * @param p_RecordOf_E_RABToBeSwitchedDLItem_value               The expected RecordOf_E_RABToBeSwitchedDLItem_value value. Default: ?
                     * @param p_MME_value               The expected MME UE S1AP ID value. Default: ?
                     * @param p_eUtranCgi               The expected E-UTRAN CGI value.    Default: ?
                     * @param p_tai                     The expected TAI value.            Default: ?
                     * @param p_UESecurityCapabilities  The expected UE Security Capabilities value.    Default: ?
                     */
                    template (present) RecordOf_ProtocolIE mw_PathSwitchRequestIEs(
                        template (present) ENB_UE_S1AP_ID p_eNB_value := ?,
                        template (present) RecordOf_E_RABToBeSwitchedDLItem p_RecordOf_E_RABToBeSwitchedDLItem_value := ?,
                        template (present) MME_UE_S1AP_ID p_MME_value := ?,
                        template (present) EUTRAN_CGI p_eUtranCgi := ?,
                        template (present) TAI p_tai := ?,
                        template (present) UESecurityCapabilities p_UESecurityCapabilities := ?
                       ) := {
                            mw_eNB_UE_S1AP_ID(p_eNB_value),
                            mw_E_RABToBeSwitchedDLList(p_RecordOf_E_RABToBeSwitchedDLItem_value),
                            mw_sourceMmeUeS1apId(p_MME_value),
                            mw_eUTRAN_CGI_IE(p_eUtranCgi),
                            mw_tAI_IE(p_tai),
                            mw_UE_securityCapabilities_IE(p_UESecurityCapabilities, ignore)
                       } // End of template mw_PathSwitchRequestIEs
  
                    /**
                     * @desc Receive template for InitiatingMessage message with Path Switch Request Ack payload
                     * @param p_value           The expected protocol information elements. Default: ?
                     */
                    template (present) InitiatingMessage mw_PathSwitchRequestAck(
                                                                           template (present) RecordOf_ProtocolIE p_value) := {
                        procedureCode := id_PathSwitchRequest,
                        criticality := reject,
                        value_ := {RecordOf_ProtocolIE := p_value}
                    } // End of template mw_PathSwitchRequestAck
                    
                    template (present) RecordOf_ProtocolIE mw_PathSwitchRequestAckIEs(
                            template (present) MME_UE_S1AP_ID p_MME_value :=?,
                            template (present) ENB_UE_S1AP_ID p_eNB_value := ?,
                            template (present) SecurityContext p_securityContext := ?
                    ) := {
                        mw_MME_UE_S1AP_ID(p_MME_value),
                        mw_eNB_UE_S1AP_ID(p_eNB_value),
                        mw_securityContext_IE(p_securityContext)
                    } // End of template mw_PathSwitchRequestAckIEs
                    
                    /**
                     * @desc Receive template for UnsuccessfulOutcome message with PathSwitchRequest Failure payload
                     * @param p_value           The expected protocol information elements. Default: ?
                     */
                    template (present) UnsuccessfulOutcome mw_PathSwitchRequestFailure(
                                                                           template (present) RecordOf_ProtocolIE p_value) := {
                        procedureCode := id_PathSwitchRequest,
                        criticality := reject,
                        value_ := {RecordOf_ProtocolIE := p_value}
                    } // End of template mw_PathSwitchRequestFailure
                    
                    template (present) RecordOf_ProtocolIE mw_PathSwitchRequestFailureIEs(
                        template (present) MME_UE_S1AP_ID p_MME_value := ?,
                        template (present) ENB_UE_S1AP_ID p_eNB_value := ?,
                        template (present) Cause p_Cause_value := ?
                       ) := {
                            mw_MME_UE_S1AP_ID(p_MME_value),
                            mw_eNB_UE_S1AP_ID(p_eNB_value),
                            mw_cause_IE(p_Cause_value)
                       } // End of template mw_PathSwitchRequestFailureIEs
                    
                }// End of group PathSwitchRequest
                
                group ERAB_management_group {
                    group ERABModify{
rennoch's avatar
rennoch committed
                        /**
                         * @desc Receive template for SuccessfulOutcome/R-RAB_Modify request message
                         * @param p_value   The expected protocol information elements. Default: ?
                         */
                        template (present) SuccessfulOutcome mw_E_RABModifiedRequest(
                                                                                   template (present) RecordOf_ProtocolIE p_value := ?
                        ) := {
                            procedureCode := id_E_RABModify,
                            criticality := reject,
                            value_ := {RecordOf_ProtocolIE := p_value}
                        } // End of template mw_E_RABModifiedRequest

                        template (present) RecordOf_ProtocolIE mw_E_RABModifiedReqIEs(
                                                                                   template (present) MME_UE_S1AP_ID p_MME_value := ?,
                                                                                   template (present) ENB_UE_S1AP_ID p_eNB_value := ?,
                                                                                   template (present) RecordOf_E_RABToBeModifiedItemBearerModReq p_RecordOf_E_RABToBeModifyItem_value := {?}
                        ) := { 
                            mw_MME_UE_S1AP_ID(p_MME_value, ignore),
                            mw_eNB_UE_S1AP_ID(p_eNB_value, ignore),
                            mw_E_RABToBeModifiedList(p_RecordOf_E_RABToBeModifyItem_value)
                        } // End of template mw_E_RABSetupReqIEs

                        /**
                         * @desc Receive template for InitiatingMessage E_RAB Modification Indication message
                         * @param p_value   The expected protocol information elements. Default: ?
                         */
                        template (present) InitiatingMessage mw_E_RABModificationIndication(
                            template (present) RecordOf_ProtocolIE p_value := ?
                        ) := {
                            procedureCode := id_E_RABModificationIndication,
                            criticality := reject,
                            value_ := { RecordOf_ProtocolIE :=p_value}
                        }// End of template mw_E_RABModificationIndication
                        template (present) RecordOf_ProtocolIE mw_E_RABModificationIndicationIEs(
                           template (present) MME_UE_S1AP_ID p_MME_value := ?,
                           template (present) ENB_UE_S1AP_ID p_eNB_value := ?,
                           template RecordOf_E_RABToBeModifiedItemBearerModInd p_RecordOf_E_RABModifyItem_value := omit
                        ) := { 
                            mw_MME_UE_S1AP_ID(p_MME_value, ignore),
                            mw_eNB_UE_S1AP_ID(p_eNB_value, ignore),
                            mw_E_RABModifiedListModIndIE(p_RecordOf_E_RABModifyItem_value)
                        }                    
                        
                          

                        template (present) E_RABToBeModifiedItemBearerModInd mw_E_RABToBeModifiedItemBearerModInd(
                             in template (value) E_RAB_ID p_e_RAB_ID := 0,
                             in template (value) TransportLayerAddress p_transportLayerAddress := '0'B,
                             in template (value) GTP_TEID p_dL_GTP_TEID := '00000000'O
                        ) := {
                            e_RAB_ID              := p_e_RAB_ID,
                            transportLayerAddress := p_transportLayerAddress,
                            dL_GTP_TEID           := p_dL_GTP_TEID,
                            iE_Extensions         := *
                        template (present) RecordOf_ProtocolIE mw_E_RABModifiedResIEs(
                                                                                   template (present) MME_UE_S1AP_ID p_MME_value := ?,
                                                                                   template (present) ENB_UE_S1AP_ID p_eNB_value := ?,
                                                                                   template (present) RecordOf_E_RABModifyItemBearerModRes p_RecordOf_E_RABModifyItem_value := ?
                        ) := { 
                            mw_MME_UE_S1AP_ID(p_MME_value, ignore),
                            mw_eNB_UE_S1AP_ID(p_eNB_value, ignore),
                            mw_E_RABModifiedList(p_RecordOf_E_RABModifyItem_value)
                        } // End of template mw_E_RABSetupResIEs
                                       
                        template (present) RecordOf_ProtocolIE mw_E_RABModifiedResIEs_FailedToModifyList(
                             template (present) MME_UE_S1AP_ID p_MME_value := ?,
                             template (present) ENB_UE_S1AP_ID p_eNB_value := ?,
                             template (present) RecordOf_E_RABItem p_E_RABItem_value := ?
                        ) := {
                            mw_MME_UE_S1AP_ID(p_MME_value, ignore),
                            mw_eNB_UE_S1AP_ID(p_eNB_value, ignore),
                            mw_E_RABFailedToSetupList(p_E_RABItem_value)
                        } // End of template mw_E_RABSetupResIEs
                        
                                                            
                    }
                    
                    group ERABSetup{
                        
                        /**
                         * @desc Receive template for InitiatingMessage message with E-RABSetup payload
garciay's avatar
garciay committed
                         * @param p_value           The expected protocol information elements. Default: ?
                         */
                        template (present) InitiatingMessage mw_E_RABSetupRequest(
                                                                               template (present) RecordOf_ProtocolIE p_value) := {
                            procedureCode := id_E_RABSetup,
                            criticality := reject,
                            value_ := {RecordOf_ProtocolIE := p_value}
                        } // End of template mw_E_RABSetupRequest
                        
                        template (present) RecordOf_ProtocolIE mw_E_RABSetupReqIEs(
                                                                                template (present) MME_UE_S1AP_ID p_MME_value,
                                                                                template (present) ENB_UE_S1AP_ID p_eNB_value,
                                                                                template (present) RecordOf_E_RABToBeSetupItemBearerSUReq p_RecordOf_E_RABToBeSetupItem_value
                        ) := {
                            mw_MME_UE_S1AP_ID(p_MME_value),
                            mw_eNB_UE_S1AP_ID(p_eNB_value),
                            mw_E_RABToBeSetupList(p_RecordOf_E_RABToBeSetupItem_value)
                        } // End of template mw_E_RABSetupReqIEs
                        
                        template (present) RecordOf_ProtocolIE mw_E_RABSetupResIEs(
                                                                                   template (present) MME_UE_S1AP_ID p_MME_value := ?,
                                                                                   template (present) ENB_UE_S1AP_ID p_eNB_value := ?,
                                                                                   template (present) RecordOf_E_RABSetupItemBearerSURes p_RecordOf_E_RABSetupItem_value := ?
                        ) := { 
                            mw_MME_UE_S1AP_ID(p_MME_value, ignore),
                            mw_eNB_UE_S1AP_ID(p_eNB_value, ignore),
                            mw_E_RABSetupList(p_RecordOf_E_RABSetupItem_value)
                        } // End of template mw_E_RABSetupResIEs
    
          
                        template (present) RecordOf_ProtocolIE mw_E_RABSetupResIEs_FailedToSetupList(
                                                                                                     template (present) MME_UE_S1AP_ID p_MME_value := ?,
                                                                                                     template (present) ENB_UE_S1AP_ID p_eNB_value := ?,
                                                                                                     template (present) RecordOf_E_RABItem p_E_RABItem_value := ?
                        ) := {
                            mw_MME_UE_S1AP_ID(p_MME_value, ignore),
                            mw_eNB_UE_S1AP_ID(p_eNB_value, ignore),
                            mw_E_RABFailedToSetupList(p_E_RABItem_value)
                        } // End of template mw_E_RABSetupResIEs
                        
garciay's avatar
garciay committed
                        template (present) RecordOf_ProtocolIE mw_E_RABSetupResIEs_FailedToSetupList_E_RABSetupItemBearerSURes(
                                                                                                     template (present) MME_UE_S1AP_ID p_MME_value := ?,
                                                                                                     template (present) ENB_UE_S1AP_ID p_eNB_value := ?,
                                                                                                     template RecordOf_E_RABSetupItemBearerSURes p_RecordOf_E_RABSetupItem_value := omit,
                                                                                                     template (present) RecordOf_E_RABItem p_E_RABItem_value := ?
                        ) := {
                            mw_MME_UE_S1AP_ID(p_MME_value, ignore),
                            mw_eNB_UE_S1AP_ID(p_eNB_value, ignore),
                            mw_E_RABSetupList(p_RecordOf_E_RABSetupItem_value),
                            mw_E_RABFailedToSetupList(p_E_RABItem_value)
                        } // End of template mw_E_RABSetupResIEs_FailedToSetupList_E_RABSetupItemBearerSURes
                        
                    } // End of group ERABSetup
        
                    group ERABRelease{
                        template (present) RecordOf_ProtocolIE mw_E_RABReleaseResIEs(
                                                                                         template (present) MME_UE_S1AP_ID p_MME_value := ?,
                                                                                         template (present) ENB_UE_S1AP_ID p_eNB_value := ?,
                                                                                         template (present) RecordOf_E_RABItem p_RecordOf_E_RABItem_value := ?,
                                                                                         template (present) UserLocationInformation p_UserLocationInformation := ?
                         ) := { 
                              mw_MME_UE_S1AP_ID(p_MME_value, ignore),
                              mw_eNB_UE_S1AP_ID(p_eNB_value, ignore),
                              mw_E_RABReleaseList(p_RecordOf_E_RABItem_value),
garciay's avatar
garciay committed
                              mw_UserLocationInformation_IE(p_UserLocationInformation)
                         } // End of template mw_E_RABReleaseResIEs
                    
garciay's avatar
garciay committed
                        template (present) UserLocationInformation mw_UserLocationInformation(
                                     template (present) EUTRAN_CGI p_EUTRAN_CGI := ?,
                                     template (present) TAI p_TAI := ?
                         ) := { 
                              eutran_cgi := p_EUTRAN_CGI, //mw_eUTRAN_CGI_IE(p_EUTRAN_CGI_value),
                              tai := p_TAI,//mw_tAI_IE(p_TAI_value)
                              iE_Extensions := *
                              
                              
                         } // End of template mw_UserLocationInformation
                    
                         /**
                          * @desc Receive template for UserLocationInformation message
                          * @param p_tAI                 The expected TAI value. Default: ?
                          * @param p_eUTRAN_CGI          The expected Type Request value. Default: ?
                          */
                         template (present) ProtocolIE mw_UserLocationInformation_IE(
                            template (present) UserLocationInformation p_UserLocationInformation_value                                                                                        
                         ) := {
                            id := S1AP_Constants.id_UserLocationInformation,
                               criticality := ignore,
                               value_ := {UserLocationInformation := p_UserLocationInformation_value}
                         } // End of template mw_UserLocationInformation
                        * @desc Receive template for InitiatingMessage message with Release Command payload
                        * @param p_value           The list of Protocol IE values
                        */
                        template (present) InitiatingMessage mw_E_RABReleaseCommand(
                                                                              template (present) RecordOf_ProtocolIE p_value) := {
                            procedureCode := id_E_RABRelease,
                            criticality := reject,
                            value_ := {RecordOf_ProtocolIE := p_value}
                        } // End of template mw_E_RABReleaseCommand

                        template (present) RecordOf_ProtocolIE mw_E_RABReleaseCmdIEs(
                                                                                   template (present) MME_UE_S1AP_ID p_MME_value := ?,
                                                                                   template (present) ENB_UE_S1AP_ID p_eNB_value := ?,
                                                                                   template (present) RecordOf_E_RABItem p_RecordOf_E_RABReleaseListItem_value := {?}
                        ) := { 
                            mw_MME_UE_S1AP_ID(p_MME_value, ignore),
                            mw_eNB_UE_S1AP_ID(p_eNB_value, ignore),
                            mw_E_RABReleaseList(p_RecordOf_E_RABReleaseListItem_value)
                        } // End of template mw_E_RABReleaseCmdIEs

                        /**
                        * @desc Receive template for InitiatingMessage message with Modification confirm payload
                        * @param p_value           The list of Protocol IE values
                        */
                        template (present) InitiatingMessage mw_E_RABModificationConfirm(
                                                                              template (present) RecordOf_ProtocolIE p_value) := {
                            procedureCode := id_E_RABRelease,
                            criticality := reject,
                            value_ := {RecordOf_ProtocolIE := p_value}
                        } // End of template mw_E_RABModificationConfirm

                        template (present) RecordOf_ProtocolIE mw_E_RABModificationConfirmIEs(
                                                                                   template (present) MME_UE_S1AP_ID p_MME_value := ?,
                                                                                   template (present) ENB_UE_S1AP_ID p_eNB_value := ?,
                                                                                   template (present) RecordOf_E_RABItem p_RecordOf_E_RABModifyListItem_value := {?}
                        ) := { 
                            mw_MME_UE_S1AP_ID(p_MME_value, ignore),
                            mw_eNB_UE_S1AP_ID(p_eNB_value, ignore),
                            mw_E_RABModifyList(p_RecordOf_E_RABModifyListItem_value)
                        } // End of template mw_E_RABModificationConfirmIEs

                        template (present) RecordOf_ProtocolIE mw_E_RABModificationConfirmIEsCSG(
                                                                                   template (present) MME_UE_S1AP_ID p_MME_value := ?,
                                                                                   template (present) ENB_UE_S1AP_ID p_eNB_value := ?,
                                                                                   template (present) RecordOf_E_RABItem p_RecordOf_E_RABModifyListItem_value := {?},
                                                                                   template (present) CSGMembershipInfo p_CSGMembershipInfo:=?
                        ) := { 
                            mw_MME_UE_S1AP_ID(p_MME_value, ignore),
                            mw_eNB_UE_S1AP_ID(p_eNB_value, ignore),
                            mw_E_RABModifyList(p_RecordOf_E_RABModifyListItem_value),
                            mw_cSGMembershipInfo_IE(p_CSGMembershipInfo)
                        } // End of template mw_E_RABModificationConfirmIEs
                group Context_management_group{
garciay's avatar
garciay committed
                     * @desc Receive template for InitialContextSetup payload message
                     * @param p_value           The expected protocol information elements. Default: ?
                     */
                    template (present) SuccessfulOutcome mw_InitialContextSetupResponse(
                                                                               template (present) RecordOf_ProtocolIE p_value := ?
                    ) := {
                        procedureCode := id_InitialContextSetup,
                        criticality := reject,
                        value_ := {RecordOf_ProtocolIE := p_value}
                    } // End of template mw_InitialContextSetupResponse
                    
garciay's avatar
garciay committed
                    /**
                     * @desc Receive template for InitialContextSetup message
                     * @param p_MME_value                       The expected MME UE S1AP ID value. Default: ?
                     * @param p_eNB_value                       The expected eNB UE S1AP ID value. Default: ?
                     * @param p_RecordOf_E_RABSetupItem_value   The expected list of E-_RAB Setup Item value. Default: omit
                     * @param p_E_RABItem_value                 The expected E-RABItem value. Default: ?
                     */
                    template (present) RecordOf_ProtocolIE mw_InitialContextSetupResIEs(
                                                                               template (present) MME_UE_S1AP_ID p_MME_value := ?,
                                                                               template (present) ENB_UE_S1AP_ID p_eNB_value := ?,
garciay's avatar
garciay committed
                                                                               template (present) RecordOf_E_RABSetupItemBearerSURes p_RecordOf_E_RABSetupItem_value := ?,
                                                                               template (present) RecordOf_E_RABItem p_E_RABItem_value := ?
                        mw_MME_UE_S1AP_ID(p_MME_value, ignore),
                        mw_eNB_UE_S1AP_ID(p_eNB_value, ignore),
garciay's avatar
garciay committed
                        mw_E_RABSetupList(p_RecordOf_E_RABSetupItem_value),
                        mw_E_RABFailedToSetupList(p_E_RABItem_value)
                    } // End of template mw_InitialContextSetupResIEs
garciay's avatar
garciay committed
                    /**
                     * @desc Receive template for InitialContextSetupFailure message
                     * @param p_MME_value   The expected MME UE S1AP ID value. Default: ?
                     * @param p_eNB_value   The expected eNB UE S1AP ID value. Default: ?
                     * @param p_cause       The expected cause value. Default: ?
                     */
                    template (present) RecordOf_ProtocolIE mw_InitialContextSetupFailureIEs(
garciay's avatar
garciay committed
                                                                                            template (present) MME_UE_S1AP_ID p_MME_value := ?,
                                                                                            template (present) ENB_UE_S1AP_ID p_eNB_value := ?,
                                                                                            template (present) Cause p_cause := ?
                    ) := {
                        mw_MME_UE_S1AP_ID(p_MME_value, ignore),
                        mw_eNB_UE_S1AP_ID(p_eNB_value, ignore),
                        mw_cause_IE(p_cause)
garciay's avatar
garciay committed
                    } // End of template mw_InitialContextSetupResIEs
                    
garciay's avatar
garciay committed
                    /**
                     * @desc Receive template for InitialContextSetupFailure message with Criticaly Diagnostic IE
                     * @param p_MME_value           The expected MME UE S1AP ID value. Default: ?
                     * @param p_eNB_value           The expected eNB UE S1AP ID value. Default: ?
                     * @param p_cause               The expected cause value. Default: ?
                     * @param p_criticalyDiagnostic The expected criticaly diagnostic value. Default: ?
                     */
garciay's avatar
garciay committed
                    template (present) RecordOf_ProtocolIE mw_InitialContextSetupFailureIEs_CriticalyDiagnostic(
                                                                                                                template (present) MME_UE_S1AP_ID p_MME_value := ?,
                                                                                                                template (present) ENB_UE_S1AP_ID p_eNB_value := ?,
                                                                                                                template (present) Cause p_cause := ?,
                                                                                                                template (present) CriticalityDiagnostics p_criticalyDiagnostic := ?
                    ) modifies mw_InitialContextSetupFailureIEs := {
                        mw_MME_UE_S1AP_ID(p_MME_value, ignore),
                        mw_eNB_UE_S1AP_ID(p_eNB_value, ignore),
                        mw_cause_IE(p_cause),
                        mw_criticalityDiagnostics_IE(p_criticalyDiagnostic)
                    } // End of template mw_InitialContextSetupFailureIEs_CriticalyDiagnostic
                    
                    /**
                     * @desc Receive template for InitialContextSetup message
garciay's avatar
garciay committed
                     * @param p_value           The expected protocol information elements. Default: ?
                     * @param p_criticality     The expected criticality value. Default: reject
                     */
                    template (present) SuccessfulOutcome mw_InitialContextSetupRequest(
garciay's avatar
garciay committed
                                                                                       template (present) RecordOf_ProtocolIE p_value := ?,
                                                                                       template (present) Criticality p_criticality := reject
                        procedureCode := id_InitialContextSetup,
                        criticality := reject,
                        value_ := {RecordOf_ProtocolIE := p_value}
                    } // End of template mw_InitialContextSetupRequest
                    template (present) RecordOf_ProtocolIE mw_InitialContextSetupRequestIEs(
                                                                               template (present) MME_UE_S1AP_ID p_MME_value := ?,
                                                                               template (present) ENB_UE_S1AP_ID p_eNB_value := ?,
                                                                               template (present) UEAggregateMaximumBitrate p_UEAggregateMaximumBitrate := ?,
                                                                               template (present) RecordOf_E_RABToBeSetupItemCtxtSUReq p_RecordOf_E_RABSetupItemCtxt_value,
                                                                               template (present) UESecurityCapabilities p_UESecurityCapabilities:=?,
                                                                               template (present) SecurityKey p_SecurityKey:=?
                    ) := {
                        mw_MME_UE_S1AP_ID(p_MME_value, ignore),
                        mw_eNB_UE_S1AP_ID(p_eNB_value, ignore),
                        mw_UE_aggregate_maximum_bitrate_IE(p_UEAggregateMaximumBitrate),
                        mw_E_RABToBeSetupCtxtList(p_RecordOf_E_RABSetupItemCtxt_value),
                        mw_UE_securityCapabilities_IE(p_UESecurityCapabilities),                       
                        mw_securityKey_IE(p_SecurityKey)
                    } // End of template mw_InitialContextSetupRequestIEs
                    /**
                     * @desc Receive template for UeContextReleaseRequest message
garciay's avatar
garciay committed
                     * @param p_value           The expected protocol information elements. Default: ?
                     */
                    template (present) SuccessfulOutcome mw_UeContextReleaseRequest(
                                                                               template (present) RecordOf_ProtocolIE p_value := ?
                    ) := {
                        procedureCode := id_UEContextReleaseRequest,
                        criticality := reject,
                        value_ := {RecordOf_ProtocolIE := p_value}
                    } // End of template mw_UeContextReleaseRequest
                    template (present) RecordOf_ProtocolIE mw_UeContextReleaseRequestIEs(
                                                                               template (present) MME_UE_S1AP_ID p_MME_value := ?,
                                                                               template (present) ENB_UE_S1AP_ID p_eNB_value := ?,
                                                                               template (present) Cause p_cause := ?
                    ) := {
                        mw_MME_UE_S1AP_ID(p_MME_value, ignore),
                        mw_eNB_UE_S1AP_ID(p_eNB_value, ignore),
                        mw_cause_IE(p_cause)
                    } // End of template mw_UeContextReleaseRequestIEs
                    /**
                     * @desc Receive template for UeContextReleaseCommand message
garciay's avatar
garciay committed
                     * @param p_value           The expected protocol information elements. Default: ?
                     */
                    template (present) SuccessfulOutcome mw_UeContextReleaseCommand(
                                                                               template (present) RecordOf_ProtocolIE p_value := ?
                    ) := {
                        procedureCode := id_UEContextRelease,
                        criticality := reject,
                        value_ := {RecordOf_ProtocolIE := p_value}
                    } // End of template mw_UeContextReleaseCommand
                    template (present) RecordOf_ProtocolIE mw_UeContextReleaseCommandIEs_MME(
                                                                               template (present) MME_UE_S1AP_ID p_MME_value := ?,
                                                                               template (present) Cause p_cause := ?
                    ) := {
                        mw_MME_UE_S1AP_ID(p_MME_value, ignore),
                        mw_cause_IE(p_cause)
                    } // End of template mw_UeContextReleaseCommandIEs
                    template (present) RecordOf_ProtocolIE mw_UeContextReleaseCommandIEs_ENB(
                                                                               template (present) ENB_UE_S1AP_ID p_eNB_value := ?,
                                                                               template (present) Cause p_cause := ?
                    ) := {
                        mw_eNB_UE_S1AP_ID(p_eNB_value, ignore),
                        mw_cause_IE(p_cause)
                    } // End of template mw_UeContextReleaseCommandIEs
                    /**
                     * @desc Receive template for UeContextReleaseComplete message
garciay's avatar
garciay committed
                     * @param p_value           The expected protocol information elements. Default: ?
                     */
                    template (present) SuccessfulOutcome mw_UeContextReleaseComplete(
                                                                               template (present) RecordOf_ProtocolIE p_value := ?
                    ) := {
                        procedureCode := id_UEContextRelease,
                        criticality := reject,
                        value_ := {RecordOf_ProtocolIE := p_value}
                    } // End of template mw_UeContextReleaseComplete
                    template (present) RecordOf_ProtocolIE mw_UeContextReleaseCompleteIEs(
                                                                               template (present) MME_UE_S1AP_ID p_MME_value := ?,
                                                                               template (present) ENB_UE_S1AP_ID p_eNB_value := ?,
                                                                               template (present) Cause p_cause := ?
                    ) := {
                        mw_MME_UE_S1AP_ID(p_MME_value, ignore),
                        mw_eNB_UE_S1AP_ID(p_eNB_value, ignore),
                        mw_cause_IE(p_cause)
                    } // End of template mw_UeContextReleaseCompleteIEs
                    
                    /**
                     * @desc Receive template for mw_UeContextModificationResponse message
garciay's avatar
garciay committed
                     * @param p_value           The expected protocol information elements. Default: ?
                     */
                    template (present) SuccessfulOutcome mw_UeContextModificationResponse(
                                                                               template (present) RecordOf_ProtocolIE p_value := ?
                    ) := {
                        procedureCode := id_UEContextModification,
                        criticality := reject,
                        value_ := {RecordOf_ProtocolIE := p_value}
                    } // End of template mw_UeContextReleaseComplete
                    
                    template (present) RecordOf_ProtocolIE mw_UeContextModificationResponseIEs(
                                                                               template (present) MME_UE_S1AP_ID p_MME_value := ?,
                                                                               template (present) ENB_UE_S1AP_ID p_eNB_value := ?
                    ) := {
                        mw_MME_UE_S1AP_ID(p_MME_value, ignore),
                        mw_eNB_UE_S1AP_ID(p_eNB_value, ignore)
                    } // End of template mw_UeContextReleaseCompleteIEs
                    
                    /**
                     * @desc Receive template for mw_UeContextModificationFailure message
garciay's avatar
garciay committed
                     * @param p_value           The expected protocol information elements. Default: ?
                     */
                    template (present) SuccessfulOutcome mw_UeContextModificationFailure(
                                                                               template (present) RecordOf_ProtocolIE p_value := ?
                    ) := {
                        procedureCode := id_UEContextModification,
                        criticality := reject,
                        value_ := {RecordOf_ProtocolIE := p_value}
                    } // End of template mw_UeContextModificationFailure
                    
                    template (present) RecordOf_ProtocolIE mw_UeContextModificationFailureIEs(
                                                                               template (present) MME_UE_S1AP_ID p_MME_value := ?,
                                                                               template (present) ENB_UE_S1AP_ID p_eNB_value := ?,
                                                                               template (present) Cause p_cause := ?
                    ) := {
                        mw_MME_UE_S1AP_ID(p_MME_value, ignore),
                        mw_eNB_UE_S1AP_ID(p_eNB_value, ignore),
                        mw_cause_IE(p_cause)
                    } // End of template mw_UeContextModificationFailureIEs
rennoch's avatar
rennoch committed

                    
garciay's avatar
garciay committed
                    /**
                     * @desc Receive template for mw_UeContextModificationRequest message
garciay's avatar
garciay committed
                     * @param p_value           The expected protocol information elements. Default: ?
garciay's avatar
garciay committed
                     */
                    template (present) SuccessfulOutcome mw_UeContextModificationRequest(
                                                                               template (present) RecordOf_ProtocolIE p_value := ?
                    ) := {
                        procedureCode := id_UEContextModification,
                        criticality := reject,
                        value_ := {RecordOf_ProtocolIE := p_value}
                    } // End of template mw_UeContextModificationRequest
                    
                    template (present) RecordOf_ProtocolIE mw_UeContextModificationRequestIEs(
                                                                               template (present) MME_UE_S1AP_ID p_MME_value := ?,
                                                                               template (present) ENB_UE_S1AP_ID p_eNB_value := ?,
rennoch's avatar
rennoch committed
                                                                               template (present) UEAggregateMaximumBitrate p_UEAggregateMaximumBitrate := ?
garciay's avatar
garciay committed
                    ) := {
                        mw_MME_UE_S1AP_ID(p_MME_value, ignore),
                        mw_eNB_UE_S1AP_ID(p_eNB_value, ignore),
                        mw_UE_aggregate_maximum_bitrate_IE(p_UEAggregateMaximumBitrate)
                    } // End of template mw_UeContextModificationRequestIEs
                    
                    
                    /**
                     * @desc Receive template for mw_UeContextModificationIndication message
garciay's avatar
garciay committed
                     * @param p_value           The expected protocol information elements. Default: ?
                     */
                    template (present) SuccessfulOutcome mw_UeContextModificationIndication(
                                                                               template (present) RecordOf_ProtocolIE p_value := ?
                    ) := {
                        procedureCode := id_UEContextModification,
                        criticality := reject,
                        value_ := {RecordOf_ProtocolIE := p_value}
                    } // End of template mw_UeContextModificationIndication